Bug 481431 - CF card not available to install to
Summary: CF card not available to install to
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: anaconda
Version: 10
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Jeremy Katz
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 492148 (view as bug list)
Depends On:
Blocks: 483686
TreeView+ depends on / blocked
 
Reported: 2009-01-24 19:06 UTC by Jerry Vonau
Modified: 2009-03-25 19:24 UTC (History)
4 users (show)

Fixed In Version:
Clone Of:
: 483686 519432 (view as bug list)
Environment:
Last Closed: 2009-02-16 21:09:46 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
badhack... (1.06 KB, patch)
2009-01-31 15:25 UTC, Alexander Larsson
no flags Details | Diff
isys hack for mmc (2.65 KB, patch)
2009-02-02 00:59 UTC, Jerry Vonau
no flags Details | Diff

Description Jerry Vonau 2009-01-24 19:06:57 UTC
Description of problem:
anaconda doesn't not offer to partition a CF card (/dev/mmcblk0) that is seen by stage1

Version-Release number of selected component (if applicable):
F10's installer

How reproducible:
always

Steps to Reproduce:
1. boot install with cf card installed 
2.
3.
  
Actual results:
CF card is not shown to be available to partition and install to. 

Expected results:
install to CF card.

Additional info:
device appears in /dev as mmcblk0

Comment 1 Martin Langhoff 2009-01-26 22:02:02 UTC
This fix is specially important for the OLPC School Server - Fedora running from an SD card on an XO is how we run the School Server on XO hardware...

Comment 2 Martin Langhoff 2009-01-28 20:04:59 UTC
Must be noted that this is on XO hw. With some SD card reader anaconda is reported to work.

Comment 3 Alexander Larsson 2009-01-31 14:47:07 UTC
I'm seeing this on my acer aspire one with the expansion sdhc slot and i looked a bit at it.

It turns out that the SD card is /dev/mmcblk0 and the partition on it is /dev/mmcblk0p1. This is not visible in system-config-lvm either.

Looking at the system-config-lvm code it uses sfdisk -s to list all devices. This looks in /proc/partitions for the source, but uses some heuristics to find
what are really disks:

int
is_probably_full_disk(char *name) {
        while (*name)
                name++;
        return !isdigit(name[-1]);
}

This clearly doesn't work with the naming scheme for the mmcblk driver, as it ends with a digit for non-partitions.

Comment 4 Alexander Larsson 2009-01-31 15:23:50 UTC
Turns out this is not what is causing anaconda issues.
Instead its the mmcblk0 being storage_type "sd_mmc" and not "disk" in hal.

I'm attaching a badhack i'm using just to get the stuff running on my machine.

Comment 5 Alexander Larsson 2009-01-31 15:25:26 UTC
Created attachment 330524 [details]
badhack...

Comment 6 Alexander Larsson 2009-01-31 18:38:57 UTC
Hmm, i was trying to do a RAID0 on /dev/sda2 and /dev/mmcblk0p1 with this patch, but it seems to fail spectacularly. I'm not really an expert on this stuff, but it seems to become confuser, thinking that sda2 is part of md0 and mmcblk0p1 is part of md_d0, so i'm not able to assemble md0.

I believe this is also due to tools being confused about the mmcblk device naming. Why is it not mmcblka, mmcblkb, mmcblka1, etc.

Comment 7 Jerry Vonau 2009-02-02 00:58:19 UTC
I used a different path around the isys.py issue(patch later), and the CF card now shows up in the partition screen, then fails when enabling LVM...

lvmout:
Running... ['lvm', 'pvcreate', '-ff', '-y', '-v', '/dev/mmcblk0p2']

  Device /dev/mmcblk0p2 not found (or ignored by filtering).

Comment 8 Jerry Vonau 2009-02-02 00:59:19 UTC
Created attachment 330569 [details]
isys hack for mmc

Comment 9 Jeremy Katz 2009-02-02 23:57:51 UTC
(In reply to comment #6)
> I believe this is also due to tools being confused about the mmcblk device
> naming. Why is it not mmcblka, mmcblkb, mmcblka1, etc.

Many (many) tools still have assumptions about device naming.  It looks like at least lvm still does, so we'll clone off a bug for that.  mmcblka would actually break things also.  And system-config-lvm's code is apparently broken in lots of other cases since foop1 is used by a number of kernel drivers.

Taking the idea of the patches here, I added something to anaconda that should do the right thing.  And as I said, will then also clone off a bug to get lvm2 fixed

Comment 10 Jeremy Katz 2009-03-25 19:24:51 UTC
*** Bug 492148 has been marked as a duplicate of this bug. ***


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