Bug 590316

Summary: RuntimeError: device is already mapped
Product: [Fedora] Fedora Reporter: Bernhard Schuster <redhat.bugzilla>
Component: anacondaAssignee: David Lehman <dlehman>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 13CC: jonathan, vanmeeuwen+fedora
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard: anaconda_trace_hash:fc48d5c5866d46528d95aa16a59cfde86e4dd5841173517735afe9d999a7fb26
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-02-24 14:45:02 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:
Attachments:
Description Flags
Attached traceback automatically from anaconda. none

Description Bernhard Schuster 2010-05-08 19:32:09 UTC
The following was filed automatically by anaconda:
anaconda 13.40 exception report
Traceback (most recent call first):
  File "/usr/lib/anaconda/storage/devicetree.py", line 72, in getLUKSPassphrase
    raise RuntimeError("device is already mapped")
  File "/usr/lib/anaconda/storage/devicetree.py", line 1430, in handleUdevLUKSFormat
    self.__passphrase)
  File "/usr/lib/anaconda/storage/devicetree.py", line 1802, in handleUdevDeviceFormat
    self.handleUdevLUKSFormat(info, device)
  File "/usr/lib/anaconda/storage/devicetree.py", line 1302, in addUdevDevice
    self.handleUdevDeviceFormat(info, device)
  File "/usr/lib/anaconda/storage/devicetree.py", line 996, in addUdevDMDevice
    self.addUdevDevice(new_info)
  File "/usr/lib/anaconda/storage/devicetree.py", line 1258, in addUdevDevice
    device = self.addUdevDMDevice(info)
  File "/usr/lib/anaconda/storage/devicetree.py", line 1960, in populate
    self.addUdevDevice(dev)
  File "/usr/lib/anaconda/storage/__init__.py", line 380, in reset
    self.devicetree.populate()
  File "/usr/lib/anaconda/storage/__init__.py", line 90, in storageInitialize
    storage.reset()
  File "/usr/lib/anaconda/dispatch.py", line 205, in moveStep
    rc = stepFunc(self.anaconda)
  File "/usr/lib/anaconda/dispatch.py", line 126, in gotoNext
    self.moveStep()
  File "/usr/lib/anaconda/gui.py", line 1313, in nextClicked
    self.anaconda.dispatch.gotoNext()
RuntimeError: device is already mapped

Comment 1 Bernhard Schuster 2010-05-08 19:32:14 UTC
Created attachment 412563 [details]
Attached traceback automatically from anaconda.

Comment 2 David Lehman 2010-05-10 15:43:08 UTC
The traceback shown is from a second-attempt live install. That is to say the first attempt resulted in a traceback and then the user seems to have just restarted the install. This is why I love the livecd.

Here's the original traceback:

21:28:20,660 CRITICAL anaconda: anaconda 13.40 exception report
Traceback (most recent call first):
  File "/usr/lib/anaconda/storage/devicetree.py", line 2132, in devices
    raise DeviceTreeError("duplicate paths in device tree")
  File "/usr/lib/anaconda/storage/__init__.py", line 391, in devices
    devices = self.devicetree.devices
  File "/usr/lib/anaconda/platform.py", line 60, in _mntDict
    for device in [d for d in self.anaconda.storage.devices if d.format.mountable]:
  File "/usr/lib/anaconda/platform.py", line 70, in bootDevice
    mntDict = self._mntDict()
  File "/usr/lib/anaconda/platform.py", line 506, in bootDevice
    return Platform.bootDevice(self)
  File "/usr/lib/anaconda/storage/__init__.py", line 298, in doIt
    boot = self.anaconda.platform.bootDevice()
  File "/usr/lib/anaconda/packages.py", line 109, in turnOnFilesystems
    anaconda.storage.doIt()
  File "/usr/lib/anaconda/dispatch.py", line 205, in moveStep
    rc = stepFunc(self.anaconda)
  File "/usr/lib/anaconda/dispatch.py", line 126, in gotoNext
    self.moveStep()
  File "/usr/lib/anaconda/gui.py", line 1313, in nextClicked
    self.anaconda.dispatch.gotoNext()
DeviceTreeError: duplicate paths in device tree

Comment 3 Bernhard Schuster 2010-05-10 17:35:33 UTC
What I did:

I tried to creat a encrypted custom setup. Anaconda crashed ( I don't have the traceback of that crash). Then I tried it again, and it crashed again with this traceback (as seen in my initial "post")

Comment 4 David Lehman 2010-05-24 18:50:03 UTC
The original failure is the same one reported in bug 582757.

The secondary failure is that we do not handle well the case of already-set-up devices when doing the initial storage scan. That is what will be addressed in this bug report.

Comment 5 David Lehman 2011-02-24 14:45:02 UTC
The version of anaconda in Fedora 15 will be much better at deactivating whatever active devices it finds when starting a live install.