mirror of
git://sourceware.org/git/lvm2.git
synced 2025-01-03 05:18:29 +03:00
008c33a21b
Udev daemon has recently introduced a limit on the number of udev processes (there was no limit before). This causes a problem when calling pvscan --cache -aay in lvmetad udev rules which is supposed to activate the volumes. This activation is itself synced with udev and so it waits for the activation to complete before the pvscan finishes. The event processing can't continue until this pvscan call is finished. But if we're at the limit with the udev process count, we can't instatiate any more udev processes, all such events are queued and so we can't process the lvm activation event for which the pvscan is waiting. Then we're in a deadlock since the udev process with the pvscan --cache -aay call waits for the lvm activation udev processing to complete, but that will never happen as there's this limit hit with the number of udev processes. The process with pvscan --cache -aay actually times out eventually (3min or 30sec, depends on the version of udev). This patch makes it possible to run the pvscan --cache -aay in the background so the udev processing can continue and hence we can avoid the deadlock mentioned above.
67 lines
2.0 KiB
Groff
67 lines
2.0 KiB
Groff
.TH PVSCAN 8 "LVM TOOLS #VERSION#" "Sistina Software UK" \" -*- nroff -*-
|
|
.SH NAME
|
|
pvscan \- scan all disks for physical volumes
|
|
.SH SYNOPSIS
|
|
.B pvscan
|
|
.RB [ \-d | \-\-debug ]
|
|
.RB [ \-h | \-\-help ]
|
|
.RB [ \-v | \-\-verbose ]
|
|
.RB [ \-\-version ]
|
|
.RB [ \-\-ignorelockingfailure ]
|
|
.RB [ \-e | \-\-exported ]
|
|
.RB [ \-n | \-\-novolumegroup ]
|
|
.RB [ \-s | \-\-short ]
|
|
.RB [ \-u | \-\-uuid ]
|
|
.BR
|
|
|
|
.B pvscan
|
|
.RB [ \-d | \-\-debug ]
|
|
.RB [ \-h | \-\-help ]
|
|
.B \-\-cache
|
|
.RB [ \-a | \-\-activate " " \fIay ]
|
|
.RB [ \-b | \-\-background ]
|
|
.RB [ \-\-major
|
|
.I major
|
|
.B \-\-minor
|
|
.I minor
|
|
|
|
|
.IR DevicePath ]...
|
|
.SH DESCRIPTION
|
|
pvscan scans all supported LVM block devices in the system for
|
|
physical volumes.
|
|
.SH OPTIONS
|
|
See \fBlvm\fP(8) for common options.
|
|
.TP
|
|
.BR \-e ", " \-\-exported
|
|
Only show physical volumes belonging to exported volume groups.
|
|
.TP
|
|
.BR \-n ", " \-\-novolumegroup
|
|
Only show physical volumes not belonging to any volume group.
|
|
.TP
|
|
.BR \-s ", " \-\-short
|
|
Short listing format.
|
|
.TP
|
|
.BR \-u ", " \-\-uuid
|
|
Show UUIDs (Uniform Unique Identifiers) in addition to device special names.
|
|
.TP
|
|
.BR \-a ", " \-\-activate " " \fIay
|
|
Together with the information already cached in lvmetad, automatically activate
|
|
any logical volumes that become activatable after the scan done on one or more devices.
|
|
The logical volume to autoactivate is matched against the
|
|
activation/auto_activation_volume_list set in lvm.conf. If this list is not set, then
|
|
all volumes are considered for autoactivation. The autoactivation is not yet
|
|
supported for logical volumes that are part of partial or clustered volume groups.
|
|
.TP
|
|
.BR \-b ", " \-\-background
|
|
Run the command in the background.
|
|
.TP
|
|
.BR \-\-cache " [" \-\-major " " \fImajor " " \-\-minor " " \fIminor " | " \fIDevicePath " ]..."
|
|
Scan one or more devices and instruct the lvmetad daemon to update its cached
|
|
state accordingly. Called internally by udev rules.
|
|
All devices listed explicitly are processed \fBregardless\fP of any device
|
|
filters set in lvm.conf.
|
|
.SH SEE ALSO
|
|
.BR lvm (8),
|
|
.BR pvcreate (8),
|
|
.BR pvdisplay (8)
|