From: Andrew Deason Date: Mon, 29 Aug 2011 18:07:01 +0000 (-0500) Subject: ihandle: OPEN fdPs are not counted in ihP refcount X-Git-Tag: openafs-devel-1_7_1~75 X-Git-Url: https://git.openafs.org/?p=openafs.git;a=commitdiff_plain;h=0f4dfaed6b25ae4282298cc2ba4908ce9f36f043 ihandle: OPEN fdPs are not counted in ihP refcount Just add a comment explaining that an OPEN FdHandle_t does not count against the ref count for its parent IHandle_t. Recently I've seen some confusion about this when discussing ihandle internals, and this should make this abundantly clear. Change-Id: I73210e0d05869827ba99d09f504052d1a6797669 Reviewed-on: http://gerrit.openafs.org/5317 Tested-by: BuildBot Reviewed-by: Derrick Brashear --- diff --git a/src/vol/ihandle.c b/src/vol/ihandle.c index 8c0e83b..f2e928d 100644 --- a/src/vol/ihandle.c +++ b/src/vol/ihandle.c @@ -794,6 +794,10 @@ ih_fdclose(IHandle_t * ihP) || fdP->fd_status == FD_HANDLE_INUSE || fdP->fd_status == FD_HANDLE_CLOSING); if (fdP->fd_status == FD_HANDLE_OPEN) { + /* Note that FdHandle_t's do not count against the parent + * IHandle_t ref count when they are FD_HANDLE_OPEN. So, we don't + * need to dec the parent IHandle_t ref count for each one we pull + * off here. */ DLL_DELETE(fdP, ihP->ih_fdhead, ihP->ih_fdtail, fd_ihnext, fd_ihprev); DLL_DELETE(fdP, fdLruHead, fdLruTail, fd_next, fd_prev);