aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDing Xiang <dingxiang@cmss.chinamobile.com>2022-05-30 18:00:47 +0800
committerTheodore Ts'o <tytso@mit.edu>2022-06-18 19:35:57 -0400
commitbc75a6eb856cb1507fa907bf6c1eda91b3fef52f (patch)
tree46c0ca94cb895472874b379acd40d45e506f1c3a
parentext4: correct the judgment of BUG in ext4_mb_normalize_request (diff)
downloadlinux-dev-bc75a6eb856cb1507fa907bf6c1eda91b3fef52f.tar.xz
linux-dev-bc75a6eb856cb1507fa907bf6c1eda91b3fef52f.zip
ext4: make variable "count" signed
Since dx_make_map() may return -EFSCORRUPTED now, so change "count" to be a signed integer so we can correctly check for an error code returned by dx_make_map(). Fixes: 46c116b920eb ("ext4: verify dir block before splitting it") Cc: stable@kernel.org Signed-off-by: Ding Xiang <dingxiang@cmss.chinamobile.com> Link: https://lore.kernel.org/r/20220530100047.537598-1-dingxiang@cmss.chinamobile.com Signed-off-by: Theodore Ts'o <tytso@mit.edu>
-rw-r--r--fs/ext4/namei.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c
index 47d0ca4c795b..db4ba99d1ceb 100644
--- a/fs/ext4/namei.c
+++ b/fs/ext4/namei.c
@@ -1929,7 +1929,8 @@ static struct ext4_dir_entry_2 *do_split(handle_t *handle, struct inode *dir,
struct dx_hash_info *hinfo)
{
unsigned blocksize = dir->i_sb->s_blocksize;
- unsigned count, continued;
+ unsigned continued;
+ int count;
struct buffer_head *bh2;
ext4_lblk_t newblock;
u32 hash2;