1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00
lvm2/tools
Ondrej Kozina c282a66132 pvmove: fix pvmove --abort or pvmove w/o parameters
_check_lv_status was called from within dm_list_iterate_items cycle.
This was utterly wrong! _check_lv_status may remove more than one LV from
vg->lvs list we iterated in the same time.

In some scenarios this could lead to deadlock iterationg over same LV
indefinitely or segfault depending on the circumstances.

Fixed by moving the _check_lv_status outside iterating the vg->lvs
list.

Note that commit 6e7b24d34f was not enough
as _check_lv_status may result in removal of more than one LV from the list.
2015-03-30 18:38:50 +02:00
..
.exported_symbols generate liblvm2cmd exported symbols too 2010-06-25 18:23:10 +00:00
.gitignore More .gitignore files for an in-source-tree build. 2012-06-08 16:34:43 +01:00
args.h system_id: use for VG ownership 2015-02-13 10:10:27 -06:00
cmdnames.h Fix inconsistent licence notices: executables are GPLv2; libraries LGPLv2.1. 2007-08-20 20:55:30 +00:00
commands.h system_id: enable the options in config file and command line 2015-03-05 09:50:43 -06:00
dmsetup.c cleanup: validate pointers 2014-11-13 17:49:42 +01:00
dumpconfig.c dumpconfig: add --type profilable-command/profilable-metadata, --metadataprofile/--commandprofile 2014-05-20 16:27:07 +02:00
errors.h lvresize: separate validation from action 2013-07-06 03:28:21 +01:00
formats.c Use __attribute__ consistently throughout. 2010-07-09 15:34:40 +00:00
lvchange.c lvchange: disable persistent minors for pools 2015-03-18 13:42:13 +01:00
lvconvert.c cmirror: Adjust region size to work around CPG msg limit to avoid hang. 2015-02-25 14:42:15 -06:00
lvcreate.c thin: support errorwhenfull with thin creation 2015-01-20 15:43:16 +01:00
lvdisplay.c tools: allow -S|--select for vgdisplay, lvdisplay and pvdisplay without -C 2015-02-10 16:09:40 +01:00
lvextend.c Some whitespace tidy-ups. 2008-01-30 14:00:02 +00:00
lvm2cmd-static.c Fix inconsistent licence notices: executables are GPLv2; libraries LGPLv2.1. 2007-08-20 20:55:30 +00:00
lvm2cmd.c Use __attribute__ consistently throughout. 2010-07-09 15:34:40 +00:00
lvm2cmd.h lvresize: separate validation from action 2013-07-06 03:28:21 +01:00
lvm2cmdline.h Support repetition of --addtag and --deltag arguments. 2010-11-11 17:29:05 +00:00
lvm-static.c Use __attribute__ consistently throughout. 2010-07-09 15:34:40 +00:00
lvm.c readline: switch to new-style readline typedef 2014-03-06 17:28:40 +01:00
lvmchange.c Use __attribute__ consistently throughout. 2010-07-09 15:34:40 +00:00
lvmcmdlib.c cleanup: drop unneeded included header files 2012-08-23 14:37:20 +02:00
lvmcmdline.c system_id: apply consistent naming 2015-02-27 13:32:00 -06:00
lvmdiskscan.c filters: add cmd->full_filter - composite of cmd->filter and cmd->lvmetad_filter 2014-10-02 13:06:46 +02:00
lvreduce.c Some whitespace tidy-ups. 2008-01-30 14:00:02 +00:00
lvremove.c cleanup: tools: "or use -S for selection" --> "or use --select for selection" 2015-03-04 14:40:58 +01:00
lvrename.c cleanup: Use lv_is_ macros. 2014-09-15 21:33:53 +01:00
lvresize.c cleanup: use logical_volume* directly 2014-11-03 14:19:34 +01:00
lvscan.c reporting: should not fail with foreign option if lvm1 pvs exist 2015-03-10 13:56:25 -05:00
Makefile.in systemid: Add built-in systemid command. 2015-02-23 17:26:50 +00:00
polldaemon.c pvmove: fix pvmove --abort or pvmove w/o parameters 2015-03-30 18:38:50 +02:00
polldaemon.h cleanup: constify activation usage of lv pointer 2014-09-24 10:54:47 +02:00
pvchange.c cleanup: tools: "or use -S for selection" --> "or use --select for selection" 2015-03-04 14:40:58 +01:00
pvck.c pvck: Use non-zero exit status after failure. 2014-11-13 12:26:43 +00:00
pvcreate.c vgextend: Use process_each_vg. 2015-02-13 14:58:51 +00:00
pvdisplay.c tools: allow -S|--select for vgdisplay, lvdisplay and pvdisplay without -C 2015-02-10 16:09:40 +01:00
pvmove.c cleanup: Remove metadata.h from tools dir. 2014-09-17 15:50:24 +01:00
pvremove.c pvremove: Avoid metadata re-reads & related error messages. 2015-01-06 14:27:30 +01:00
pvresize.c cleanup: drop unused value assign 2015-02-19 14:43:25 +01:00
pvscan.c reporting: should not fail with foreign option if lvm1 pvs exist 2015-03-10 13:56:25 -05:00
reporter.c report: check value of args_are_pvs, not the pointer (fix for commit 9ea77b7) 2015-03-02 10:36:32 +01:00
segtypes.c Use __attribute__ consistently throughout. 2010-07-09 15:34:40 +00:00
stub.h Use __attribute__ consistently throughout. 2010-07-09 15:34:40 +00:00
tags.c tools: Add internal tags command. 2014-01-30 13:09:15 +00:00
toollib.c metadata: vg: add removed_lvs field to collect LVs which have been removed 2015-03-24 08:43:08 +01:00
toollib.h system_id: use for VG ownership 2015-02-13 10:10:27 -06:00
tools.h systemid: silently ignore foreign vgs unless named 2015-02-25 10:53:52 -06:00
vgcfgbackup.c cleanup: remove deallocate_handle_root arg from destroy_procesing_handle fnw 2015-02-13 11:27:09 +01:00
vgcfgrestore.c vgcfgrestore: return invalid cmd line 2014-05-21 23:14:41 +02:00
vgchange.c vgchange: Additional system ID warnings. 2015-03-09 19:03:11 +00:00
vgck.c toollib: replace void *handle with struct processing_handle for use in processing functions (process_each_*/process_single_* and related) 2015-02-10 16:05:24 +01:00
vgconvert.c vgconvert: require lvmetad to not be used 2015-03-10 09:31:54 -05:00
vgcreate.c systemid: Extend --foreign to reporting commands. 2015-02-23 23:41:38 +00:00
vgdisplay.c tools: allow -S|--select for vgdisplay, lvdisplay and pvdisplay without -C 2015-02-10 16:09:40 +01:00
vgexport.c cleanup: tools: "or use -S for selection" --> "or use --select for selection" 2015-03-04 14:40:58 +01:00
vgextend.c vgextend: Use process_each_vg. 2015-02-13 14:58:51 +00:00
vgimport.c systemid: silently ignore foreign vgs unless named 2015-02-25 10:53:52 -06:00
vgmerge.c vgsplit: Fix VG component of lvid. 2014-07-03 19:06:04 +01:00
vgmknodes.c toollib: replace void *handle with struct processing_handle for use in processing functions (process_each_*/process_single_* and related) 2015-02-10 16:05:24 +01:00
vgreduce.c toollib: replace void *handle with struct processing_handle for use in processing functions (process_each_*/process_single_* and related) 2015-02-10 16:05:24 +01:00
vgremove.c cleanup: tools: "or use -S for selection" --> "or use --select for selection" 2015-03-04 14:40:58 +01:00
vgrename.c report: select: refactor: move str_list to libdm 2014-06-17 16:27:20 +02:00
vgscan.c pvscan, vgscan: include foreign vgs with --cache 2015-02-25 15:46:27 -06:00
vgsplit.c systemid: Extend --foreign to reporting commands. 2015-02-23 23:41:38 +00:00