lkcd
[Top] [All Lists]

Re: Alpha lcrash initialization problem - can't access memory

To: Brian Hall <brianw.hall@xxxxxxxxxx>
Subject: Re: Alpha lcrash initialization problem - can't access memory
From: "Matt D. Robinson" <yakker@xxxxxxxxxxxxxx>
Date: Wed, 26 Apr 2000 15:13:39 -0700 (PDT)
Cc: lkcd@xxxxxxxxxxx
In-reply-to: <XFMail.20000426143138.brianw.hall@xxxxxxxxxx>
Sender: owner-lkcd@xxxxxxxxxxx
On Wed, 26 Apr 2000, Brian Hall wrote:
|>OK, Alpha lcrash is dying before it gets very far. Any ideas why it can't
|>access the memory in question?
|>
|>I can see where not being able to access memory being asked for causes a
|>segfault, but why the report about "alloc.c: No such file or directory" ?

This is probably due to 'gdb's understanding of where alloc.c is
found.

Looking at this stack trace, have you removed any commands as of late
that wouldn't have been used?  Looks like something may be wrong with
the commands structure.  Can you dump out the table?

--Matt

|>[root@dhcp96-180 lcrash]# gdb ./lcrash
|>
|>(gdb) run map.0 vmdump.0 -d 1
|>Starting program: /CDR_UPLOAD/hallb/linux-2.2.13-1.0.3/cmd/lcrash/./lcrash
|>map.0 vmdump.0 -d 1
|>map = map.0, vmdump = vmdump.0, outfile = stdout
|>
|>Please wait...................
|>
|>Program received signal SIGSEGV, Segmentation fault.
|>0x12001b110 in enqueue (list=0x1202fc1b8, new=0x20300000) at alloc.c:57
|>57      alloc.c: No such file or directory.
|>(gdb) where full
|>#0  0x12001b110 in enqueue (list=0x1202fc1b8, new=0x20300000) at alloc.c:57
|>        head = (element_t *) 0x0
|>#1  0x12001c154 in get_page (index=4) at alloc.c:438
|>        i = 0
|>        b = (block_t *) 0x20300000
|>        page = (void *) 0x12001c624
|>        p = (page_t *) 0x1202fc1a0
|>#2  0x12001cacc in alloc_block (size=80, flag=2, ra=0x1e) at alloc.c:695
|>        i = 4
|>        j = 1
|>        blk = (void *) 0xfffffffff7f7ffdb
|>        p = (page_t *) 0x11ffffad0
|>        b = (block_t *) 0x0
|>#3  0x1200038c8 in kl_block_alloc_func (size=80, flag=2, ra=0x1e) at 
util.c:279
|>        b = (void *) 0x12002be14
|>#4  0x12002be6c in _kl_alloc_block (size=80, flags=2, ra=0x1e) at 
kl_alloc.c:22
|>        blk = (void *) 0x120003d4c
|>#5  0x120003d6c in register_cmds (cmds=0x120144aa8) at command.c:17
|>        i = 0
|>        ret = 1
|>        max_depth = 539896352
|>        cmd_rec = (cmd_rec_t *) 0x0              
|>#6  0x120002b20 in main (argc=5, argv=0x11ffffbb8) at main.c:200
|>        i = 5
|>        c = 512
|>        errflg = 0         
|>(gdb) p *list
|>$1 = (element_t *) 0x0
|>(gdb) p head
|>$2 = (element_t *) 0x0
|>(gdb) p new
|>$3 = (element_t *) 0x20300000
|>(gdb) p (head = *list)
|>$4 = (element_t *) 0x0
|>(gdb) p new
|>$5 = (element_t *) 0x20300000
|>(gdb) p new->next
|>Cannot access memory at address 0x20300000.
|>(gdb) p new->prev
|>Cannot access memory at address 0x20300008.
|>(gdb) p *list = new
|>$6 = (element_t *) 0x20300000
|>(gdb) p new->next
|>Cannot access memory at address 0x20300000.
|>(gdb) p new->prev
|>Cannot access memory at address 0x20300008.     
|>
|>-- 
|>http://www.bigfoot.com/~brihall
|>Linux Consultant
|>


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