From e218417b17670f03f0c4f54d7fd747bbec9c395c Mon Sep 17 00:00:00 2001 From: Linus Torvalds Date: Wed, 25 May 2022 09:02:19 -0700 Subject: [PATCH] linux/types.h: reinstate "__bitwise__" macro for user space use Commit dcde58fe2922 ("linux/types.h: remove unnecessary __bitwise__") was right that there are no users of __bitwise__ in the kernel, but it turns out there are user space users of it that do expect it. It is, after all, in the uapi directory, so user space usage is to be expected. Instead of reverting the commit completely, let's just clarify the situation so that it doesn't happen again, and have some in-code explanations for why that "__bitwise__" still exists. Reported-by: Jiri Slaby Cc: Bjorn Helgaas Link: https://lore.kernel.org/all/b5c0a68d-8387-4909-beea-f70ab9e6e3d5@kernel.org/ Signed-off-by: Linus Torvalds --- include/uapi/linux/types.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/include/uapi/linux/types.h b/include/uapi/linux/types.h index c4dc597f3dcf4..308433be33c26 100644 --- a/include/uapi/linux/types.h +++ b/include/uapi/linux/types.h @@ -26,6 +26,9 @@ #define __bitwise #endif +/* The kernel doesn't use this legacy form, but user space does */ +#define __bitwise__ __bitwise + typedef __u16 __bitwise __le16; typedef __u16 __bitwise __be16; typedef __u32 __bitwise __le32; -- 2.39.5