Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 364945

Summary: app-admin/procinfo-18-r1: segfaults with -a
Product: Gentoo Linux Reporter: John Jaeger <billybobsa>
Component: Current packagesAssignee: Gentoo Linux bug wranglers <bug-wranglers>
Status: VERIFIED TEST-REQUEST    
Severity: normal CC: billybobsa, jlec, nathan
Priority: Normal    
Version: unspecified   
Hardware: AMD64   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: Emerge info and box info
Back trace
patch to change MAX_CHRDEV from 32 to 64

Description John Jaeger 2011-04-26 14:44:07 UTC
Receive a segfault when doing a procinfo -a.

Seems like a re-open of Bug: 300611


Reproducible: Always

Steps to Reproduce:
1. type procinfo -a at the command line.
2.
3.
Actual Results:  
[08:36][root@Phenom:/]# procinfo -a
Segmentation fault

Expected Results:  
Similar to:
Linux 2.6.38-gentoo-r1-Ben-PreProd-4 (root@ben) (gcc [can't parse]) #???  2CPU [ben.(none)]

Memory:      Total        Used        Free      Shared     Buffers      
Mem:        956028      896984       59044           0      170440
Swap:      1975804       49816     1925988

Bootup: Thu Apr 14 13:35:14 2011    Load average: 0.00 0.06 0.14 1/197 23389

user  :       2:07:51.00   0.4%  page in :293075869  disk 1:  4143067r 2763356w
nice  :       2:11:23.17   0.4%  page out:137136544  disk 2:  4148729r 2725051w
system:       0:58:10.21   0.1%  page act:  4827799  disk 3:  4135707r 2836521w
IOwait:      10:12:57.64   1.8%  page dea:  2414156  disk 4:   188382r   63819w
hw irq:       0:00:00.02   0.0%  page flt:638963678
sw irq:       0:06:01.91   0.0%  swap in :    30984
idle  :  22d 21:54:27.86  97.2%  swap out:    38548  disk 4:   188382r   63819w
uptime:  11d 18:44:29.26         context :283703309

irq  0:      5964 timer                 irq 14:     11933 pata_amd             
irq  1:         2 i8042                 irq 15:         0 pata_amd             
irq  4:    662218 serial                irq 19:   9786770 eth0                 
irq  6:         3 floppy [2]            irq 20:         2 ehci_hcd:usb1        
irq  7:         1                       irq 22:  10544542 sata_nv              
irq  8:      1307 rtc0                  irq 23:  27305556 sata_nv, ohci_hcd:us 
irq  9:         0 acpi                  irq 43: 103605055 103516092   PCI-MSI- 
irq 12:         4 i8042                

Kernel Command Line:
  auto BOOT_IMAGE=AMDX2 ro root=901

Modules:
10024  nvidia         

Character Devices:                      Block Devices:
  1 mem              89 i2c               2 fd              129 sd              
  2 pty             128 ptm             259 blkext          130 sd              
  3 ttyp            136 pts               7 loop            131 sd              
  4 /dev/vc/0       162 raw               8 sd              132 sd              
  4 tty             180 usb               9 md              133 sd              
  4 ttyS            189 usb_device       11 sr              134 sd              
  5 /dev/tty        195 nvidia           65 sd              135 sd              
  5 /dev/console    202 cpu/msr          66 sd              252 device-mapper   
  5 /dev/ptmx       203 cpu/cpuid        67 sd              253 pktcdvd         
  5 ttyprintk       226 drm              68 sd              254 mdp             
  7 vcs             250 hidraw           69 sd              
 10 misc            251 usbmon           70 sd              
 13 input           252 uio              71 sd              
 21 sg              253 bsg              80 i2o_block       
 29 fb              254 rtc             128 sd              

File Systems:
[sysfs]             [rootfs]            [bdev]              [proc]              [tmpfs]             [binfmt_misc]       
[debugfs]           [sockfs]            [pipefs]            [anon_inodefs]      [rpc_pipefs]        [configfs]          
[devpts]            ext3                ext2                ext4                squashfs            [ramfs]             
[hugetlbfs]         vfat                msdos               iso9660             [nfs]               [nfs4]              
[nfsd]              [cifs]              ntfs                romfs               [autofs]            [fuse]              
fuseblk             [fusectl]           udf                 [mqueue]            [gadgetfs]          [oprofilefs]   

Last few lines of strace:
read(10, "vboxnetflt 11955 1 - Live 0xffff"..., 1024) = 201
read(10, "", 1024)                      = 0
fstat(11, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f19f4654000
lseek(11, 0, SEEK_SET)                  = 0
read(11, "Character devices:\n  1 mem\n  2 p"..., 1024) = 561
read(11, "", 1024)                      = 0
--- {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x200000001} (Segmentation fault) ---
+++ killed by SIGSEGV +++
Segmentation fault
Comment 1 John Jaeger 2011-04-26 15:06:09 UTC
Created attachment 271233 [details]
Emerge info and box info

Let me know if there is anything else I can send you.
Comment 2 Justin Lecher (RETIRED) gentoo-dev 2011-04-26 15:31:50 UTC
http://www.gentoo.org/proj/en/qa/backtraces.xml

please follow this guide an provide a gdb output.
Comment 3 John Jaeger 2011-04-26 16:08:50 UTC
It's pretty short...

gdb:

GNU gdb (Gentoo 7.2 p1) 7.2
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>...
Reading symbols from /usr/bin/procinfo...(no debugging symbols found)...done.
(gdb) set logging file backtrace1.log
(gdb) set logging on
Copying output to backtrace1.log.
(gdb) set args -a
(gdb) run
Starting program: /usr/bin/procinfo -a

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff78788b5 in vfprintf () from /lib64/libc.so.6
(gdb) bt full
#0  0x00007ffff78788b5 in vfprintf () from /lib64/libc.so.6
No symbol table info available.
#1  0x00007ffff7917b27 in __printf_chk () from /lib64/libc.so.6
No symbol table info available.
#2  0x000000000040758f in ?? ()
No symbol table info available.
#3  0x00007ffff7851bec in __libc_start_main () from /lib64/libc.so.6
No symbol table info available.
#4  0x0000000000401bc9 in ?? ()
No symbol table info available.
#5  0x00007fffffffe028 in ?? ()
No symbol table info available.
#6  0x000000000000001c in ?? ()
No symbol table info available.
#7  0x0000000000000002 in ?? ()
No symbol table info available.
#8  0x00007fffffffe33f in ?? ()
No symbol table info available.
#9  0x00007fffffffe351 in ?? ()
No symbol table info available.
#10 0x0000000000000000 in ?? ()
No symbol table info available.
(gdb) thread apply all bt full

Thread 1 (process 434):
#0  0x00007ffff78788b5 in vfprintf () from /lib64/libc.so.6
No symbol table info available.
#1  0x00007ffff7917b27 in __printf_chk () from /lib64/libc.so.6
No symbol table info available.
#2  0x000000000040758f in ?? ()
No symbol table info available.
#3  0x00007ffff7851bec in __libc_start_main () from /lib64/libc.so.6
No symbol table info available.
#4  0x0000000000401bc9 in ?? ()
No symbol table info available.
#5  0x00007fffffffe028 in ?? ()
No symbol table info available.
#6  0x000000000000001c in ?? ()
No symbol table info available.
#7  0x0000000000000002 in ?? ()
No symbol table info available.
#8  0x00007fffffffe33f in ?? ()
No symbol table info available.
#9  0x00007fffffffe351 in ?? ()
No symbol table info available.
#10 0x0000000000000000 in ?? ()
No symbol table info available.
Comment 4 Justin Lecher (RETIRED) gentoo-dev 2011-04-26 16:13:50 UTC
That doesn't look like glibc and procinfo compiled with -g.
For additional information see this recent blog post.

http://matija.suklje.name/?q=node/243

Please provide more detailed output, as it is n't reproducable here.
Comment 5 John Jaeger 2011-04-26 17:33:39 UTC
Created attachment 271255 [details]
Back trace
Comment 6 John Jaeger 2011-04-26 17:34:24 UTC
Got it this time <G>

Thanks...

John
Comment 7 John Jaeger 2011-04-26 17:36:26 UTC
Seems to missing a file:
0x00007ffff78788b5 in _IO_vfprintf_internal (s=0x7ffff7b88780, format=<value optimized out>, ap=0x7fffffffca00) at vfprintf.c:1593
1593    vfprintf.c: No such file or directory.

The only vfprintf.c on my file system is in the source tree of my sendmail.

Odd...

Thanks again.
Comment 8 Justin Lecher (RETIRED) gentoo-dev 2011-05-07 09:41:51 UTC
Please test procinfo-ng. Should work better for you
Comment 9 nathan 2011-07-10 16:54:41 UTC
(In reply to comment #4)
> That doesn't look like glibc and procinfo compiled with -g.
> For additional information see this recent blog post.
> 
> http://matija.suklje.name/?q=node/243
> 
> Please provide more detailed output, as it is n't reproducable here.

If you cat /proc/devices | grep -A 35 "Character devices", do you have less than 32 charactor devices ?
If so, then it's not reproducible for you.
The problem was reported back in 2003!

https://bugzilla.redhat.com/show_bug.cgi?id=89176 

I'll attach a patch that will resolve this issue
Comment 10 nathan 2011-07-10 16:58:15 UTC
Created attachment 279655 [details, diff]
patch to change MAX_CHRDEV from 32 to 64

patch for character and block devices from 32 to 64
Comment 11 nathan 2011-07-10 17:07:45 UTC
Also reported in Bug: 300611 comment #2 was a patch to make the gcc line print correctly.

Adding both patches make procinfo work and display correctly without segfaulting

Please include them in the ebuild.

Thanks.
Comment 12 John Jaeger 2011-07-10 17:39:06 UTC
Please test the patches sent in on this date.  They do fix the issue.

Thanks,

John...