Re: debuginfo ppc.
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.
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.
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