Re: 2.6.2-rc1-mm1

From: viro
Date: Thu Jan 22 2004 - 19:25:08 EST


On Thu, Jan 22, 2004 at 03:38:54PM -0800, Greg KH wrote:
> On Thu, Jan 22, 2004 at 03:19:43PM +0000, viro@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx wrote:
> > Greg, please, RTFS to see at which point do we decide which driver will
> > be used by raw device. It's _not_ RAW_SETBIND, it's open(). So where
> > your symlink should point is undecided until the same point.
>
> I don't care about which driver is used by the raw device, I care about
> which block device the raw device is "bound" to. That happens at
> RAW_SETBIND time, right? We do this in the line:
> rawdev->binding = bdget(dev);

No. We have no fscking idea what device it is. All we know is a device
number. No driver-related activity (including insmod, etc.) happens
until open().

Among other things, RAW_SETBIND on inexistent device is a legitimate use.
Which kills your "create a symlink at RAW_SETBIND" immediately - there
might very well be nothing for it to point to.

You can bind /dev/raw0 to 8:0, then attach USB disk and then open
/dev/raw0. That ends up with /dev/raw0 becoming a raw alias for
that disk.
-
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/