]> git.ipfire.org Git - thirdparty/linux.git/commit
get rid of INT_LIMIT, use type_max() instead
authorZhen Lei <thunder.leizhen@huawei.com>
Fri, 25 Nov 2022 09:13:58 +0000 (17:13 +0800)
committerAl Viro <viro@zeniv.linux.org.uk>
Fri, 25 Nov 2022 20:43:39 +0000 (15:43 -0500)
commitea258f159da14a710f9cb88656558538b5ba5b76
tree581f2519c1d3d0e184474076f5d7c1fa61a59a47
parentcf260db405b1a159e9076220b40f5f02ac480525
get rid of INT_LIMIT, use type_max() instead

INT_LIMIT() tries to do what type_max() does, except that type_max()
doesn't rely upon undefined behaviour[*], might as well use type_max()
instead.

[*] if T is an N-bit signed integer type, the maximal value in T is
pow(2, N - 1) - 1, all right, but naive expression for that value
ends up with a couple of wraparounds and as usual for wraparounds
in signed types, that's an undefined behaviour.  type_max() takes
care to avoid those...

Caught-by: UBSAN
Suggested-by: Eric Biggers <ebiggers@kernel.org>
Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
Reviewed-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
include/linux/fs.h