Re: [patch] Re: 2.6.14-rc5-mm1 - ide-cs broken!

From: Richard Purdie
Date: Wed Nov 09 2005 - 12:27:15 EST


On Wed, 2005-11-09 at 11:41 -0500, Bill Davidsen wrote:
> Richard Purdie wrote:
> > This patch stops CompactFlash devices being marked as removable. They
> > are not removable (as defined by Linux) as the media and device are
> > inseparable. When a card is removed, the whole device is removed from
> > the system and never sits in a media-less state.
>
> Having used CF devices for some years (since RH 8.0) I'm not sure what
> problem you're addressing here. Could you describe what problem you're
> having, and also note what current functionality this will change?

I'll try the explanation once more assuming you failed to understand the
previous messages in this thread and those linked to in the link I
provided to a thread about this.

Block devices have a "removable" flag. This flag is defined to indicate
devices where the media can change. A property of these devices is that
the device node and device stay around and media may or may not be
present at any one time. Examples of such devices are floppy and ide cd
drives.

When you remove a CF card, the controller is removed with the card and
nothing to do with the CF card or the device exists anymore. They are
therefore not removable devices in the linux definition of the term.

Currently the removable flag is set for CF cards. This is incorrect as a
CF device and interface either exists or doesn't. There is no media-less
state.

This incorrect setting causes loops with udev scripts requiring
userspace hacks to stop things looping.

The patch therefore correctly sets the removable flag and removes some
unneeded code.

This shouldn't break anything in userspace apart from anything that
incorrectly interprets the removable flag as being something its not.

Richard

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/