Daniel Gryniewicz has uploaded this change for review.

View Change

Drop dirent ref when releasing dirent

During a readdir, the dirents in a chunk take a ref on the entry they
point to, so that the entry can't be reaped until the chunk has been
processed. Make sure that, if a dirent is released while it still has a
ref, we drop the ref. Otherwise, under heavy create/delete/readdir
load, we can leak refs to entries.

Change-Id: Id759bb40f33c92867c1fda93f9449433f686d4d5
Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
---
M src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_avl.c
M src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_helpers.c
2 files changed, 28 insertions(+), 24 deletions(-)

git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/60/443260/1

To view, visit change 443260. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: ffilz/nfs-ganesha
Gerrit-Branch: next
Gerrit-Change-Id: Id759bb40f33c92867c1fda93f9449433f686d4d5
Gerrit-Change-Number: 443260
Gerrit-PatchSet: 1
Gerrit-Owner: Daniel Gryniewicz <dang@redhat.com>
Gerrit-MessageType: newchange