]> git.baikalelectronics.ru Git - kernel.git/commit
xfs: xfs_rtword_t should be unsigned, not signed
authorDarrick J. Wong <darrick.wong@oracle.com>
Thu, 31 May 2018 16:07:20 +0000 (09:07 -0700)
committerDarrick J. Wong <darrick.wong@oracle.com>
Fri, 1 Jun 2018 16:00:16 +0000 (09:00 -0700)
commit9336e3655ee65c0440ae36b78c061559d64493cc
treebd28b6896b62217f3bb3de9434bb14bf27977d6a
parentfdd5d681aae2d2052274d060d99f56646b1047b7
xfs: xfs_rtword_t should be unsigned, not signed

xfs_rtword_t is used for bit manipulations in the realtime bitmap file.
Since we're performing bit shifts with this type, we don't want sign
extension and we don't want to be left shifting negative quantities
because that's undefined behavior.

This also shuts up these UBSAN warnings:
UBSAN: Undefined behaviour in fs/xfs/libxfs/xfs_rtbitmap.c:833:48
signed integer overflow:
-2147483648 - 1 cannot be represented in type 'int'

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Allison Henderson <allison.henderson@oracle.com>
Reviewed-by: Bill O'Donnell <billodo@redhat.com>
fs/xfs/libxfs/xfs_types.h