Bug 180950 - installer crashes or loops in free_raid_set() when searching for filesystems
installer crashes or loops in free_raid_set() when searching for filesystems
Product: Fedora
Classification: Fedora
Component: dmraid (Show other bugs)
All Linux
medium Severity high
: ---
: ---
Assigned To: Heinz Mauelshagen
: Reopened
Depends On:
  Show dependency treegraph
Reported: 2006-02-10 13:47 EST by Alexandre Oliva
Modified: 2008-12-10 13:07 EST (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2008-12-10 13:07:23 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Alexandre Oliva 2006-02-10 13:47:36 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv: Gecko/20060207 Fedora/ Firefox/

Description of problem:
After I ask the installer to search for installed disks, it crashes.  I attached gdb to it to figure out where:

Program received signal SIGSEGV, Segmentation fault.
0x00002b7ab4bcd408 in free_raid_set ()
   from /usr/lib64/python2.4/site-packages/block/dmraidmodule.so

I was able to install FC4 on this box that I got for myself just two days ago, but I've had no luck with FC5T2 or rawhide because of this problem.

The box has two SATA disks connected to the Promise Fasttrack controller built into the motherboard.  They're configured in the BIOS as separate individual disks, not as an array.

Version-Release number of selected component (if applicable):
python-pyblock-0.13-1 device-mapper-1.02.02-3.1

How reproducible:

Steps to Reproduce:
1.Boot up FC5T2 or rawhide rescue CD in rescue or install mode
2.In rescue mode, proceed to the `scan for existing installations' screen
3.Click on `ok'

Actual Results:  It crashes almost instantly

Expected Results:  It shouldn't crash

Additional info:
Comment 1 Alexandre Oliva 2006-02-10 14:05:46 EST
As it turns out, free_raid_set is in dmraid, python-pyblock just happens to link
with it and pull it in because it's a static library.
Comment 2 Alexandre Oliva 2006-02-10 14:11:44 EST
Got the same error with the 32-bit rescuecd, so it's not some 64-bit error.
Comment 3 Alexandre Oliva 2006-02-10 14:40:09 EST
Further investigation shows the crash occurs on line 393 of
lib/metadata/metadata.c, because (elem)->next is NULL when we attempt to write
to it (elem)->next->prev.  It's the second time free_raid_set is called in the
session, if it makes any difference.
Comment 4 Alexandre Oliva 2006-02-10 15:24:08 EST
This second time is called from group_set, FWIW.
Comment 5 Alexandre Oliva 2006-02-10 15:32:33 EST
Booting with nodmraid works around the problem entirely.  Yay!
Comment 6 Heinz Mauelshagen 2006-02-13 06:32:55 EST
Hrm, if the list of RAID devices contains a mamber, it will be added to it
properly using list_add_tail() in list_add_sorted(), file metadata.c, which sets
up the double-linked list pointers fine.

Can I have a full backtrace of this, please.
Comment 7 Alexandre Oliva 2006-02-13 11:53:46 EST
group_set is called by Python native interfaces, and I've no idea of how to
decode that, nevermind within the limited environment that the installer offers.
Comment 8 Alexandre Oliva 2006-03-25 12:55:40 EST
FWIW, in FC5 it doesn't crash, but rather gets into some infinite loop.  Maybe
there's a signal handler that tries to avoid the ugly crash but ends up leaving
the installer in an half-dead state, arguably much worse unless you know about
the problem...
Comment 9 Alexandre Oliva 2006-08-05 12:47:38 EDT
This is still broken in rawhide, and I know more people who trip into this.
Comment 10 Heinz Mauelshagen 2006-11-20 08:30:21 EST
I still need a backtrace of this.
Preferably a metadata dump using dd if not feasible with "dmraid -rD"
in order to reproduce this here.
Not much I can do without such.
Comment 11 Heinz Mauelshagen 2007-06-27 08:02:52 EDT
Is this still an issue ?
Or do newer versions work ?
Comment 12 Alexandre Oliva 2007-06-30 01:17:40 EDT
Anaconda still looped indefinitely last night, when I tried to install F7 on it.
 nodmraid got it to work.

# dmraid -rD
/dev/sdc: pdc, "pdc_cghebjhaaa", stripe, ok, 490234624 sectors, data@ 0
/dev/sdd: pdc, "pdc_cgicgfbbee", stripe, ok, 490234624 sectors, data@ 0
Comment 13 Alexandre Oliva 2007-11-27 20:53:31 EST
Still a problem (infinite loop) in Fedora 8 :-(

What info do you need?  Any idea how to get it, given that the installer just
freezes on me, unless I use nodmraid?
Comment 14 Bug Zapper 2008-04-03 12:57:51 EDT
Based on the date this bug was created, it appears to have been reported
against rawhide during the development of a Fedora release that is no
longer maintained. In order to refocus our efforts as a project we are
flagging all of the open bugs for releases which are no longer
maintained. If this bug remains in NEEDINFO thirty (30) days from now,
we will automatically close it.

If you can reproduce this bug in a maintained Fedora version (7, 8, or
rawhide), please change this bug to the respective version and change
the status to ASSIGNED. (If you're unable to change the bug's version
or status, add a comment to the bug and someone will change it for you.)

Thanks for your help, and we apologize again that we haven't handled
these issues to this point.

The process we're following is outlined here:

We will be following the process here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping to ensure this
doesn't happen again.
Comment 15 Alexandre Oliva 2008-04-05 03:04:22 EDT
Reported as still broken on Fedora 8.  I'm pretty sure I got it with early 9
pre-alpha too, but I haven't re-installed ever since.  I'll probably be able to
give it another try one of these days, maybe by the end of April or so. 
Unfortunately, that's unlikely to be before the 20th :-(
Comment 17 Bug Zapper 2008-05-13 22:05:40 EDT
Changing version to '9' as part of upcoming Fedora 9 GA.
More information and reason for this action is here:

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