On 09/21/2011 12:52 AM, Osier Yang wrote:
> 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.
In particular,
https://bugzilla.redhat.com/show_bug.cgi?id=570359#c28
is the recommendation to use 'udevadm settle' prior to lvremove.
ACK.