diff options
author | Zdenek Kabelac <zkabelac@redhat.com> | 2018-11-08 12:12:58 +0100 |
---|---|---|
committer | Zdenek Kabelac <zkabelac@redhat.com> | 2018-11-08 12:20:57 +0100 |
commit | 6cee8f1b063dcf5d809e14de38ba489ce5b8f562 (patch) | |
tree | d6501ff7e40c293896fcd9d16349b5b7e9efe119 /device_mapper/libdm-deptree.c | |
parent | c1703845c3d82e381c545b8ad8bde68bafc2fbcf (diff) | |
download | lvm2-6cee8f1b063dcf5d809e14de38ba489ce5b8f562.tar.gz |
devicemapper: retry remove even for subLVs
With older systems and udevs we don't have control over scanning of lvm2
internal devices - so far we set retry-removal only for top-level LVs,
but in occasional cases udev can be 'fast enough' to open device for
scanning and prevent removal of such device from DM table.
So to combat this case - try to pass 'retry' flag also for removal of
internal device so see how many races can go away with this simple
patch.
Note: patch is applied only to internal version of libdm so the external
API remains working in the old way for now.
Diffstat (limited to 'device_mapper/libdm-deptree.c')
-rw-r--r-- | device_mapper/libdm-deptree.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/device_mapper/libdm-deptree.c b/device_mapper/libdm-deptree.c index 89a0a4855..06f10aefe 100644 --- a/device_mapper/libdm-deptree.c +++ b/device_mapper/libdm-deptree.c @@ -1804,7 +1804,7 @@ static int _dm_tree_deactivate_children(struct dm_tree_node *dnode, if (!_deactivate_node(name, info.major, info.minor, &child->dtree->cookie, child->udev_flags, - (level == 0) ? child->dtree->retry_remove : 0)) { + child->dtree->retry_remove)) { log_error("Unable to deactivate %s (" FMTu32 ":" FMTu32 ").", name, info.major, info.minor); r = 0; |