libvirt/src/storage
Osier Yang bc4e5b43c2 storage: Wait udev events are handled before removing lvm vol
Related #BZ: https://bugzilla.redhat.com/show_bug.cgi?id=702260.

There are two problems described in the BZ:
1) "Can't remove open logical volume".
2) "Unable to deactivate logical volume "foo""

This patch just intends to fix 2), as 1) is expected if the vol
is still used by something, and you never known if "lvchange -an"
will fail or not either (sometime, it will succeed, sometimes not).
We'd better not look for trouble, :-)

For 2), that's caused by race between lvremove and udev event handling,
the only workable way now is to wait the events handling are finished,
though it might introduce latencies, as "udevadmin settle" exits
after *all* events are handled, it's the only way we can fix
the racing in libvirt layer.

See https://bugzilla.redhat.com/show_bug.cgi?id=570359 for more
details.
2011-09-22 07:53:57 +08:00
..
parthelper.c Fix parted sector size assumption 2011-09-01 10:46:31 +01:00
storage_backend_disk.c storage: Ensure the device path exists before refreshing disk pool 2011-09-20 11:15:05 +08:00
storage_backend_disk.h build: consistently indent preprocessor directives 2010-03-09 19:22:28 +01:00
storage_backend_fs.c build: storage: Macro 'MKFS' is undefined on some platforms. 2011-09-16 21:07:02 +08:00
storage_backend_fs.h build: storage: Conditionaly compiled structure caused build fail on OSX 2011-09-16 21:03:50 +08:00
storage_backend_iscsi.c build: rename files.h to virfile.h 2011-07-21 10:34:51 -06:00
storage_backend_iscsi.h build: consistently indent preprocessor directives 2010-03-09 19:22:28 +01:00
storage_backend_logical.c storage: Wait udev events are handled before removing lvm vol 2011-09-22 07:53:57 +08:00
storage_backend_logical.h Fix two out-of-date comments in LVM backend 2011-04-17 08:37:31 +02:00
storage_backend_mpath.c Avoid using "devname" as an identifier. 2011-09-16 20:49:04 +08:00
storage_backend_mpath.h build: consistently indent preprocessor directives 2010-03-09 19:22:28 +01:00
storage_backend_scsi.c build: rename files.h to virfile.h 2011-07-21 10:34:51 -06:00
storage_backend_scsi.h build: consistently indent preprocessor directives 2010-03-09 19:22:28 +01:00
storage_backend.c storage: Fix incorrect error codes 2011-09-01 17:36:38 +08:00
storage_backend.h storage: List directory volumes for dir/fs/netfs pools 2011-05-31 12:47:58 -04:00
storage_driver.c Check for source conflicts in storage pools 2011-09-05 15:52:03 +08:00
storage_driver.h build: consistently indent preprocessor directives 2010-03-09 19:22:28 +01:00