Description of problem:
Once lvm2 starts using /run (bug 742554), it should be no longer necessary to disable file-based locking in the vgchange call in fedora-storage-init.
Removing '--sysinit' will make it safe to call LVM operations concurrently from other units.
(Note that '--sysinit' disables more than just the locking, so we should check first if some of them still need to be disabled or not.)
Version-Release number of selected component (if applicable):
CC'ing LVM team for opinions. The entire reason --sysinit is used is because it does more than just locking changes.
Indeed, needs a quick review to see if all the other reasons for it will also have gone away with that change. Will transfer back once that's sorted out.
We already use the /run dir (the bug #742554). So let's move forward with this report now...
The --sysinit is a compound option consisting of:
-> --ignorelockingfailure - not needed anymore, the /run/lock/lvm is available rw soon in boot process
-> --ignoremonitoring - not needed since /run is available, this would require the dm-event.service to be run before fedora-storage-init.service (and new lvm2-activation.service when deployed). But that's a one line change - I'll have a look whether it plays well with other services and if yes, I'll commit the change. N.B.: This has a consequence that all volumes activated on vgchange -ay will be monitored at the same time they're activated (which is a plus I think). The lvm2-monitor will just grab all the other volumes not activated at the time of the boot's vgchange -ay call. But that's not an issue (for already monitored volumes, calling vgchange --monitor y will just be a NOOP).
-> --poll n - not needed, we can run the polldaemon as the /run is available and rw (in case there's unfinished merge or mirror sync from previous system run, the poll-daemon will be triggered at boot now). Actually, the polldaemon should be triggered as a service like dmeventd is, not forked off from the LVM command itself, like from vgchange in this case - we still need to change this - there's a bug open for this request already (bug #814857). However, we don't have this feature ready yet so I need to check whether this is OK with the early boot process with the current state.
-> setting LVM_SUPPRESS_LOCKING_FAILURE_MESSAGES env. variable - not needed now, file-based locking should just work as the /run/lock/lvm is rw
I'll give this a try and test it (with a few issued mentioned above) and if it goes well, I'll remove the --sysinit (it might be that the first thing to do should be to concentrate on bug #814857 before we proceed with this bug).
This bug appears to have been reported against 'rawhide' during the Fedora 19 development cycle.
Changing version to '19'.
(As we did not run this process for some time, it could affect also pre-Fedora 19 development
cycle bugs. We are very sorry. It will help us with cleanup during Fedora 19 End Of Life. Thank you.)
More information and reason for this action is here:
This package has changed ownership in the Fedora Package Database. Reassigning to the new owner of this component.
We have lvmpolld in lvm2 since v2.02.120.
The --sysinit is not used in lvm2-activation.service (also in lvm2-activation-early.service and lvm2-activation-net.service), will appear in upcoming lvm2 v2.02.121: