diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2021-11-01 11:45:04 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2021-11-01 11:45:04 -0700 |
commit | 9c6e8d52a7299b1596334ca49171f2efedc15ef6 (patch) | |
tree | e808a6dd42ba7a275dce05f2756f6add0de7885c /fs | |
parent | 67a135b80eb75b62d92a809b0246e70524f69b89 (diff) | |
parent | 0c336d6e33f4bedc443404c89f43c91c8bd9ee11 (diff) |
Merge tag 'exfat-for-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/linkinjeon/exfat
Pull exfat fix from Namjae Jeon:
"Fix ->i_blocks truncation issue caused by wrong 32bit mask"
* tag 'exfat-for-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/linkinjeon/exfat:
exfat: fix incorrect loading of i_blocks for large files
Diffstat (limited to 'fs')
-rw-r--r-- | fs/exfat/inode.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/exfat/inode.c b/fs/exfat/inode.c index ca37d4344361..1c7aa1ea4724 100644 --- a/fs/exfat/inode.c +++ b/fs/exfat/inode.c @@ -604,7 +604,7 @@ static int exfat_fill_inode(struct inode *inode, struct exfat_dir_entry *info) exfat_save_attr(inode, info->attr); inode->i_blocks = ((i_size_read(inode) + (sbi->cluster_size - 1)) & - ~(sbi->cluster_size - 1)) >> inode->i_blkbits; + ~((loff_t)sbi->cluster_size - 1)) >> inode->i_blkbits; inode->i_mtime = info->mtime; inode->i_ctime = info->mtime; ei->i_crtime = info->crtime; |