* [PATCH] fat: Fix potential shift wrap with FITRIM ioctl on FAT
[not found] <C8ECE1B7A767434691FEEFA3A01765D72AF77119@MX203CL03.corp.emc.com>
@ 2018-07-13 6:47 ` OGAWA Hirofumi
0 siblings, 0 replies; only message in thread
From: OGAWA Hirofumi @ 2018-07-13 6:47 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel, Wang, Matt, dan.carpenter@oracle.com
This patch is the fix of fat-add-fitrim-ioctl-for-fat-file-system.patch.
Maybe better to merge with it (if it is easy).
Anyway, please apply this with above patch.
--------
From: Wentao Wang <witallwang@gmail.com>
If we keep "trimmed" as an u32, there will be a potential shift wrap.
It would be a problem on a larger than 4GB partition with
FAT32. Though most tools who call this ioctl would ignore this value,
it would be great to fix it.
Signed-off-by: Wentao Wang <witallwang@gmail.com>
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
---
fs/fat/fatent.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff -puN fs/fat/fatent.c~fat-fitrim-fix fs/fat/fatent.c
--- linux/fs/fat/fatent.c~fat-fitrim-fix 2018-07-13 15:39:14.417110998 +0900
+++ linux-hirofumi/fs/fat/fatent.c 2018-07-13 15:39:14.418110996 +0900
@@ -705,8 +705,8 @@ int fat_trim_fs(struct inode *inode, str
struct msdos_sb_info *sbi = MSDOS_SB(sb);
const struct fatent_operations *ops = sbi->fatent_ops;
struct fat_entry fatent;
- u64 ent_start, ent_end, minlen;
- u32 free = 0, trimmed = 0;
+ u64 ent_start, ent_end, minlen, trimmed = 0;
+ u32 free = 0;
unsigned long reada_blocks, reada_mask, cur_block = 0;
int err = 0;
_
--
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2018-07-13 6:47 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <C8ECE1B7A767434691FEEFA3A01765D72AF77119@MX203CL03.corp.emc.com>
2018-07-13 6:47 ` [PATCH] fat: Fix potential shift wrap with FITRIM ioctl on FAT OGAWA Hirofumi
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox