Unverified Commit 525a05ab authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!10557 CVE-2024-42105

Merge Pull Request from: @ci-robot 
 
PR sync from: Chen Ridong <chenridong@huawei.com>
https://mailweb.openeuler.org/hyperkitty/list/kernel@openeuler.org/message/NWDX7S5FPXNHASHVVYBFVHYNM3FL23EX/ 
*** BLURB HERE ***

Ryusuke Konishi (1):
  nilfs2: fix inode number range checks


-- 
2.34.1
 
https://gitee.com/src-openeuler/kernel/issues/IAGSG3 
 
Link:https://gitee.com/openeuler/kernel/pulls/10557

 

Reviewed-by: default avatarYang Yingliang <yangyingliang@huawei.com>
Signed-off-by: default avatarYang Yingliang <yangyingliang@huawei.com>
parents 7dfbf299 eb109da0
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -116,9 +116,10 @@ enum {
#define NILFS_FIRST_INO(sb) (((struct the_nilfs *)sb->s_fs_info)->ns_first_ino)

#define NILFS_MDT_INODE(sb, ino) \
	((ino) < NILFS_FIRST_INO(sb) && (NILFS_MDT_INO_BITS & BIT(ino)))
	((ino) < NILFS_USER_INO && (NILFS_MDT_INO_BITS & BIT(ino)))
#define NILFS_VALID_INODE(sb, ino) \
	((ino) >= NILFS_FIRST_INO(sb) || (NILFS_SYS_INO_BITS & BIT(ino)))
	((ino) >= NILFS_FIRST_INO(sb) ||				\
	 ((ino) < NILFS_USER_INO && (NILFS_SYS_INO_BITS & BIT(ino))))

/**
 * struct nilfs_transaction_info: context information for synchronization
+6 −0
Original line number Diff line number Diff line
@@ -452,6 +452,12 @@ static int nilfs_store_disk_layout(struct the_nilfs *nilfs,
	}

	nilfs->ns_first_ino = le32_to_cpu(sbp->s_first_ino);
	if (nilfs->ns_first_ino < NILFS_USER_INO) {
		nilfs_err(nilfs->ns_sb,
			  "too small lower limit for non-reserved inode numbers: %u",
			  nilfs->ns_first_ino);
		return -EINVAL;
	}

	nilfs->ns_blocks_per_segment = le32_to_cpu(sbp->s_blocks_per_segment);
	if (nilfs->ns_blocks_per_segment < NILFS_SEG_MIN_BLOCKS) {
+1 −1
Original line number Diff line number Diff line
@@ -182,7 +182,7 @@ struct the_nilfs {
	unsigned long		ns_nrsvsegs;
	unsigned long		ns_first_data_block;
	int			ns_inode_size;
	int			ns_first_ino;
	unsigned int		ns_first_ino;
	u32			ns_crc_seed;

	/* /sys/fs/<nilfs>/<device> */