From: trondmy@kernel.org To: linux-nfs@vger.kernel.org Subject: [PATCH v4 13/21] NFS: nfs_do_filldir() does not return a value Date: Sat, 7 Nov 2020 09:03:17 -0500 Message-ID: <20201107140325.281678-14-trondmy@kernel.org> (raw) In-Reply-To: <20201107140325.281678-13-trondmy@kernel.org> From: Trond Myklebust <trond.myklebust@hammerspace.com> Clean up nfs_do_filldir(). Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com> --- fs/nfs/dir.c | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c index bc366bd8e8f3..48856cee10de 100644 --- a/fs/nfs/dir.c +++ b/fs/nfs/dir.c @@ -881,13 +881,11 @@ int readdir_search_pagecache(nfs_readdir_descriptor_t *desc) /* * Once we've found the start of the dirent within a page: fill 'er up... */ -static -int nfs_do_filldir(nfs_readdir_descriptor_t *desc) +static void nfs_do_filldir(struct nfs_readdir_descriptor *desc) { struct file *file = desc->file; - int i = 0; - int res = 0; - struct nfs_cache_array *array = NULL; + struct nfs_cache_array *array; + unsigned int i = 0; array = kmap(desc->page); for (i = desc->cache_entry_index; i < array->size; i++) { @@ -914,9 +912,8 @@ int nfs_do_filldir(nfs_readdir_descriptor_t *desc) desc->eof = true; kunmap(desc->page); - dfprintk(DIRCACHE, "NFS: nfs_do_filldir() filling ended @ cookie %Lu; returning = %d\n", - (unsigned long long)desc->dir_cookie, res); - return res; + dfprintk(DIRCACHE, "NFS: nfs_do_filldir() filling ended @ cookie %llu\n", + (unsigned long long)desc->dir_cookie); } /* @@ -957,7 +954,7 @@ int uncached_readdir(nfs_readdir_descriptor_t *desc) if (status < 0) goto out_release; - status = nfs_do_filldir(desc); + nfs_do_filldir(desc); out_release: nfs_readdir_clear_array(desc->page); @@ -1032,10 +1029,8 @@ static int nfs_readdir(struct file *file, struct dir_context *ctx) if (res < 0) break; - res = nfs_do_filldir(desc); + nfs_do_filldir(desc); nfs_readdir_page_unlock_and_put_cached(desc); - if (res < 0) - break; } while (!desc->eof); spin_lock(&file->f_lock); @@ -1046,8 +1041,6 @@ static int nfs_readdir(struct file *file, struct dir_context *ctx) spin_unlock(&file->f_lock); out: - if (res > 0) - res = 0; dfprintk(FILE, "NFS: readdir(%pD2) returns %d\n", file, res); return res; } -- 2.28.0
next prev parent reply index Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-11-07 14:03 [PATCH v4 00/21] Readdir enhancements trondmy 2020-11-07 14:03 ` [PATCH v4 01/21] NFS: Remove unnecessary inode locking in nfs_llseek_dir() trondmy 2020-11-07 14:03 ` [PATCH v4 02/21] NFS: Remove unnecessary inode lock in nfs_fsync_dir() trondmy 2020-11-07 14:03 ` [PATCH v4 03/21] NFS: Ensure contents of struct nfs_open_dir_context are consistent trondmy 2020-11-07 14:03 ` [PATCH v4 04/21] NFS: Clean up readdir struct nfs_cache_array trondmy 2020-11-07 14:03 ` [PATCH v4 05/21] NFS: Clean up nfs_readdir_page_filler() trondmy 2020-11-07 14:03 ` [PATCH v4 06/21] NFS: Clean up directory array handling trondmy 2020-11-07 14:03 ` [PATCH v4 07/21] NFS: Don't discard readdir results trondmy 2020-11-07 14:03 ` [PATCH v4 08/21] NFS: Remove unnecessary kmap in nfs_readdir_xdr_to_array() trondmy 2020-11-07 14:03 ` [PATCH v4 09/21] NFS: Replace kmap() with kmap_atomic() in nfs_readdir_search_array() trondmy 2020-11-07 14:03 ` [PATCH v4 10/21] NFS: Simplify struct nfs_cache_array_entry trondmy 2020-11-07 14:03 ` [PATCH v4 11/21] NFS: Support larger readdir buffers trondmy 2020-11-07 14:03 ` [PATCH v4 12/21] NFS: More readdir cleanups trondmy 2020-11-07 14:03 ` trondmy [this message] 2020-11-07 14:03 ` [PATCH v4 14/21] NFS: Reduce readdir stack usage trondmy 2020-11-07 14:03 ` [PATCH v4 15/21] NFS: Cleanup to remove nfs_readdir_descriptor_t typedef trondmy 2020-11-07 14:03 ` [PATCH v4 16/21] NFS: Allow the NFS generic code to pass in a verifier to readdir trondmy 2020-11-07 14:03 ` [PATCH v4 17/21] NFS: Handle NFS4ERR_NOT_SAME and NFSERR_BADCOOKIE from readdir calls trondmy 2020-11-07 14:03 ` [PATCH v4 18/21] NFS: Improve handling of directory verifiers trondmy 2020-11-07 14:03 ` [PATCH v4 19/21] NFS: Optimisations for monotonically increasing readdir cookies trondmy 2020-11-07 14:03 ` [PATCH v4 20/21] NFS: Reduce number of RPC calls when doing uncached readdir trondmy 2020-11-07 14:03 ` [PATCH v4 21/21] NFS: Do uncached readdir when we're seeking a cookie in an empty page cache trondmy 2020-11-09 21:41 ` Benjamin Coddington 2020-11-09 21:46 ` Trond Myklebust 2020-11-11 16:43 ` Benjamin Coddington 2020-11-11 17:34 ` Trond Myklebust 2020-11-11 19:53 ` Benjamin Coddington 2020-11-11 20:11 ` Trond Myklebust 2020-11-10 14:48 ` David Wysochanski 2020-11-10 20:55 ` Trond Myklebust 2020-11-09 20:59 ` [PATCH v4 20/21] NFS: Reduce number of RPC calls when doing uncached readdir Benjamin Coddington 2020-11-09 13:15 ` [PATCH v4 00/21] Readdir enhancements David Wysochanski
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20201107140325.281678-14-trondmy@kernel.org \ --to=trondmy@kernel.org \ --cc=linux-nfs@vger.kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Linux-NFS Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/linux-nfs/0 linux-nfs/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 linux-nfs linux-nfs/ https://lore.kernel.org/linux-nfs \ linux-nfs@vger.kernel.org public-inbox-index linux-nfs Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.kernel.vger.linux-nfs AGPL code for this site: git clone https://public-inbox.org/public-inbox.git