[libvirt] [PATCH] Release only specific sanlock resource

Eric Blake eblake at redhat.com
Mon Aug 13 16:04:02 UTC 2012


On 08/13/2012 04:54 AM, Frido Roose wrote:
> 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 at gmail.com>
> ---
>  src/locking/lock_driver_sanlock.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/src/locking/lock_driver_sanlock.c b/src/locking/lock_driver_sanlock.c
> index 7c71af3..0625d09 100644
> --- a/src/locking/lock_driver_sanlock.c
> +++ b/src/locking/lock_driver_sanlock.c
> @@ -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;

Coding style: space on both sides of '='

> @@ -834,7 +834,7 @@ 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) {

I'm not as familiar with the sanlock code to know if this is the right
fix, but if Dan hasn't reviewed this in a couple more days, give me a
ping and I'll learn something new.

-- 
Eric Blake   eblake at redhat.com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 620 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20120813/111fdee9/attachment-0001.sig>


More information about the libvir-list mailing list