diff options
author | Soumya Koduri <skoduri@redhat.com> | 2019-02-27 23:15:58 +0530 |
---|---|---|
committer | Amar Tumballi <amarts@redhat.com> | 2019-03-05 17:49:04 +0000 |
commit | 6b99558be6872bb5ba5fe8133696ca856617b184 (patch) | |
tree | 7d51eb92f14d845239153b333377244d147767bb /xlators/features/leases/src/leases.h | |
parent | 9374484917466dff4688d96ff7faa0de1c804a6c (diff) |
leases: Do not process internal fops
fops marked internal are used to maintain data integrity
and ideally do not intervene with application client leases.
Hence it seems safe to ignore them by lease xlator.
Change-Id: I887b6f2da7ec0081442cc4b572a7a9e110f79eb2
updates: bz#1648768
Signed-off-by: Soumya Koduri <skoduri@redhat.com>
Diffstat (limited to 'xlators/features/leases/src/leases.h')
-rw-r--r-- | xlators/features/leases/src/leases.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/xlators/features/leases/src/leases.h b/xlators/features/leases/src/leases.h index 04d06572f25..57368fac1d9 100644 --- a/xlators/features/leases/src/leases.h +++ b/xlators/features/leases/src/leases.h @@ -45,6 +45,14 @@ goto label; \ } while (0) +#define EXIT_IF_INTERNAL_FOP(frame, xdata, label) \ + do { \ + if (frame->root->pid < 0) \ + goto label; \ + if (xdata && dict_get(xdata, GLUSTERFS_INTERNAL_FOP_KEY)) \ + goto label; \ + } while (0) + #define GET_LEASE_ID(xdata, lease_id, client_uid) \ do { \ int ret_val = -1; \ |