Unverified Commit 44e69901 authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!14838 v2 fs: Filter specific inodes to prevent UAF issues

parents 6aa478cf b45a4374
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -120,6 +120,7 @@ static void dump_dirtypages_sb(struct super_block *sb, struct seq_file *m)

	spin_lock(&sb->s_inode_list_lock);
	list_for_each_entry(inode, &sb->s_inodes, i_sb_list) {
		nr_dirtys = 0;
		spin_lock(&inode->i_lock);

		/*
@@ -138,6 +139,7 @@ static void dump_dirtypages_sb(struct super_block *sb, struct seq_file *m)

		cond_resched();

		if (!S_ISBLK(inode->i_mode) || sb_is_blkdev_sb(sb))
			nr_dirtys = dump_dirtypages_inode(inode);
		if (!nr_dirtys || nr_dirtys < limit)
			goto skip;
+2 −1
Original line number Diff line number Diff line
@@ -35,6 +35,7 @@ static void drop_pagecache_sb(struct super_block *sb, void *unused)
		spin_unlock(&inode->i_lock);
		spin_unlock(&sb->s_inode_list_lock);

		if (!S_ISBLK(inode->i_mode) || sb_is_blkdev_sb(sb))
			invalidate_mapping_pages(inode->i_mapping, 0, -1);
		iput(toput_inode);
		toput_inode = inode;