diff options
author | Xavier Hernandez <xhernandez@datalab.es> | 2016-06-09 17:29:26 +0200 |
---|---|---|
committer | Niels de Vos <ndevos@redhat.com> | 2016-06-13 03:16:17 -0700 |
commit | 3f4755ca6dce8f7aa29b4a5b48682e04c3e7587b (patch) | |
tree | dd148e7144a06a3d288993dd52d3190c538f413f /libglusterfs | |
parent | d48865c1e2240aed9b46632f373a0a090b6f0931 (diff) |
cluster/ec: Fix invalid __fd_unref() call
__fd_unref() doesn't do any cleanup, so it cannot be called to release
fd references, specially if it's the last reference.
The code has been changed to avoid a call to this function.
In the previous version we always tried to keep the newest fd in the
ec_lock_t structure. However this is not necessary. We'll always keep
one reference to an open file on the same inode. It's irrelevant if
the reference is new or old.
The function __fd_unref() has also been removed from fd.h to avoid being
used in the future since it's useless as it's defined now.
Backport of http://review.gluster.org/14683
Change-Id: Ia728777fc8e464758d5ea4d3bf020f0603919039
BUG: 1344421
Signed-off-by: Xavier Hernandez <xhernandez@datalab.es>
Reviewed-on: http://review.gluster.org/14684
CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
Smoke: Gluster Build System <jenkins@build.gluster.com>
NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
Reviewed-by: Ashish Pandey <aspandey@redhat.com>
Reviewed-by: Niels de Vos <ndevos@redhat.com>
Diffstat (limited to 'libglusterfs')
-rw-r--r-- | libglusterfs/src/fd.h | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/libglusterfs/src/fd.h b/libglusterfs/src/fd.h index a6dc48a0b0e..53ec93dec6c 100644 --- a/libglusterfs/src/fd.h +++ b/libglusterfs/src/fd.h @@ -116,9 +116,6 @@ fd_t * fd_ref (fd_t *fd); -fd_t * -__fd_unref (fd_t *fd); - void fd_unref (fd_t *fd); |