[PATCH] fs: inode: return proper errno on bmap()

From: Leesoo Ahn
Date: Sat Jul 15 2023 - 02:03:20 EST


It better returns -EOPNOTSUPP instead of -EINVAL which has meaning of
the argument is an inappropriate value. It doesn't make sense in the
case of that a file system doesn't support bmap operation.

-EINVAL could make confusion in the userspace perspective.

Signed-off-by: Leesoo Ahn <lsahn@xxxxxxxxxxxxxx>
---
fs/inode.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/inode.c b/fs/inode.c
index 8fefb69e1f84..c13cac26f08d 100644
--- a/fs/inode.c
+++ b/fs/inode.c
@@ -1837,7 +1837,7 @@ EXPORT_SYMBOL(iput);
int bmap(struct inode *inode, sector_t *block)
{
if (!inode->i_mapping->a_ops->bmap)
- return -EINVAL;
+ return -EOPNOTSUPP;

*block = inode->i_mapping->a_ops->bmap(inode->i_mapping, *block);
return 0;
--
2.34.1