Revert "fs: Use CHECK_DATA_CORRUPTION() when kernel bugs are detected"
Zheng Zengkai (1): Revert "fs: Use CHECK_DATA_CORRUPTION() when kernel bugs are detected"
fs/open.c | 5 ++--- fs/super.c | 21 ++++----------------- include/linux/poison.h | 3 --- 3 files changed, 6 insertions(+), 23 deletions(-)
反馈: 您发送到kernel@openeuler.org的补丁/补丁集,已成功转换为PR! PR链接地址: https://gitee.com/openeuler/kernel/pulls/9508 邮件列表地址:https://mailweb.openeuler.org/hyperkitty/list/kernel@openeuler.org/message/A...
FeedBack: The patch(es) which you have sent to kernel@openeuler.org mailing list has been converted to a pull request successfully! Pull request link: https://gitee.com/openeuler/kernel/pulls/9508 Mailing list address: https://mailweb.openeuler.org/hyperkitty/list/kernel@openeuler.org/message/A...
hulk inclusion category: performance bugzilla: https://gitee.com/openeuler/kernel/issues/IA5PIS CVE: NA
--------------------------------
This reverts commit 598f4716a67b367abeb26594ede01e3aa9113107.
Signed-off-by: Zheng Zengkai zhengzengkai@huawei.com --- fs/open.c | 5 ++--- fs/super.c | 21 ++++----------------- include/linux/poison.h | 3 --- 3 files changed, 6 insertions(+), 23 deletions(-)
diff --git a/fs/open.c b/fs/open.c index 926fd0598935..8092178ceab0 100644 --- a/fs/open.c +++ b/fs/open.c @@ -1285,9 +1285,8 @@ int filp_close(struct file *filp, fl_owner_t id) { int retval = 0;
- if (CHECK_DATA_CORRUPTION(file_count(filp) == 0, - "VFS: Close: file count is 0 (f_op=%ps)", - filp->f_op)) { + if (!file_count(filp)) { + printk(KERN_ERR "VFS: Close: file count is 0\n"); return 0; }
diff --git a/fs/super.c b/fs/super.c index db46a20da0c8..db6345634f8b 100644 --- a/fs/super.c +++ b/fs/super.c @@ -465,23 +465,10 @@ void generic_shutdown_super(struct super_block *sb) if (sop->put_super) sop->put_super(sb);
- if (CHECK_DATA_CORRUPTION(!list_empty(&sb->s_inodes), - "VFS: Busy inodes after unmount of %s (%s)", - sb->s_id, sb->s_type->name)) { - /* - * Adding a proper bailout path here would be hard, but - * we can at least make it more likely that a later - * iput_final() or such crashes cleanly. - */ - struct inode *inode; - - spin_lock(&sb->s_inode_list_lock); - list_for_each_entry(inode, &sb->s_inodes, i_sb_list) { - inode->i_op = VFS_PTR_POISON; - inode->i_sb = VFS_PTR_POISON; - inode->i_mapping = VFS_PTR_POISON; - } - spin_unlock(&sb->s_inode_list_lock); + if (!list_empty(&sb->s_inodes)) { + printk("VFS: Busy inodes after unmount of %s. " + "Self-destruct in 5 seconds. Have a nice day...\n", + sb->s_id); } } spin_lock(&sb_lock); diff --git a/include/linux/poison.h b/include/linux/poison.h index a33190e56035..028133fb1405 100644 --- a/include/linux/poison.h +++ b/include/linux/poison.h @@ -85,7 +85,4 @@ /********** net/core/page_pool.c **********/ #define PP_SIGNATURE (0x40 + POISON_POINTER_DELTA)
-/********** VFS **********/ -#define VFS_PTR_POISON ((void *)(0xF5 + POISON_POINTER_DELTA)) - #endif