lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260211154043158VVS6WEc8yD82HcqScmYUn@zte.com.cn>
Date: Wed, 11 Feb 2026 15:40:43 +0800 (CST)
From: <fan.yu9@....com.cn>
To: <richard@....at>, <chengzhihao1@...wei.com>
Cc: <cui.jinpeng2@....com.cn>, <zhang.yue5@....com.cn>, <xu.xin16@....com.cn>,
        <yang.tao172@....com.cn>, <yang.yang29@....com.cn>,
        <hu.shengming@....com.cn>, <linux-mtd@...ts.infradead.org>,
        <linux-kernel@...r.kernel.org>
Subject: [PATCH] ubifs: prevent corrupted data write via error_remove_folio

From: Jinpeng Cui <cui.jinpeng2@....com.cn>

When a memory corruption event triggers memory_failure, ext4 releases references to the affected dirty pages,
ensuring that no corrupted data is written to disk. However, ubifs currently lacks the error_remove_folio capability
and therefore cannot release references to faulty private memory. As a result, corrupted data may eventually be
written to flash storage.

Add generic_error_remove_folio support to ubifs, preventing corrupted memory data from being persisted to flash.

Signed-off-by: Jinpeng Cui <cui.jinpeng2@....com.cn>
Signed-off-by: Fan Yu <fan.yu9@....com.cn>
Cc: Shengming Hu <hu.shengming@....com.cn>
---
 fs/ubifs/file.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/fs/ubifs/file.c b/fs/ubifs/file.c
index 3dc3ca1..34445b7 100644
--- a/fs/ubifs/file.c
+++ b/fs/ubifs/file.c
@@ -1631,6 +1631,7 @@ static int ubifs_symlink_getattr(struct mnt_idmap *idmap,
    .dirty_folio    = ubifs_dirty_folio,
    .migrate_folio  = filemap_migrate_folio,
    .release_folio  = ubifs_release_folio,
+   .error_remove_folio = generic_error_remove_folio,
 };

 const struct inode_operations ubifs_file_inode_operations = {
--
1.8.3.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ