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 PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Thu, 23 Dec 2021 11:23:37 +0800 From: Xin Yin <yinxin.x@...edance.com> To: harshadshirwadkar@...il.com, tytso@....edu, adilger.kernel@...ger.ca Cc: linux-ext4@...r.kernel.org, linux-kernel@...r.kernel.org, Xin Yin <yinxin.x@...edance.com> Subject: [PATCH 2/2] ext4: fast commit may miss tracking unwritten range during ftruncate If use FALLOC_FL_KEEP_SIZE to alloc unwritten range at bottom, the inode->i_size will not include the unwritten range. When call ftruncate with fast commit enabled, it will miss to track the unwritten range. Change to trace the full range during ftruncate. Signed-off-by: Xin Yin <yinxin.x@...edance.com> --- fs/ext4/inode.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index 82f555d26980..1d2ba63874ad 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c @@ -5423,8 +5423,7 @@ int ext4_setattr(struct user_namespace *mnt_userns, struct dentry *dentry, ext4_fc_track_range(handle, inode, (attr->ia_size > 0 ? attr->ia_size - 1 : 0) >> inode->i_sb->s_blocksize_bits, - (oldsize > 0 ? oldsize - 1 : 0) >> - inode->i_sb->s_blocksize_bits); + EXT_MAX_BLOCKS - 1); else ext4_fc_track_range( handle, inode, -- 2.20.1
Powered by blists - more mailing lists