Bug 742564 - stop using '--sysinit' for vgchange
Summary: stop using '--sysinit' for vgchange
Alias: None
Product: Fedora
Classification: Fedora
Component: lvm2
Version: rawhide
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
Assignee: Peter Rajnoha
QA Contact: Fedora Extras Quality Assurance
Depends On: 814857 1222495
TreeView+ depends on / blocked
Reported: 2011-09-30 14:51 UTC by Michal Schmidt
Modified: 2015-06-22 07:45 UTC (History)
15 users (show)

Fixed In Version: lvm2-2.02.122-1.fc23
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2015-06-22 07:45:41 UTC
Type: ---

Attachments (Terms of Use)

Description Michal Schmidt 2011-09-30 14:51:17 UTC
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):

Comment 1 Bill Nottingham 2011-09-30 14:58:09 UTC
CC'ing LVM team for opinions. The entire reason --sysinit is used is because it does more than just locking changes.

Comment 2 Alasdair Kergon 2011-09-30 21:48:36 UTC
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.

Comment 3 Peter Rajnoha 2012-10-19 08:35:21 UTC
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).

Comment 4 Fedora End Of Life 2013-04-03 19:40:36 UTC
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:

Comment 5 Fedora Admin XMLRPC Client 2013-09-04 14:49:48 UTC
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.

Comment 6 Peter Rajnoha 2015-05-21 10:21:59 UTC
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:


Note You need to log in before you can comment on or make changes to this bug.