Bug 667014 - booty does not correctly translate physical device name for raids on dm devices
booty does not correctly translate physical device name for raids on dm devices
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: booty (Show other bugs)
5.5
All Linux
medium Severity medium
: rc
: ---
Assigned To: Ales Kozumplik
Release Test Team
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2011-01-03 23:21 EST by Masahiro Matsuya
Modified: 2014-09-30 19:39 EDT (History)
4 users (show)

See Also:
Fixed In Version: booty-0.80.6-8
Doc Type: Bug Fix
Doc Text:
Prior this update, booty did not translate physical device names correctly for md software RAID on dm devices (device-mapper subsystem devices), which caused booty to crash during an installation. This issue has been fixed, physical device names are translated correctly and booty no longer crashes in this case.
Story Points: ---
Clone Of:
Environment:
Last Closed: 2011-07-21 02:47:05 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)

  None (edit)
Description Masahiro Matsuya 2011-01-03 23:21:20 EST
Description of problem:


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:
Comment 1 Masahiro Matsuya 2011-01-03 23:52:54 EST
Description of problem:

booty crashed with the following backtrace.

Traceback (most recent call first):
  File "/usr/lib/booty/bootloaderInfo.py", line 1005, in grubbyDiskName
    return "hd%d" % self.drivelist.index(name)
  File "/usr/lib/booty/bootloaderInfo.py", line 1010, in grubbyPartitionName
    return "(%s,%d)" % (self.grubbyDiskName(name), partNum)
  File "/usr/lib/booty/bootloaderInfo.py", line 763, in writeGrub
    f.write('#          root %s\n' % self.grubbyPartitionName(bootDevs[0]))
  File "/usr/lib/booty/bootloaderInfo.py", line 1210, in write
    justConfig | (not self.useGrubVal))
  File "/usr/lib/anaconda/bootloader.py", line 208, in writeBootloader
    justConfigFile, anaconda.intf)
  File "/usr/lib/anaconda/dispatch.py", line 204, in moveStep
    rc = stepFunc(self.anaconda)
  File "/usr/lib/anaconda/dispatch.py", line 127, in gotoNext
    self.moveStep()
  File "/usr/lib/anaconda/text.py", line 727, in run
    anaconda.dispatch.gotoNext()
  File "/usr/bin/anaconda", line 974, in ?
    anaconda.intf.run(anaconda)
ValueError: list.index(x): x not in list

Local variables in innermost frame:
self: <bootloaderInfo.x86BootloaderInfo instance at 0x169f7248>
name: dm-

I will attach anacdump.txt.

When raid device in /proc/mdstat has a device like "dm-0", getRaidDisks() returns "dm-0" as is. But, this should return the real device name like mapper/mpath0.

Version-Release number of selected component (if applicable):
anaconda-11.1.2.209-1

How reproducible:
Always

Steps to Reproduce:
1. create md device on multipath
2. create lvm device on the md device

example from the customer's kickstart
---------------------------------
clearpart --all --initlabel
part raid.1 --size=100 --ondisk=mapper/mpath0
part raid.5 --size=100 --ondisk=mapper/mpath2
part raid.2 --size=100 --grow --ondisk=mapper/mpath0
part raid.6 --size=100 --grow --ondisk=mapper/mpath2
raid /boot --fstype ext3 --device=md0 --level=RAID1 raid.1 raid.5
raid pv.8 --fstype ext3 --device=md1 --level=RAID1 raid.2 raid.6
volgroup Volume00 pv.8
logvol / --fstype ext3 --name=LogVol00 --vgname=Volume00 --size=3984
logvol swap --fstype swap --name=LogVol01 --vgname=Volume00 --size=3984

bootloader --location=mbr --driveorder=mapper/mpath0,mapper/mpath2
---------------------------------

Actual results:
booty crashed.

Expected results:
booty didn't crash.
Comment 5 RHEL Product and Program Management 2011-02-15 14:19:49 EST
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release.  Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products.  This request is not yet committed for inclusion in an Update
release.
Comment 7 Ales Kozumplik 2011-02-28 10:05:42 EST
Hitting this when trying to fix bug 572862. The two are definitely related, assigning to myself.
Comment 8 Ales Kozumplik 2011-03-03 03:47:01 EST
Fixed in booty-0.80.6-8 using the solution suggested in comment 2, thanks Masahiro.
Comment 12 Miroslav Svoboda 2011-06-29 10:27:22 EDT
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Prior this update, booty did not translate physical device names correctly for md software RAID on dm devices (device-mapper subsystem devices), which caused booty to crash during an installation. This issue has been fixed, physical device names are translated correctly and booty no longer crashes in this case.
Comment 13 errata-xmlrpc 2011-07-21 02:47:05 EDT
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2011-0983.html

Note You need to log in before you can comment on or make changes to this bug.