udev 215 creates inactive MD devices upon stopping them
Hi,
as discussed on linux-raid, please fix the bug that udev 215 creates inactive MD devices upon stopping them.
Reference: http://www.spinics.net/lists/raid/msg46676.html
An open() call to /dev/mdX after creating it with mknod is enough to create such inactive MD device.
According to Artur the issue is caused by this change in udev:
Quoted 11 lines
commit
3ebdb81ef088afd3b4c72b516beb5610f8c93a0dAuthor: Kay Sievers <kay at vrfy.org> Date: Sun Apr 13 19:54:27 2014 -0700udev: serialize/synchronize block device event handling with file locks
http://cgit.freedesktop.org/systemd/systemd/commit/?id>bdb81ef088afd3b4c72b516beb5610f8c93a0d
It seems that they have already disabled this for dm for some reason, but not for md:
Quoted 8 lines
commit
e918a1b5a94f270186dca59156354acd2a596494Author: Kay Sievers <[email protected]> Date: Tue Jun 3 16:49:38 2014 +0200udev: exclude device-mapper from block device ownership event locking
http://cgit.freedesktop.org/systemd/systemd/commit/?idé18a1b5a94f270186dca59156354acd2a596494
Thanks,
Sebastian
[resending to the correct mailing list]
Hi,
as discussed on linux-raid, please fix the bug that udev 215 creates inactive MD devices upon stopping them.
Reference: http://www.spinics.net/lists/raid/msg46676.html
An open() call to /dev/mdX after creating it with mknod is enough to create such inactive MD device.
According to Artur the issue is caused by this change in udev:
Quoted 11 lines
commit
3ebdb81ef088afd3b4c72b516beb5610f8c93a0dAuthor: Kay Sievers <kay at vrfy.org> Date: Sun Apr 13 19:54:27 2014 -0700udev: serialize/synchronize block device event handling with file locks
http://cgit.freedesktop.org/systemd/systemd/commit/?id=3ebdb81ef088afd3b4c72b516beb5610f8c93a0d
It seems that they have already disabled this for dm for some reason, but not for md:
Quoted 8 lines
commit
e918a1b5a94f270186dca59156354acd2a596494Author: Kay Sievers <[email protected]> Date: Tue Jun 3 16:49:38 2014 +0200udev: exclude device-mapper from block device ownership event locking
http://cgit.freedesktop.org/systemd/systemd/commit/?id=e918a1b5a94f270186dca59156354acd2a596494
Thanks,
Sebastian
Quoted 29 lines · Sebastian Parschauer
as discussed on linux-raid, please fix the bug that udev 215 creates inactive MD devices upon stopping them.
Reference: http://www.spinics.net/lists/raid/msg46676.html
Reported-by Francis Moreau <[email protected]>An
open()call to/dev/mdXafter creating it with mknod is enough to create such inactive MD device.According to Artur the issue is caused by this change in udev:
Quoted 18 lines
commit
3ebdb81ef088afd3b4c72b516beb5610f8c93a0dAuthor: Kay Sievers <kay at vrfy.org> Date: Sun Apr 13 19:54:27 2014 -0700udev: serialize/synchronize block device event handling with file locks
http://cgit.freedesktop.org/systemd/systemd/commit/?id=3ebdb81ef088afd3b4c72b516beb5610f8c93a0d
It seems that they have already disabled this for dm for some reason, but not for md:
commit
e918a1b5a94f270186dca59156354acd2a596494Author: Kay Sievers <[email protected]> Date: Tue Jun 3 16:49:38 2014 +0200udev: exclude device-mapper from block device ownership event locking
http://cgit.freedesktop.org/systemd/systemd/commit/?id=e918a1b5a94f270186dca59156354acd2a596494
MD devices are excluded now from the locking logic, like dm devices already are.
Instantiation of devices at open() is incompatible with udev's locking logic. That feature is not useful on most systems today, mknod() should never be done by any tools, only by the kernel itself. It should probably be disabled by default.
(The locking scheme is used to support partitioning programs, to make sure udev will not interfere with the partitioning tool while it creates/removes partitions. As long as an exclusive lock is held on the disk device node, all udev events are suppressed, the close() of the disk which war opened for writing will re-read the partition table and synthesize all suppressed udev events for the partitions again.)
Thanks,
Kay
Quoted 31 lines · On Thu, 24 Jul 2014 23:53:30 +0200 Kay Sievers <[email protected]> wrote:
Quoted 28 lines · Sebastian Parschauer
as discussed on linux-raid, please fix the bug that udev 215 creates inactive MD devices upon stopping them.
Reference: http://www.spinics.net/lists/raid/msg46676.html
Reported-by Francis Moreau <[email protected]>An
open()call to/dev/mdXafter creating it with mknod is enough to create such inactive MD device.According to Artur the issue is caused by this change in udev:
Quoted 17 lines
commit
3ebdb81ef088afd3b4c72b516beb5610f8c93a0dAuthor: Kay Sievers <kay at vrfy.org> Date: Sun Apr 13 19:54:27 2014 -0700udev: serialize/synchronize block device event handling with file locks
http://cgit.freedesktop.org/systemd/systemd/commit/?id=3ebdb81ef088afd3b4c72b516beb5610f8c93a0d
It seems that they have already disabled this for dm for some reason, but not for md:
commit
e918a1b5a94f270186dca59156354acd2a596494Author: Kay Sievers <[email protected]> Date: Tue Jun 3 16:49:38 2014 +0200udev: exclude device-mapper from block device ownership event locking
Quoted 8 lines
Quoted 1 line
MD devices are excluded now from the locking logic, like dm devices already are.
Instantiation of devices at
open()is incompatible with udev's locking logic. That feature is not useful on most systems today,mknod()should never be done by any tools, only by the kernel itself. It should probably be disabled by default.
I agree that instantiating on open is an unfortunate design, but it has been around for a long time so we cannot just ignore it or turn it off. I have a new approach to creating md device which we might eventually be able to transition too, and then maybe deprecate the old way.
In the mean time, thanks for teaching udev to put up with md's peculiarities.
NeilBrown
Quoted 8 lines
(The locking scheme is used to support partitioning programs, to make sure udev will not interfere with the partitioning tool while it creates/removes partitions. As long as an exclusive lock is held on the disk device node, all udev events are suppressed, the
close()of the disk which war opened for writing will re-read the partition table and synthesize all suppressed udev events for the partitions again.)
Quoted 6 lines
Thanks,
Kay
--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
_______________________________________________
systemd-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/systemd-devel