Re: debuginfo ppc.

2008-01-24 Thread Josh Boyer
On Wed, 23 Jan 2008 23:03:15 -0800 (PST)
Roland McGrath [EMAIL PROTECTED] wrote:

 It is probably a better solution not to have a vmlinux.debug but instead
 keep the simple cp, and avoid the vmlinu[xz].debug files by explicitly
 stripping the /boot copy of vmlinux.  

I wish you wouldn't.  If it's stripped, there's no way that I know of
other than using gdb to get an assembly dump with the function
information, etc.  As it stands today, you can use objdump -rd on the
unstripped vmlinu* file and it will nicely spit out an assembly listing.

josh

___
Fedora-kernel-list mailing list
Fedora-kernel-list@redhat.com
https://www.redhat.com/mailman/listinfo/fedora-kernel-list


Re: debuginfo ppc.

2008-01-24 Thread Roland McGrath
 On Wed, 23 Jan 2008 23:03:15 -0800 (PST)
 Roland McGrath [EMAIL PROTECTED] wrote:
 
  It is probably a better solution not to have a vmlinux.debug but instead
  keep the simple cp, and avoid the vmlinu[xz].debug files by explicitly
  stripping the /boot copy of vmlinux.  
 
 I wish you wouldn't.  If it's stripped, there's no way that I know of
 other than using gdb to get an assembly dump with the function
 information, etc.  As it stands today, you can use objdump -rd on the
 unstripped vmlinu* file and it will nicely spit out an assembly listing.

You seem to have inverted the sense of what I suggested.
/boot/vmlinuz-blah is stripped no matter what, it already is now.
Explicitly stripping it as I said above means discarding the separate
debug file now being created.  Then the only plan is to get the whole
unstripped file from /usr/lib/debug/lib/modules/.../vmlinux, as you do now.

The alternative to what you quoted is what I posted the spec patch for,
which changes things so there is no whole unstripped vmlinux file around
(for ppc).  That is the change you are concerned about, so what you favor
is the solution you quoted above.


But FYI:

-r does nothing useful on vmlinux, which is not a relocatable file.  
-d works on the contents that are in a stripped file, and does not need
symbols or debuginfo to print instructions.  If you want symbols in its
output, or something from the vmlinux DWARF info (like for -S), you can use:

eu-unstrip -o vmlinux.unstrip -k kernel or
eu-unstrip -o vmlinux.unstrip -e /boot/vmlinux-blah

objdump -dS vmlinux.unstrip



Thanks,
Roland

___
Fedora-kernel-list mailing list
Fedora-kernel-list@redhat.com
https://www.redhat.com/mailman/listinfo/fedora-kernel-list


Re: debuginfo ppc.

2008-01-23 Thread Roland McGrath
 I browsed a few of the internals, and it looks like the ppc variant includes 
 a complete source tree
 in /usr/src/debug

It's normal to have every source file referenced by any binary's DWARF info.

for x in */debug/kernel-debuginfo-2*.rpm; do for y in $x `echo $x | sed 
s,debuginfo,debuginfo-common,`; do printf %-75s $y; rpm -qlp $y | grep 
'^/usr/src/' | wc -l; done;done

i386/debug/kernel-debuginfo-2.6.24-0.164.rc8.git4.fc9.i586.rpm 0
i386/debug/kernel-debuginfo-common-2.6.24-0.164.rc8.git4.fc9.i586.rpm  9162
i386/debug/kernel-debuginfo-2.6.24-0.164.rc8.git4.fc9.i686.rpm 0
i386/debug/kernel-debuginfo-common-2.6.24-0.164.rc8.git4.fc9.i686.rpm  9165
ppc64/debug/kernel-debuginfo-2.6.24-0.164.rc8.git4.fc9.ppc64.rpm   0
ppc64/debug/kernel-debuginfo-common-2.6.24-0.164.rc8.git4.fc9.ppc64.rpm8809
ppc/debug/kernel-debuginfo-2.6.24-0.164.rc8.git4.fc9.ppc.rpm   0
ppc/debug/kernel-debuginfo-common-2.6.24-0.164.rc8.git4.fc9.ppc.rpm8574
x86_64/debug/kernel-debuginfo-2.6.24-0.164.rc8.git4.fc9.x86_64.rpm 0
x86_64/debug/kernel-debuginfo-common-2.6.24-0.164.rc8.git4.fc9.x86_64.rpm  8862

 Any reason for ppc being different?

It's not a very different number of source files.
Let's wonder about the two biggest files in each rpm.

for x in */debug/kernel-debuginfo-2*.rpm; do for y in $x `echo $x | sed 
s,debuginfo,debuginfo-common,`; do echo $y:; rpm -qlpv $y | sort -n -k 5,5 | 
tail -2; done;done

i386/debug/kernel-debuginfo-2.6.24-0.164.rc8.git4.fc9.i586.rpm:
-rwxr--r--1 rootroot 10014436 Jan 21 16:14 
/usr/lib/debug/lib/modules/2.6.24-0.164.rc8.git4.fc9/kernel/fs/xfs/xfs.ko.debug
-rwxr-xr-x1 rootroot 77065021 Jan 21 16:11 
/usr/lib/debug/lib/modules/2.6.24-0.164.rc8.git4.fc9/vmlinux
i386/debug/kernel-debuginfo-common-2.6.24-0.164.rc8.git4.fc9.i586.rpm:
-rw-r--r--1 rootroot   802044 Oct  9 13:31 
/usr/src/debug/kernel-2.6.23/linux-2.6.23.i586/drivers/usb/misc/emi62_fw_s.h
-rw-r--r--1 rootroot   875265 Jan 21 15:55 
/usr/src/debug/kernel-2.6.23/linux-2.6.23.i586/fs/nls/nls_cp949.c
i386/debug/kernel-debuginfo-2.6.24-0.164.rc8.git4.fc9.i686.rpm:
-rwxr--r--1 rootroot 10013800 Jan 21 18:44 
/usr/lib/debug/lib/modules/2.6.24-0.164.rc8.git4.fc9/kernel/fs/xfs/xfs.ko.debug
-rwxr-xr-x1 rootroot 77048944 Jan 21 18:37 
/usr/lib/debug/lib/modules/2.6.24-0.164.rc8.git4.fc9/vmlinux
i386/debug/kernel-debuginfo-common-2.6.24-0.164.rc8.git4.fc9.i686.rpm:
-rw-r--r--1 rootroot   802044 Oct  9 13:31 
/usr/src/debug/kernel-2.6.23/linux-2.6.23.i686/drivers/usb/misc/emi62_fw_s.h
-rw-r--r--1 rootroot   875265 Jan 21 15:57 
/usr/src/debug/kernel-2.6.23/linux-2.6.23.i686/fs/nls/nls_cp949.c
ppc64/debug/kernel-debuginfo-2.6.24-0.164.rc8.git4.fc9.ppc64.rpm:
-rwxr--r--1 rootroot 13748248 Jan 21 17:09 
/usr/lib/debug/lib/modules/2.6.24-0.164.rc8.git4.fc9/kernel/fs/xfs/xfs.ko.debug
-rwxr-xr-x1 rootroot 67126229 Jan 21 16:30 
/usr/lib/debug/lib/modules/2.6.24-0.164.rc8.git4.fc9/vmlinux
ppc64/debug/kernel-debuginfo-common-2.6.24-0.164.rc8.git4.fc9.ppc64.rpm:
-rwxr-xr-x1 rootroot 59098072 Jan 21 17:06 
/usr/lib/debug/boot/vmlinuz-2.6.24-0.164.rc8.git4.fc9.debug
-rwxr-xr-x1 rootroot 59182336 Jan 21 17:06 
/usr/lib/debug/boot/vmlinux-2.6.24-0.164.rc8.git4.fc9kdump.debug
ppc/debug/kernel-debuginfo-2.6.24-0.164.rc8.git4.fc9.ppc.rpm:
-rwxr--r--1 rootroot  9462912 Jan 21 16:29 
/usr/lib/debug/lib/modules/2.6.24-0.164.rc8.git4.fc9/kernel/fs/xfs/xfs.ko.debug
-rwxr-xr-x1 rootroot 46764240 Jan 21 16:10 
/usr/lib/debug/lib/modules/2.6.24-0.164.rc8.git4.fc9/vmlinux
ppc/debug/kernel-debuginfo-common-2.6.24-0.164.rc8.git4.fc9.ppc.rpm:
-rwxr-xr-x1 rootroot 42107088 Jan 21 16:26 
/usr/lib/debug/boot/vmlinuz-2.6.24-0.164.rc8.git4.fc9.debug
-rwxr-xr-x1 rootroot 43539424 Jan 21 16:26 
/usr/lib/debug/boot/vmlinuz-2.6.24-0.164.rc8.git4.fc9smp.debug
x86_64/debug/kernel-debuginfo-2.6.24-0.164.rc8.git4.fc9.x86_64.rpm:
-rwxr--r--1 rootroot 13447688 Jan 21 16:06 
/usr/lib/debug/lib/modules/2.6.24-0.164.rc8.git4.fc9/kernel/fs/xfs/xfs.ko.debug
-rwxr-xr-x1 rootroot 57877978 Jan 21 16:04 
/usr/lib/debug/lib/modules/2.6.24-0.164.rc8.git4.fc9/vmlinux
x86_64/debug/kernel-debuginfo-common-2.6.24-0.164.rc8.git4.fc9.x86_64.rpm:
-rw-r--r--1 rootroot   802044 Oct  9 13:31 
/usr/src/debug/kernel-2.6.23/linux-2.6.23.x86_64/drivers/usb/misc/emi62_fw_s.h
-rw-r--r--1 rootroot   875265 Jan 21 15:54 
/usr/src/debug/kernel-2.6.23/linux-2.6.23.x86_64/fs/nls/nls_cp949.c

So the funny bit is that kernel-debuginfo-common on ppc{,64} got the
.debug files for two /boot/vmlinu[xz] files.  Those ought to be in the
kernel-debuginfo and kernel-kdump-debuginfo rpms if they're anywhere.

The placement of those .debug files is