[PATCH] hostfs: Fix the NULL vs IS_ERR() bug for __filemap_get_folio()

Peng Zhang posted 1 patch 2 weeks, 6 days ago
fs/hostfs/hostfs_kern.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[PATCH] hostfs: Fix the NULL vs IS_ERR() bug for __filemap_get_folio()
Posted by Peng Zhang 2 weeks, 6 days ago
From: ZhangPeng <zhangpeng362@huawei.com>

The __filemap_get_folio() function returns error pointers.
It never returns NULL. So use IS_ERR() to check it.

Fixes: 1da86618bdce ("fs: Convert aops->write_begin to take a folio")
Signed-off-by: ZhangPeng <zhangpeng362@huawei.com>
---
 fs/hostfs/hostfs_kern.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/hostfs/hostfs_kern.c b/fs/hostfs/hostfs_kern.c
index 6d1cf2436ead..084f6ed2dd7a 100644
--- a/fs/hostfs/hostfs_kern.c
+++ b/fs/hostfs/hostfs_kern.c
@@ -471,8 +471,8 @@ static int hostfs_write_begin(struct file *file, struct address_space *mapping,
 
 	*foliop = __filemap_get_folio(mapping, index, FGP_WRITEBEGIN,
 			mapping_gfp_mask(mapping));
-	if (!*foliop)
-		return -ENOMEM;
+	if (IS_ERR(*foliop))
+		return PTR_ERR(*foliop);
 	return 0;
 }
 
-- 
2.25.1
Re: [PATCH] hostfs: Fix the NULL vs IS_ERR() bug for __filemap_get_folio()
Posted by Johannes Berg 2 weeks, 2 days ago
On Mon, 2024-11-04 at 20:34 +0800, Peng Zhang wrote:
> From: ZhangPeng <zhangpeng362@huawei.com>
> 
> The __filemap_get_folio() function returns error pointers.
> It never returns NULL. So use IS_ERR() to check it.
> 
> Fixes: 1da86618bdce ("fs: Convert aops->write_begin to take a folio")
> Signed-off-by: ZhangPeng <zhangpeng362@huawei.com>

Not sure it's critical, but for um I wasn't planning to send a pull
request for 6.12-rc (and I suspect Richard also wasn't, as there are no
other fixes). Also, the original commit went through another tree.

Christian what do you think? Do you want to pick it up? Or should we
pick it up via um, but then likely only for 6.13?

If you could pick it up:
Acked-by: Johannes Berg <johannes@sipsolutions.net>

johannes