| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
earlier when creating online files so that it's ignored
for --cache --listvg
|
|
|
|
| |
to stop udev rule from doing any activation
|
|
|
|
|
|
| |
udev rule calls pvscan directly which indicates if the
VG can be activated. If so, the lvm-vgchange service
is run, which runs vgchange -aay.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Configure via lvm.conf log/journal or command line --journal.
Possible values:
"command" records command information.
"output" records default command output.
"debug" records full command debugging.
Multiple values can be set in lvm.conf as an array.
One value can be set in --journal which is added to
values set in lvm.conf
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
pvscan --cache <dev>
. read only dev
. create online file for dev
pvscan --listvg <dev>
. read only dev
. list VG using dev
pvscan --listlvs <dev>
. read only dev
. list VG using dev
. list LVs using dev
pvscan --cache --listvg [--checkcomplete] <dev>
. read only dev
. create online file for dev
. list VG using dev
. [check online files and report if VG is complete]
pvscan --cache --listlvs [--checkcomplete] <dev>
. read only dev
. create online file for dev
. list VG using dev
. list LVs using dev
. [check online files and report if VG is complete]
. [check online files and report if LVs are complete]
[--vgonline]
can be used with --checkcomplete, to enable use of a vg online
file. This results in only the first pvscan command to see
the complete VG to report 'VG complete', and others will report
'VG finished'. This allows the caller to easily run a single
activation of the VG.
[--udevoutput]
can be used with --cache --listvg --checkcomplete, to enable
an output mode that prints LVM_VG_NAME_COMPLETE='vgname' that
a udev rule can import, and prevents other output from the
command (other output causes udev to ignore the command.)
The list of complete LVs is meant to be passed to lvchange -aay,
or the complete VG used with vgchange -aay.
Example of listlvs
------------------
$ lvs -a vg -olvname,devices
LV Devices
lv_a /dev/loop0(0)
lv_ab /dev/loop0(1),/dev/loop1(1)
lv_abc /dev/loop0(3),/dev/loop1(3),/dev/loop2(1)
lv_b /dev/loop1(0)
lv_c /dev/loop2(0)
$ pvscan --cache --listlvs --checkcomplete /dev/loop0
pvscan[35680] PV /dev/loop0 online, VG vg incomplete (need 2).
VG vg incomplete
LV vg/lv_a complete
LV vg/lv_ab incomplete
LV vg/lv_abc incomplete
$ pvscan --cache --listlvs --checkcomplete /dev/loop1
pvscan[35681] PV /dev/loop1 online, VG vg incomplete (need 1).
VG vg incomplete
LV vg/lv_b complete
LV vg/lv_ab complete
LV vg/lv_abc incomplete
$ pvscan --cache --listlvs --checkcomplete /dev/loop2
pvscan[35682] PV /dev/loop2 online, VG vg is complete.
VG vg complete
LV vg/lv_c complete
LV vg/lv_abc complete
Example of listvg
-----------------
$ pvscan --cache --listvg --checkcomplete /dev/loop0
pvscan[35684] PV /dev/loop0 online, VG vg incomplete (need 2).
VG vg incomplete
$ pvscan --cache --listvg --checkcomplete /dev/loop1
pvscan[35685] PV /dev/loop1 online, VG vg incomplete (need 1).
VG vg incomplete
$ pvscan --cache --listvg --checkcomplete /dev/loop2
pvscan[35686] PV /dev/loop2 online, VG vg is complete.
VG vg complete
|
|
|
|
| |
How to run individual test.
|
|
|
|
|
|
|
|
|
|
| |
Always use PREFIX for vg header - all tests must use this prefix,
VGs without are not allowed.
Modify pv_symlink test - as the test was checking unsupportable
combination - since lvm2 commands withing testsuite are only
allowed to manipulate with /dev/mapper/LVMTESTXXXX path -
nothing else allowed and fails on being filtered.
|
|
|
|
| |
Lets see, why it's very occasionaly able to active LV.
|
|
|
|
|
|
|
|
| |
Added comment the 'lvs' already initiates dmeventd
Note: we don't have any query mechanism to check if dmeventd
is already running except access of socket which basically
starts dmeventd if it's not running.
|
|
|
|
|
|
|
| |
For determinist test results lvm2/dm service shall not be present
and running in the system as it may randomize test results.
In case they are found present, this test ends with warning (not failure).
|
|
|
|
| |
Depending on kernel, the race may or may not happen.
|
|
|
|
|
|
|
|
| |
Some older instancies of 'mdadm' opened legs in RW and
closed and opened again and expected exlusive access.
But here udev rule can be fired - so on these versions
slow down whole mdadm runtime by using strace, to
give system a bit more time to finish udev rule.
|
|
|
|
|
|
| |
Make check_lvmpolld_init_rq_count() more compatible with older gawk,
where some functionality was not working properly.
Also change 'not not' condition.
|
| |
|
|
|
|
|
|
|
| |
Enhance function to wait until raid status gets consisten
(shifts from 0/xxxxx to something else)
If it would took too long fail the check.
|
|
|
|
|
| |
In case there is no symlink - udev can optimize /dev/disk away,
thus find would fail in teardown.
|
| |
|
|
|
|
|
|
| |
Fsadm wants to print its own error message when it can't detect
type of the filesystem on a block device.
Otherwise fsadm exits with no message on an unused block device.
|
|
|
|
|
|
|
| |
When blocksize --getsize64 gives empty result we want to fallback
to ancient --getsize * --getss calculation (RHBZ #1942486).
Reported by: ajschorr@alumni.princeton.edu
|
|
|
|
|
|
| |
Just like lvm command ignores 0/xxxx report from judging the status.
Avoid using infinite loop and limit report checking to 100 checks.
If it would need more - something is not right.
|
|
|
|
| |
Do not modify /dev dir maintained by udev.
|
|
|
|
|
|
|
|
|
|
| |
Our tests may result in producation of huge set of
invalid links in /dev/disk directory depeding on version
of udev and various kinds of failures.
Also we happen to invoke some on-system pvscans generating
local /etc/lvm/archive & backups - remove them when
test is finished.
|
|
|
|
|
| |
No need to access table when we just check presence,
so generate smaller error message about missing device.
|
|
|
|
|
|
|
| |
Some kernel seems to keep 'lvextend' busy so long,
that actual resize already happens.
So ATM use 'should' until something better is invented.
|
|
|
|
|
|
| |
Before cleaning MD, try to remove any DM on top such MD.
Check is made through DM table check.
Maybe parse /proc/mdstat for this???
|
|
|
|
|
|
|
|
| |
Try to synchronize with colliding udev.
Also retry once if there is some failure with some
sleep between next retry.
Use oflag=direct for wipping without wipefs.
|
|
|
|
|
| |
Seems like version 1.13.2 remains crashing kernel - so increase
the required version for this reshaping test.
|
| |
|
|
|
|
| |
Older mdadm fails the command, when the signature is already gone.
|
|
|
|
|
|
|
| |
Combination of throttling and slowed device is a bit faster.
Also add FIXME about the mutliple spawn polling processing
when activating invidual LV for a pvmove.
|
| |
|
|
|
|
| |
Throttling was not helping with race - try to use more data.
|
| |
|
| |
|
|
|
|
|
| |
Select unused md from /proc/mdstat
Check for wipefs once.
|
|
|
|
|
| |
For older mdadm its hard to support new names - to simplify things
keep using /dev/mdXXX name which is automatically selected.
|
|
|
|
| |
Tests running in the system may use locking dir of the system.
|
| |
|
| |
|
| |
|
|
|
|
| |
Before sleeping, check if pid is still there.
|
|
|
|
| |
Flip usage from prepare_md_dev to mdadm_create.
|
|
|
|
| |
Condense tests and use the new mdadm_create.
|
|
|
|
|
|
| |
Use for testing new mdadm_create aux wrapper.
Place functionality into a 2 pass loop - one for 'auto' other for 'start'.
Share same tests between raid level 0 and level 1 version of raid.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add generic wrapper for mdadm --create which takes
normal 'mdadm' args - but allows us to handle differences of
mdadm usage across various version of mdadm tool.
Resulting MD device is availalble in $(< MD_DEV).
Automatic cleaning is made through cleanup_md_dev
Calling of mdadm_create cleans previous MD dev if it exists.
|
|
|
|
|
|
| |
Use aux for preparing profile.
Avoid playing with LVM_BINARY localy - we already
preset this variable in lib/utils.
|
|
|
|
|
| |
Try if the test gets slowed down with slower mirroring (1)
or we would need something better to beat the race.
|
|
|
|
|
| |
Seems this kernel bug is taking more time to get it fixed,
so skipping only failing portion of test and ending with WARNING.
|
|
|
|
|
|
|
|
| |
When testing installed binaries on system, use more 'built-in'
predefined settings to usethem with their compiled-in values.
Also it's better to use same locking dir so the system's pvscan
is not unexpectedly interferring with test commands.
|
|
|
|
|
| |
We would need to be check same status value - otherwise
we can hit race in validating 2 different states.
|