No subject
Wed Apr 23 14:39:25 UTC 2008
It's failing in a function which starts at 0x0000000008064ed3 (directly
after put()). Which function is that? Do "make procps/nmeter.s" and
"objdump -dr procps/nmeter.o" and post both results please, the function
will be visible there.
----------------------------------------------------------------------
nuclearcat - 06-28-08 16:04
----------------------------------------------------------------------
Since i am using 1.11.0 (it is crashing too)
[ 218.330465] nmeter[1733]: segfault at 0 ip 0806488d sp bf9d8680 error 4
in busybox[8048000+76000]
0806486e <collect_info>:
0806489a <collect_time>:
Looks like here:
Disassembly of section .text.collect_info:
00000000 <collect_info>:
0: 53 push %ebx
1: 89 c3 mov %eax,%ebx
3: 83 ec 08 sub $0x8,%esp
6: a1 00 00 00 00 mov 0x0,%eax
7: R_386_32 ptr_to_globals
b: 80 30 01 xorb $0x1,(%eax)
e: eb 14 jmp 24 <collect_info+0x24>
10: 8b 43 08 mov 0x8(%ebx),%eax
13: e8 fc ff ff ff call 14 <collect_info+0x14>
14: R_386_PC32 .text.put
18: 83 ec 0c sub $0xc,%esp
1b: 53 push %ebx
1c: ff 53 04 call *0x4(%ebx)
----> 1f: 8b 1b mov (%ebx),%ebx
21: 83 c4 10 add $0x10,%esp
24: 85 db test %ebx,%ebx
26: 75 e8 jne 10 <collect_info+0x10>
28: 59 pop %ecx
29: 5b pop %ebx
2a: 5b pop %ebx
2b: c3 ret
i manage also to run gdb there
With disabled compiler optimizations all fine, it is not crashing.
If i enable compiler optimization:
(gdb) run nmeter "CPU %c IO %b MEM %[mf]"
Starting program: /home/root/busybox_unstripped nmeter "CPU %c IO %b MEM
%[mf]"
Program received signal SIGSEGV, Segmentation fault.
collect_info (s=0x0) at procps/nmeter.c:753
753 procps/nmeter.c: No such file or directory.
in procps/nmeter.c
while (s) {
put(s->label);
s->collect(s);
s = s->next; <<<--- here
}
}
(gdb) up
http://busybox.net/bugs/view.php?id=1 0x0806543c in nmeter_main (argc=2,
argv=0xbfd6b368) at
procps/nmeter.c:861
861 in procps/nmeter.c
// Generate first samples but do not print them, they're bogus
collect_info(first); <--- here 861
reset_outbuf();
----------------------------------------------------------------------
vda - 06-28-08 16:13
----------------------------------------------------------------------
What does it print when you add this?
while (s) {
put(s->label);
s->collect(s);
bb_error_msg("s:%p s->next:%p", s, s->next);
s = s->next;
}
----------------------------------------------------------------------
nuclearcat - 06-28-08 16:31
----------------------------------------------------------------------
Not able to trigger bug with added line
Output:
Router-Dora ~ # ./busybox_unstripped nmeter "CPU %c IO %b MEM %[mf]"
nmeter: s:0x80c2078 s->next:0x80c20d8
nmeter: s:0x80c20d8 s->next:0x80c2100
nmeter: s:0x80c2100 s->next:(nil)
nmeter: s:0x80c2078 s->next:0x80c20d8
nmeter: s:0x80c20d8 s->next:0x80c2100
nmeter: s:0x80c2100 s->next:(nil)
CPU ii........ IO 0 0 MEM 1.9g
nmeter: s:0x80c2078 s->next:0x80c20d8
nmeter: s:0x80c20d8 s->next:0x80c2100
nmeter: s:0x80c2100 s->next:(nil)
CPU ii........ IO 0 0 MEM 1.9g
nmeter: s:0x80c2078 s->next:0x80c20d8
nmeter: s:0x80c20d8 s->next:0x80c2100
nmeter: s:0x80c2100 s->next:(nil)
CPU ii........ IO 0 0 MEM 1.9g
Issue History
Date Modified Username Field Change
======================================================================
05-28-08 09:22 nuclearcat New Issue
05-28-08 09:22 nuclearcat Status new => assigned
05-28-08 09:22 nuclearcat Assigned To => BusyBox
05-28-08 11:13 vda Note Added: 0007884
05-28-08 12:27 nuclearcat Note Added: 0007894
05-30-08 14:55 vda Note Added: 0007904
06-28-08 10:11 nuclearcat Note Added: 0008654
06-28-08 15:00 vda Note Added: 0008724
06-28-08 16:04 nuclearcat Note Added: 0008734
06-28-08 16:13 vda Note Added: 0008744
06-28-08 16:31 nuclearcat Note Added: 0008754
======================================================================
More information about the busybox-cvs
mailing list