diff options
| author | Pranith Kumar K <pranithk@gluster.com> | 2011-05-31 00:39:22 +0000 | 
|---|---|---|
| committer | Anand Avati <avati@gluster.com> | 2011-05-31 09:12:32 -0700 | 
| commit | 82d794cac5f4875e52aa5337e2002466ec00256d (patch) | |
| tree | 947e24e53b66ca3e05bbe837113dd3464ebcfa7e | |
| parent | 6cfe22bf1533c8b7d4084a9963305384d1ca1902 (diff) | |
features/locks: Unwind with SUCCESS on non-blocking entrylk success
Signed-off-by: Pranith Kumar K <pranithk@gluster.com>
Signed-off-by: Anand Avati <avati@gluster.com>
BUG: 2949 (self-heal hangs)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2949
| -rw-r--r-- | xlators/features/locks/src/entrylk.c | 7 | 
1 files changed, 4 insertions, 3 deletions
diff --git a/xlators/features/locks/src/entrylk.c b/xlators/features/locks/src/entrylk.c index e58c1a2c378..9e7d4c87820 100644 --- a/xlators/features/locks/src/entrylk.c +++ b/xlators/features/locks/src/entrylk.c @@ -671,6 +671,7 @@ pl_common_entrylk (call_frame_t *frame, xlator_t *this,                  break;          case ENTRYLK_LOCK_NB: +                unwind = 1;                  pthread_mutex_lock (&pinode->mutex);                  {                          ret = __lock_name (pinode, basename, type, @@ -678,11 +679,11 @@ pl_common_entrylk (call_frame_t *frame, xlator_t *this,                  }                  pthread_mutex_unlock (&pinode->mutex); -                if (ret < 0) +                if (ret < 0) {                          op_errno = -ret; +                        goto out; +                } -                unwind = 1; -                goto out;                  break;          case ENTRYLK_UNLOCK:  | 
