On Thu, Jul 29, 2010 at 06:07:31PM +0200, Kay Sievers wrote: > On Thu, Jul 29, 2010 at 16:58, Karel Zak <kzak@xxxxxxxxxx> wrote: > > On Thu, Jul 29, 2010 at 04:22:50PM +0200, Kay Sievers wrote: > >> On Thu, Jul 29, 2010 at 16:06, Milan Broz <mbroz@xxxxxxxxxx> wrote: > >> > On 07/29/2010 03:47 PM, Kay Sievers wrote: > >> >> On Thu, Jul 29, 2010 at 15:33, Milan Broz <mbroz@xxxxxxxxxx> wrote: > >> >>> Create /sys/block/loopX/loop directory and provide these attributes: > >> >>> - backing_file > >> >>> - autoclear > >> >>> - offset > >> >>> - sizelimit > >> >>> > >> >>> To be used in util-linux-ng (and possibly elsewhere like udev rules) > >> >>> where code need to get loop attributes from kernel (and not store > >> >>> duplicate info in userspace). > >> >> > >> >> Isn't it that the loop attributes are created _after_ the loopdev is > >> >> registered? That would make it hard to use these attributes from udev, > >> >> as the event is already running while they are created. > >> > > >> > First 8 loop devices are registered always (without backing file), > >> > so you have wait for change event initiated from fd set ioctl anyway... > >> > (backing file attribute is empty in that case) > >> > >> Ah, so we are sure, we always get a 'change' event, and before that, > >> none of these values are ever useful to read? I mean, there will not > >> be attributes that are interesting during an 'add' event? > > > > I think the patch does not change the current behavior. It exports > > details about loopdevs to userspace by /sys. This is the primary goal > > of the patch. > > Sure it does. Sysfs attributes need to be created _before_ uevents are > sent out. The current behavior is that all blockdev attributes are > safely created before the event is sent. These loop attributes are > created _after_ the event is sent. > > The question is if we can rely on the fact, that 'add' events never > want to look at any of these attributes, and all can be deferred to I think we can rely on this fact, 'add' does not mean that the device is ready. BTW, why there is /sys/block/loopN at all if the device is not associated with any backing file? Note that /sys/block/loopN/ro is there for years and depends on backing file as well (so it's useless after "add"). > later 'change' events. If we can't be fully certain about this, this > stuff must be changed to happen before the event for the blockdev is > sent out. The primary goal is to use the attributes in mount(8) and losetup(8). I have doubts that we will use it udev rules. Karel -- Karel Zak <kzak@xxxxxxxxxx> http://karelzak.blogspot.com -- To unsubscribe from this list: send the line "unsubscribe util-linux-ng" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html