lkcd
[Top] [All Lists]

Alpha lcrash - enqueue/alloc

To: lkcd@xxxxxxxxxxx
Subject: Alpha lcrash - enqueue/alloc
From: Brian Hall <brianw.hall@xxxxxxxxxx>
Date: Wed, 03 May 2000 13:27:17 -0600 (MDT)
Reply-to: Brian Hall <brianw.hall@xxxxxxxxxx>
Sender: owner-lkcd@xxxxxxxxxxx
Well, I haven't been able to figure how the free block list is supposed to be
filled; tracing the code I don't see how it would work. It certainly doesn't
as-is (alloc.c), surely because I have something setup wrong (with the blklist
initialized to NULL in the code, enqueue tries to *blklist=element, which
segfaults of course). Anyway, to make some progress, I modified alloc_block to
always allocate memory as if size > CHUNKSZ all the time. This gave me a lcrash
executable that would execute without segfaulting, although it is very very
slow, and can't seem to access any useful information. Also, I'm having a magic
number mismatch, I had to comment out the checks for that in do_report (don't
know why this occurs yet, maybe my crash dump is bad- MCL's analyis program
crash2.3 also doesn't work on my crash dump).

Here is what I'm currently getting for lcrash -r map.0 vmdump.0 (it "hangs"
after printing this):

Attempting to load previous index "index.10" ... complete.
cmpreadmem(): 8 bytes, 0x584c80 (just a page)
__cmppread(): initiating search for 0x584c80
__cmppindex(): hash =  16472, addr = 0x584c80
__cmppindex(): addr = 0x584c80, tmpptr->addr = 0x584000
__cmppread(): found the page in the page index!
0x584000: 4725 -> 8192 COMPRESSED, writing 8192 bytes
__cmppinsert(): Malloc occurred! [0]
__cmppinsert(): Inserting page into cache! (0x584c80) [0]...
__cmppget(): copying page of data (nbytes = 8, offset = 3200, in_addr =
0x584c80)
__cmppread(): found the item in the hash table second time!
cmpreadmem(): 8 bytes, 0x584c90 (just a page)
__cmppread(): initiating search for 0x584c90
__cmppget(): copying page of data (nbytes = 8, offset = 3216, in_addr =
0x584c90)
__cmppread(): found the item in the hash table!
=======================
LCRASH CORE FILE REPORT
=======================
 
GENERATED ON:
    Wed May  3 13:24:59 2000
 
 
TIME OF CRASH:
    Tue Apr 18 15:08:24 2000
 
 
PANIC STRING:
    User created crash dump
 
MAP:
    map.0
 
VMDUMP:
    vmdump.0
 
================
COREFILE SUMMARY
================
 
    The system died due to a software failure.
 
===================
UTSNAME INFORMATION
===================
 
   sysname : Linux
  nodename : dhcp96-180.cxo.dec.com
   release : 2.2.13
   version : #10 Tue Feb 8 16:06:15 MST 2000
   machine : alpha
domainname : gldulab
 
===============
LOG BUFFER DUMP
===============
 
cmpreadmem(): reading 8192 bytes, 0x587030 (a new page)
__cmppread(): initiating search for 0x587030
__cmppindex(): hash =  28760, addr = 0x587030
__cmppread(): page not found! (0x587030)
cmpreadmem(): reading 8192 bytes, 0x589030 (leftovers)
__cmppread(): initiating search for 0x589030
__cmppindex(): hash =  36952, addr = 0x589030
__cmppread(): page not found! (0x589030)
 
 
====================
CURRENT SYSTEM TASKS
====================
 
            ADDR    UID   PID   PPID  STATE   PRI     FLAGS                MM 
NAME
==============================================================================
cmpreadmem(): 1064 bytes, 0x4e8000 (just a page)
__cmppread(): initiating search for 0x4e8000
__cmppindex(): hash =  32846, addr = 0x4e8000
__cmppindex(): addr = 0x4e8000, tmpptr->addr = 0x4e8000
__cmppread(): found the page in the page index!
0x4e8000: 96 -> 8192 COMPRESSED, writing 8192 bytes
__cmppinsert(): Malloc occurred! [1]
__cmppinsert(): Inserting page into cache! (0x4e8000) [1]...
__cmppget(): copying page of data (nbytes = 1064, offset = 0, in_addr =
0x4e8000)
__cmppread(): found the item in the hash table second time!     

-- 
http://www.bigfoot.com/~brihall
Linux Consultant

<Prev in Thread] Current Thread [Next in Thread>