aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/fs/netfs
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@linaro.org>2024-01-10 21:54:42 +0300
committerDavid Howells <dhowells@redhat.com>2024-01-22 21:58:35 +0000
commit843609df0be792991b3c4a720d6be4828d48dec4 (patch)
tree6e77a0eeda03a8e86741236e4f28033578adef46 /fs/netfs
parentnetfs, fscache: Prevent Oops in fscache_put_cache() (diff)
downloadwireguard-linux-843609df0be792991b3c4a720d6be4828d48dec4.tar.xz
wireguard-linux-843609df0be792991b3c4a720d6be4828d48dec4.zip
netfs: Fix a NULL vs IS_ERR() check in netfs_perform_write()
The netfs_grab_folio_for_write() function doesn't return NULL, it returns error pointers. Update the check accordingly. Fixes: c38f4e96e605 ("netfs: Provide func to copy data to pagecache for buffered write") Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org> Signed-off-by: David Howells <dhowells@redhat.com> Link: https://lore.kernel.org/r/29fb1310-8e2d-47ba-b68d-40354eb7b896@moroto.mountain/
Diffstat (limited to 'fs/netfs')
-rw-r--r--fs/netfs/buffered_write.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/netfs/buffered_write.c b/fs/netfs/buffered_write.c
index e7f9ba6fb16b..a3059b3168fd 100644
--- a/fs/netfs/buffered_write.c
+++ b/fs/netfs/buffered_write.c
@@ -221,10 +221,11 @@ ssize_t netfs_perform_write(struct kiocb *iocb, struct iov_iter *iter,
if (unlikely(fault_in_iov_iter_readable(iter, part) == part))
break;
- ret = -ENOMEM;
folio = netfs_grab_folio_for_write(mapping, pos, part);
- if (!folio)
+ if (IS_ERR(folio)) {
+ ret = PTR_ERR(folio);
break;
+ }
flen = folio_size(folio);
offset = pos & (flen - 1);