summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVijay Bellur <vijay@gluster.com>2011-07-07 03:00:29 +0000
committerAnand Avati <avati@gluster.com>2011-07-07 04:45:37 -0700
commit64e7f70a0b3d6c8c57dd9d15f745451639dc8c76 (patch)
treef9040b10c44cbc01d6faeece521aaf0b2fc06061
parent5c20eb3bbf870edadd22d06babb5d38dad222533 (diff)
features/locks: Do not block UNLOCKs
Signed-off-by: Vijay Bellur <vijay@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2473 (Support for volume and directory level quota) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2473
-rw-r--r--xlators/features/locks/src/inodelk.c2
-rw-r--r--xlators/features/locks/src/posix.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/xlators/features/locks/src/inodelk.c b/xlators/features/locks/src/inodelk.c
index f3c158ebb2e..81cd26730fd 100644
--- a/xlators/features/locks/src/inodelk.c
+++ b/xlators/features/locks/src/inodelk.c
@@ -615,7 +615,7 @@ pl_common_inodelk (call_frame_t *frame, xlator_t *this,
can_block, dom);
if (ret < 0) {
- if (can_block) {
+ if ((can_block) && (F_UNLCK != reqlock->fl_type)) {
pl_trace_block (this, frame, fd, loc,
cmd, flock, volume);
goto out;
diff --git a/xlators/features/locks/src/posix.c b/xlators/features/locks/src/posix.c
index c0f8b5dfe07..f8f26489926 100644
--- a/xlators/features/locks/src/posix.c
+++ b/xlators/features/locks/src/posix.c
@@ -1102,7 +1102,7 @@ pl_lk (call_frame_t *frame, xlator_t *this,
can_block);
if (ret == -1) {
- if (can_block) {
+ if ((can_block) && (F_UNLCK != reqlock->fl_type)) {
pl_trace_block (this, frame, fd, NULL, cmd, flock, NULL);
goto out;
}