Unverified Commit 314cc4a8 authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!10891 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/QEB6ELIHQCU44GSJVO64PTDUKNWBX66U/ 
*** 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/10891

 

Reviewed-by: default avatarLiu YongQiang <liuyongqiang13@huawei.com>
Signed-off-by: default avatarZhang Changzhong <zhangchangzhong@huawei.com>
parents 146a244b f102ad83
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -121,9 +121,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))))

#define NILFS_PRIVATE_INODE(ino) ({					\
	ino_t __ino = (ino);						\
+6 −0
Original line number Diff line number Diff line
@@ -403,6 +403,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_msg(nilfs->ns_sb, KERN_ERR,
			  "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
@@ -181,7 +181,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> */