[lvm-devel] [PATCH 8/7][retry remove] Also add check for filesystem use on a DM/LVM device - "dm_device_has_fs"
Zdenek Kabelac
zkabelac at redhat.com
Wed Sep 21 10:22:37 UTC 2011
Dne 21.9.2011 10:55, Milan Broz napsal(a):
> On 09/20/2011 10:01 PM, Zdenek Kabelac wrote:
>> How bad would be to replace the code in lvremove with something like:
>> when remove fails - call system("udevadm settle") - and retry whole
>> lv_remove_with_depenencies() (or whatever baselevel we pick here).
>
> This solution was nacked already, please do not reiterate it again.
I haven't heard about nack yet.
> Avoid system() in any case, whatever command it is.
A lot of time has been spent squeezing seconds from execution time - and now
we add multiple seconds back when (i.e. removal of 1000LVs and several will
have problem with its removal and command might take minutes to finish...)
>> PS: easiest workaround for failing lvremove is - to replace lvremove with
>> shell wrapper which call udevadm settle and retries lvremove in case the first
>> one fails.
>
> Yes, and all system security audit log will point to lvm. Please do not do
> such home made solutions. This need proper solution and no such things.
Well I'm not stopping current solution - but we could have better hack here -
Also I think we could repeat the code from udevadm settle in our library in
case use of exec_cmd("udevadm settle") would be seen as a security problem.
Obviously selinux policy would need some minor mods for udev readout, but this
should not be a problem.
Zdenek
More information about the lvm-devel
mailing list