Bug 763923

Summary: kernel-*-debuginfo packages don't contain vmlinux.debug, crashdump cannot be analyzed.
Product: [openSUSE] openSUSE Tumbleweed Reporter: Stefan Seyfried <seife>
Component: KernelAssignee: Michal Marek <mmarek>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Major    
Priority: P3 - Medium CC: mkubecek, mmarek
Version: 13.1 Beta 1   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: Third Party Developer/Partner Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Stefan Seyfried 2012-05-24 15:44:55 UTC
linux-hyic:/var/crash/2012-05-24-17:33 # ls -l
total 182472
-rw-r--r-- 1 root root       190 24. Mai 17:34 README.txt
-rw-r--r-- 1 root root   2539450 24. Mai 17:34 System.map-3.4.0-rc6-1-desktop
-rw------- 1 root root 178438479 24. Mai 17:34 vmcore
-rw-r--r-- 1 root root   5860066 24. Mai 17:34 vmlinux-3.4.0-rc6-1-desktop.gz
linux-hyic:/var/crash/2012-05-24-17:33 # crash vmcore -f vmlinux-3.4.0-rc6-1-desktop.gz 

crash 6.0.5
Copyright (C) 2002-2012  Red Hat, Inc.
Copyright (C) 2004, 2005, 2006  IBM Corporation
Copyright (C) 1999-2006  Hewlett-Packard Co
Copyright (C) 2005, 2006  Fujitsu Limited
Copyright (C) 2006, 2007  VA Linux Systems Japan K.K.
Copyright (C) 2005  NEC Corporation
Copyright (C) 1999, 2002, 2007  Silicon Graphics, Inc.
Copyright (C) 1999, 2000, 2001, 2002  Mission Critical Linux, Inc.
This program is free software, covered by the GNU General Public License,
and you are welcome to change it and/or distribute copies of it under
certain conditions.  Enter "help copying" to see the conditions.
This program has absolutely no warranty.  Enter "help warranty" for details.
 
crash: /var/tmp/vmlinux-3.4.0-rc6-1-desktop.gz_vsBB0S: no debugging data available
crash: vmlinux-3.4.0-rc6-1-desktop.debug: debuginfo file not found

crash: either install the appropriate kernel debuginfo package, or
       copy vmlinux-3.4.0-rc6-1-desktop.debug to this machine
linux-hyic:/var/crash/2012-05-24-17:33 # rpm -q kernel-desktop kernel-desktop-debuginfo
kernel-desktop-3.4.rc6-1.1.x86_64
kernel-desktop-debuginfo-3.4.rc6-1.1.x86_64
linux-hyic:/var/crash/2012-05-24-17:33 # rpm -ql kernel-desktop-debuginfo|grep vmlinux
linux-hyic:/var/crash/2012-05-24-17:33 # 

Current Factory. Looks like a kernel-*-debuginfo packaging bug.
Comment 1 Stefan Seyfried 2012-05-30 08:41:01 UTC
Jeff Mahoney suggested the kernel-desktop-devel-debuginfo needs to be installed.
However, this does not help:

linux-hyic:~ # zypper se kernel-desktop
Loading repository data...
Reading installed packages...

S | Name                           | Summary                                                 | Type   
--+--------------------------------+---------------------------------------------------------+--------
i | kernel-desktop                 | Kernel optimized for the desktop                        | package
  | kernel-desktop-base            | Kernel optimized for the desktop - base modules         | package
i | kernel-desktop-base-debuginfo  | Debug information for package kernel-desktop-base       | package
i | kernel-desktop-debuginfo       | Debug information for package kernel-desktop            | package
  | kernel-desktop-debugsource     | Debug sources for package kernel-desktop                | package
i | kernel-desktop-devel           | Development files necessary for building kernel modules | package
i | kernel-desktop-devel-debuginfo | Debug information for package kernel-desktop-devel      | package

linux-hyic:/var/crash/2012-05-30-10:29 # crash vmcore vmlinux-3.4.0-2-desktop.gz 

crash 6.0.6
[...] 
crash: vmlinux-3.4.0-2-desktop.gz: original filename unknown
       Use "-f vmlinux-3.4.0-2-desktop.gz" on command line to prevent this message.

crash: /var/tmp/vmlinux-3.4.0-2-desktop.gz_jAl38c: no debugging data available
crash: vmlinux-3.4.0-2-desktop.debug: debuginfo file not found

crash: either install the appropriate kernel debuginfo package, or
       copy vmlinux-3.4.0-2-desktop.debug to this machine

in /usr/lib/debug, there is no file named vmli*

Additionally, if really more than just kernel-desktop-debuginfo is needed to be installed, it should require the other needed debuginfo packages.
Comment 2 Michal Kubeček 2012-06-15 13:20:19 UTC
I tried a local build (with "osc build"). At the moment when

> Wrote: /home/abuild/rpmbuild/RPMS/x86_64/kernel-desktop-devel-debuginfo-3.4.0-3.1.x86_64.rpm

was displayed, "rpm -qlp" showed that the RPM contained only the
vmlinux-*.debug file. However, in the end, the vmlinux-*.debug file was
missing and the contents was similar to the package of update repository.
Comment 3 Michal Kubeček 2012-06-18 08:32:45 UTC
After update to 3.4.2-1.1 (x86_64, desktop), the file

  /usr/lib/debug/boot/vmlinux-3.4.2-1-desktop.debug

is present in kernel-desktop-devel-debuginfo package and it can be used with
crash. I didn't check other architectures and flavors.
Comment 4 Stefan Seyfried 2012-06-18 20:18:09 UTC
If we cannot put that single file into kernel-desktop-debuginfo?
IIUC one without the other is not really useful (kernel-desktop-debuginfo without kernel-desktop-devel-debuginfo), so it should be in one package.

If that's not feasible, can we let kernel-desktop-debuginfo require kernel-desktop-devel-debuginfo, so that old documentation still applies?

Or it is useful on its own? Then we need to update the documentation...
Comment 5 Stefan Seyfried 2013-08-16 12:59:10 UTC
this bug is still in 13.1 / current factory.
Affecting, amongst others, users trying to user systemtap.

Please review comment#4, which seems to be the simple fix for this problem.
Comment 6 Stefan Seyfried 2013-10-18 07:02:17 UTC
I'm teaching people in my kernel-debugging classes now that they need to watch out for SUSE crazy setup, but nobody can understand why this does not work automatically "out of the box" and I have a hard time explaining why :-)

The real workload for support will surely come once SLES12 ships with this "feature".

What is preventing the suggested solution from comment#4 to be implemented?
Comment 7 Michal Marek 2014-09-03 08:22:09 UTC
This should be finally fixed in the current Factory kernel (and SLE12 as well). the vmlinux.*debug file is now part of kernel-$flavor-debuginfo