nfs: fix another case of NULL/IS_ERR confusion wrt folio pointers
authorLinus Torvalds <torvalds@linux-foundation.org>
Tue, 9 May 2023 17:22:13 +0000 (10:22 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 9 May 2023 17:22:13 +0000 (10:22 -0700)
Dan has been improving on the smatch error pointer checks, and pointed
at another case where the __filemap_get_folio() conversion to error
pointers had been overlooked.  This time because it was hidden behind
the filemap_grab_folio() helper function that is a wrapper around it.

Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Cc: Anna Schumaker <anna@kernel.org>
Cc: Matthew Wilcox <willy@infradead.org>
Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/nfs/dir.c

index bacad0c..e63c1d4 100644 (file)
@@ -402,7 +402,7 @@ static struct folio *nfs_readdir_folio_get_locked(struct address_space *mapping,
        struct folio *folio;
 
        folio = filemap_grab_folio(mapping, index);
-       if (!folio)
+       if (IS_ERR(folio))
                return NULL;
        nfs_readdir_folio_init_and_validate(folio, cookie, change_attr);
        return folio;