Dump of cmdset[] is attached. Appears to match the cmdset table in cmds.c
exactly.
I haven't altered the list of commands in cmds.c at all. I suspect the problem
is I have missed something in replacing the i386 stuff with Alpha functions. I
haven't changed all the function names that start with "i386", etc but that is
just cosmetic.
On 26-Apr-2000 Matt D. Robinson wrote:
> 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
>|>
--
http://www.bigfoot.com/~brihall
Linux Consultant
cmd.table
Description: cmd.table
|