[patch] xfs: bug widening binary "not" operation
Dan Carpenter
dan.carpenter at oracle.com
Thu May 16 02:53:30 CDT 2013
The problem here is:
ioffset = offset & ~(rounding - 1);
"offset" and "ioffset" are type xfs_off_t (__s64) and "rounding" is
unsigned int. The "offset & ~(rounding - 1)" clears the high 32 bits
and which is unintentional.
This is a static checker fix so I'm not sure how much difference this
makes in real life.
Signed-off-by: Dan Carpenter <dan.carpenter at oracle.com>
diff --git a/fs/xfs/xfs_vnodeops.c b/fs/xfs/xfs_vnodeops.c
index 1501f4f..9f557c6 100644
--- a/fs/xfs/xfs_vnodeops.c
+++ b/fs/xfs/xfs_vnodeops.c
@@ -1453,7 +1453,7 @@ xfs_free_file_space(
xfs_mount_t *mp;
int nimap;
uint resblks;
- uint rounding;
+ xfs_off_t rounding;
int rt;
xfs_fileoff_t startoffset_fsb;
xfs_trans_t *tp;
More information about the xfs
mailing list