[PATCH] ubifs: Fix an error code in ubifs_jnl_write_inode()

Yang Li yang.lee at linux.alibaba.com
Fri Jun 4 03:11:54 PDT 2021


When the code executes if (ui->xattr_cnt > ubifs_xattr_max_cnt(c)),
the value of err is 0. However, we can see from the ubifs_err log
that the value of err should be -EPERM.

Clean up smatch warning:
fs/ubifs/journal.c:886 ubifs_jnl_write_inode() warn: missing error code
'err'.

Reported-by: Abaci Robot <abaci at linux.alibaba.com>
Fixes: 9ca2d7326444 ("ubifs: Limit number of xattrs per inode")
Signed-off-by: Yang Li <yang.lee at linux.alibaba.com>
---
 fs/ubifs/journal.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/fs/ubifs/journal.c b/fs/ubifs/journal.c
index 2857e64..2307173 100644
--- a/fs/ubifs/journal.c
+++ b/fs/ubifs/journal.c
@@ -882,6 +882,7 @@ int ubifs_jnl_write_inode(struct ubifs_info *c, const struct inode *inode)
 		struct ubifs_dent_node *xent, *pxent = NULL;
 
 		if (ui->xattr_cnt > ubifs_xattr_max_cnt(c)) {
+			err = -EPERM;
 			ubifs_err(c, "Cannot delete inode, it has too much xattrs!");
 			goto out_release;
 		}
-- 
1.8.3.1




More information about the linux-mtd mailing list