From: Menglong Dong <dong.mengl...@zte.com.cn> In the first patch, I use BIT() for MSG_* to make the code tidier.
Directly use BIT() for MSG_* will be a bit problematic, because 'msg_flags' is defined as 'int' somewhere, and MSG_CMSG_COMPAT will make it become negative, just like what Guenter Roeck reported here: https://lore.kernel.org/netdev/20210317013758.ga134...@roeck-us.net So in the second patch, I change MSG_CMSG_COMPAT to BIT(21), as David Laight suggested. MSG_CMSG_COMPAT is an internal value, which is't used in userspace, so this change works. In version 2, some comment is added in patch 2 to stop people from using BIT(31) for MSG_* in the feature, as Herbert Xu suggested. Menglong Dong (2): net: socket: use BIT() for MSG_* net: socket: change MSG_CMSG_COMPAT to BIT(21) include/linux/socket.h | 75 +++++++++++++++++++++++------------------- 1 file changed, 41 insertions(+), 34 deletions(-) -- 2.31.0