diff options
| author | Mohammed Rafi KC <rkavunga@redhat.com> | 2016-05-03 14:43:20 +0530 |
|---|---|---|
| committer | Raghavendra G <rgowdapp@redhat.com> | 2016-06-20 04:56:16 -0700 |
| commit | 6106aec748e8f1c328dda30cbbb5bdfa91c0a869 (patch) | |
| tree | 0300b0e43a24d0b3728180dc5e80b39a68621953 /xlators/cluster/dht/src/dht-messages.h | |
| parent | d1a4e534ba9283da9e75033f4a3a309d16176b24 (diff) | |
dht:remember locked subvol and send unlock to the same
During locking we send lock request to cached subvol,
and normally we unlock to the cached subvol
But with parallel fresh lookup on a directory, there
is a race window where the cached subvol can change
and the unlock can go into a different subvol from
which we took lock.
This will result in a stale lock held on one of the
subvol.
So we will store the details of subvol which we took the lock
and will unlock from the same subvol
Back port of>
>Change-Id: I47df99491671b10624eb37d1d17e40bacf0b15eb
>BUG: 1311002
>Signed-off-by: Mohammed Rafi KC <rkavunga@redhat.com>
>Reviewed-on: http://review.gluster.org/13492
>Reviewed-by: N Balachandran <nbalacha@redhat.com>
>Smoke: Gluster Build System <jenkins@build.gluster.com>
>NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
>Reviewed-by: Raghavendra G <rgowdapp@redhat.com>
>CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
(cherry picked from commit ef0db52bc55a51fe5e3856235aed0230b6a188fe)
Change-Id: Ib821e7355b4937b86d2f9f11e2c8311b7301b6c7
BUG: 1347524
Signed-off-by: Mohammed Rafi KC <rkavunga@redhat.com>
Reviewed-on: http://review.gluster.org/14750
Smoke: Gluster Build System <jenkins@build.gluster.org>
NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
Reviewed-by: N Balachandran <nbalacha@redhat.com>
CentOS-regression: Gluster Build System <jenkins@build.gluster.org>
Reviewed-by: Raghavendra G <rgowdapp@redhat.com>
Diffstat (limited to 'xlators/cluster/dht/src/dht-messages.h')
| -rw-r--r-- | xlators/cluster/dht/src/dht-messages.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/xlators/cluster/dht/src/dht-messages.h b/xlators/cluster/dht/src/dht-messages.h index 044292d86ca..8c0b9103df1 100644 --- a/xlators/cluster/dht/src/dht-messages.h +++ b/xlators/cluster/dht/src/dht-messages.h @@ -40,7 +40,7 @@ */ #define GLFS_DHT_BASE GLFS_MSGID_COMP_DHT -#define GLFS_DHT_NUM_MESSAGES 114 +#define GLFS_DHT_NUM_MESSAGES 116 #define GLFS_MSGID_END (GLFS_DHT_BASE + GLFS_DHT_NUM_MESSAGES + 1) /* Messages with message IDs */ @@ -1064,5 +1064,12 @@ */ #define DHT_MSG_LOCK_MIGRATION_FAILED (GLFS_DHT_BASE + 115) +/* + * @messageid 109116 + * @diagnosis + * @recommendedaction None + */ +#define DHT_MSG_LOCK_INODE_UNREF_FAILED (GLFS_DHT_BASE + 116) + #define glfs_msg_end_x GLFS_MSGID_END, "Invalid: End of messages" #endif /* _DHT_MESSAGES_H_ */ |
