From: Marc Dionne Date: Mon, 24 Oct 2011 02:45:21 +0000 (-0400) Subject: dir: add missing return in DRead X-Git-Tag: upstream/1.8.0_pre1^2~3150 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=7829e7152361c38a22a7ba4c11e4f614e4392d60;p=packages%2Fo%2Fopenafs.git dir: add missing return in DRead A missing return in the kernel version of DRead causes the code to think that no entry exists for a dir and proceed to allocate a new one, if the entry is the third one in the hash chain. If the existing entry is dirty, its contents are never written back, and the pending changes to the directory are not seen by the client. Change-Id: I8b0f86b04d6ac8f75720933308a0983810974ff4 Reviewed-on: http://gerrit.openafs.org/5666 Reviewed-by: Simon Wilkinson Tested-by: BuildBot Reviewed-by: Derrick Brashear --- diff --git a/src/afs/afs_buffer.c b/src/afs/afs_buffer.c index e9585a725..52243d6b0 100644 --- a/src/afs/afs_buffer.c +++ b/src/afs/afs_buffer.c @@ -206,6 +206,7 @@ DRead(struct dcache *adc, int page, struct DirBuffer *entry) ReleaseWriteLock(&tb->lock); entry->buffer = tb; entry->data = tb->data; + return 0; } } else break;