mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-22 11:22:23 +00:00
Release only specific sanlock resource
This is a patch for bug 826704 All sanlock resources get released when hot-dettaching a disk from the domain because virLockManagerSanlockRelease uses the wrong function parameters/flags. With the patch only the resources that should be released are cleaned up. Signed-off-by: Frido Roose <frido.roose@gmail.com>
This commit is contained in:
parent
e9a24e3e3d
commit
a58cb1ac40
@ -814,7 +814,7 @@ static int virLockManagerSanlockRelease(virLockManagerPtr lock,
|
||||
unsigned int flags)
|
||||
{
|
||||
virLockManagerSanlockPrivatePtr priv = lock->privateData;
|
||||
int res_count;
|
||||
int res_count = priv->res_count;
|
||||
int rv;
|
||||
|
||||
virCheckFlags(0, -1);
|
||||
@ -834,7 +834,8 @@ static int virLockManagerSanlockRelease(virLockManagerPtr lock,
|
||||
VIR_FREE(*state);
|
||||
}
|
||||
|
||||
if ((rv = sanlock_release(-1, priv->vm_pid, SANLK_REL_ALL, 0, NULL)) < 0) {
|
||||
if ((rv = sanlock_release(-1, priv->vm_pid, 0, res_count,
|
||||
priv->res_args)) < 0) {
|
||||
if (rv <= -200)
|
||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||
_("Failed to release lock: error %d"), rv);
|
||||
|
Loading…
x
Reference in New Issue
Block a user