Bug 209777

Summary: kdump misreads a root device on ia64 box
Product: Red Hat Enterprise Linux 5 Reporter: Akira Imamura <aimamura>
Component: kexec-toolsAssignee: Neil Horman <nhorman>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 5.0CC: kkomiyam, ktokunag, ntachino
Target Milestone: ---   
Target Release: ---   
Hardware: ia64   
OS: Linux   
Whiteboard:
Fixed In Version: 5.0.0 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-02-13 17:13:28 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Akira Imamura 2006-10-06 20:34:56 UTC
Description of problem:
kdump misreads a root device on ia64 box. Consequently, checking root
filesystem always fails.
In mkdumprd, the way to search a root device is not good enough for ia64.

Version-Release number of selected component (if applicable):
kexec-tools-1.101-83.el5

How reproducible:
Always

Steps to Reproduce:
1. In /etc/kdump.conf, specify nowhere to copy /proc/vmcore file.
2. Start kdump service.
3. Make system panic.
  
Actual results:
kdump misreads a root device. Anyway /proc/vmcore cannot be copied.

Expected results:
kdump finds a root device correctly, and then it can check root filesystem.


Additional info:
Here's a patch to fix this problem. This patch will be good enough
for i386, ia64, and x86_64.

--- mkdumprd    5 Oct 2006 20:03:22 -0000       1.25
+++ mkdumprd    6 Oct 2006 19:48:15 -0000
@@ -1598,7 +1598,7 @@ emit "#check to see if we have root= on
 emit "ROOTDEV=\`cat /proc/cmdline | grep root=\`"
 emit "if [ -n \"\$ROOTDEV\" ]"
 emit "then"
-emit "   ROOTDEV=\`cat /proc/cmdline | cut -d\" \" -f2 | sed -e's/root=//'\`"
+emit "   ROOTDEV=\`cat /proc/cmdline | sed 's/^.*root=//' | cut -d\" \"  -f1\`"
 emit "   IS_LABEL=\`echo \$ROOTDEV | grep LABEL\`"
 emit "   IS_UUID=\`echo \$ROOTDEV | grep UUID\`"
 emit "   if [ -n \"\$IS_LABEL\" -o -n \"\$IS_UUID\" ] "

Comment 1 Neil Horman 2006-10-09 11:45:37 UTC
yeah, I can see how that might improve the parsing of the rootdev, in the event
that root\ isn't the second value key.  fixed in -85.el5.  Thanks!

Comment 2 Jay Turner 2007-02-13 17:11:30 UTC
Fix confirmed in kexec-tools-1.101-164.el5.