[PATCH v3 1/5] zonefs: pass GFP_KERNEL to blkdev_zone_mgmt() call

From: Johannes Thumshirn
Date: Mon Jan 29 2024 - 02:53:44 EST


Pass GFP_KERNEL instead of GFP_NOFS to the blkdev_zone_mgmt() call in
zonefs_zone_mgmt().

As as zonefs_zone_mgmt() and zonefs_inode_zone_mgmt() are never called
from a place that can recurse back into the filesystem on memory reclaim,
it is save to call blkdev_zone_mgmt() with GFP_KERNEL.

Link: https://lore.kernel.org/all/ZZcgXI46AinlcBDP@xxxxxxxxxxxxxxxxxxxx/
Signed-off-by: Johannes Thumshirn <johannes.thumshirn@xxxxxxx>
---
fs/zonefs/super.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/zonefs/super.c b/fs/zonefs/super.c
index 93971742613a..63fbac018c04 100644
--- a/fs/zonefs/super.c
+++ b/fs/zonefs/super.c
@@ -113,7 +113,7 @@ static int zonefs_zone_mgmt(struct super_block *sb,

trace_zonefs_zone_mgmt(sb, z, op);
ret = blkdev_zone_mgmt(sb->s_bdev, op, z->z_sector,
- z->z_size >> SECTOR_SHIFT, GFP_NOFS);
+ z->z_size >> SECTOR_SHIFT, GFP_KERNEL);
if (ret) {
zonefs_err(sb,
"Zone management operation %s at %llu failed %d\n",

--
2.43.0