RE: reading from invalid mem...

Raj, Ashok (ashok.raj@intel.com)
Fri, 30 Jul 1999 13:55:13 -0700


Ok... here are more details... this is strace output and
look below for stack trace i got outa kernel debugger. looks like
elf_dump is doing something bad..

D:\temp>^cat trace.out
execve("./a", ["./a"], [/* 23 vars */]) = 0
brk(0) = 0x804955c
open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=27707, ...}) = 0
mmap(0, 27707, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40015000
close(3) = 0
open("/lib/libc.so.6", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=1282102, ...}) = 0
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3"..., 4096) = 4096
mmap(0, 1022396, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4001c000
mprotect(0x4010e000, 31164, PROT_NONE) = 0
mmap(0x4010e000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0xf1000)
= 0x4010e000
mmap(0x40113000, 10684, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOU
S, -1, 0) = 0x40113000
close(3) = 0
mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x401160
00
mprotect(0x4001c000, 991232, PROT_READ|PROT_WRITE) = 0
mprotect(0x4001c000, 991232, PROT_READ|PROT_EXEC) = 0
munmap(0x40015000, 27707) = 0
personality(PER_LINUX) = 0
getpid() = 548
brk(0) = 0x804955c
brk(0x80496fc) = 0x80496fc
brk(0x804a000) = 0x804a000
fstat(1, {st_mode=S_IFREG|0644, st_size=1389, ...}) = 0
mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x400150
00
--- SIGSEGV (Segmentation fault) ---
kdb> btp 548
EBP Caller Function(args)
0xc69c1c30 0xc0111c89 schedule()
0xc69c1c54 0xc01cff68 __down(0xc68a8d0c, 0xc68a8d0c, 0xc68e9700,
0xc0135077, 0x0)
0xc69c1f0c 0xc0135464 __down_failed(0xc6d51440, 0xc69c1ec0, 0x34)
0xc69c1fbc 0xc01079f4 elf_core_dump(0xb, 0xc69c1fc4)
0xbffffb38 0xc0107bfc do_signal(0x401115e0, 0x0, 0x40015000, 0xbffffb84,
0x1)
kdb> go
Jul 30 06:36:24 nglinux2 kernel: restarting cpu 1 for kdb

> -----Original Message-----
> From: Tim Waugh [mailto:tim@cyberelk.demon.co.uk]
> Sent: Friday, July 30, 1999 1:20 PM
> To: Raj, Ashok
> Subject: RE: reading from invalid mem...
>
>
> On Fri, 30 Jul 1999, Raj, Ashok wrote:
>
> > F UID PID PPID PRI NI VSZ RSS WCHAN STAT TTY
> TIME COMMAND
> > 200 0 599 571 4 0 1108 336 down_f D
> tty1 0:00 ./a
>
> Okay. 'down_f' is short for 'down_failed', i.e. we're waiting on a
> semaphore. What do you see when you run the program under strace?
>
> Tim.
> */
>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/