diff options
author | David Teigland <teigland@redhat.com> | 2016-02-24 10:10:59 -0600 |
---|---|---|
committer | David Teigland <teigland@redhat.com> | 2016-02-24 10:10:59 -0600 |
commit | 664fa6d1be10a807f8edc13801b1cd62248ae76f (patch) | |
tree | efced1b5c7981809fcccac0d63c05be453aa6d6c | |
parent | 77f034bfa3d85600ec9b9581c17352202ce09ae8 (diff) | |
download | lvm2-664fa6d1be10a807f8edc13801b1cd62248ae76f.tar.gz |
lvmlockd: use new sanlock flag to avoid blocking
This flag allows sanlock requests to avoid all blocking.
-rw-r--r-- | daemons/lvmlockd/lvmlockd-sanlock.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/daemons/lvmlockd/lvmlockd-sanlock.c b/daemons/lvmlockd/lvmlockd-sanlock.c index 669465201..c6534d8c4 100644 --- a/daemons/lvmlockd/lvmlockd-sanlock.c +++ b/daemons/lvmlockd/lvmlockd-sanlock.c @@ -1416,14 +1416,12 @@ int lm_lock_sanlock(struct lockspace *ls, struct resource *r, int ld_mode, if (adopt) flags |= SANLK_ACQUIRE_ORPHAN_ONLY; -#ifdef SANLOCK_HAS_ACQUIRE_OWNER_NOWAIT /* * Don't block waiting for a failed lease to expire since it causes * sanlock_acquire to block for a long time, which would prevent this * thread from processing other lock requests. */ flags |= SANLK_ACQUIRE_OWNER_NOWAIT; -#endif memset(&opt, 0, sizeof(opt)); sprintf(opt.owner_name, "%s", "lvmlockd"); @@ -1498,7 +1496,6 @@ int lm_lock_sanlock(struct lockspace *ls, struct resource *r, int ld_mode, return -EAGAIN; } -#ifdef SANLOCK_HAS_ACQUIRE_OWNER_NOWAIT if (rv == SANLK_ACQUIRE_OWNED_RETRY) { /* * The lock is held by a failed host, and will eventually @@ -1517,7 +1514,7 @@ int lm_lock_sanlock(struct lockspace *ls, struct resource *r, int ld_mode, *retry = 0; return -EAGAIN; } -#endif + if (rv < 0) { log_error("S %s R %s lock_san acquire error %d", ls->name, r->name, rv); |