overflow: Add __must_check attribute to check_*() helpers
authorKees Cook <keescook@chromium.org>
Wed, 12 Aug 2020 21:47:03 +0000 (14:47 -0700)
committerKees Cook <keescook@chromium.org>
Mon, 12 Oct 2020 22:19:07 +0000 (15:19 -0700)
commit9b80e4c4ddaca3501177ed41e49d0928ba2122a8
treed8cc43471bb6c5eb4e5d60545f45b0a87705115f
parent9123e3a74ec7b934a4a099e98af6a61c2f80bbf5
overflow: Add __must_check attribute to check_*() helpers

Since the destination variable of the check_*_overflow() helpers will
contain a wrapped value on failure, it would be best to make sure callers
really did check the return result of the helper. Adjust the macros to use
a bool-wrapping static inline that is marked with __must_check. This means
the macros can continue to have their type-agnostic behavior while gaining
the function attribute (that cannot be applied directly to macros).

Suggested-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
Link: https://lore.kernel.org/lkml/202008151007.EF679DF@keescook/
Signed-off-by: Kees Cook <keescook@chromium.org>
include/linux/overflow.h