Re: [PATCH net-next][resend v1 1/1] netlink: Don't use int as bool in netlink_update_socket_mc()

From: Leon Romanovsky
Date: Tue Jul 11 2023 - 02:33:58 EST


On Mon, Jul 10, 2023 at 01:06:24PM +0300, Andy Shevchenko wrote:
> The bit operations take boolean parameter and return also boolean
> (in test_bit()-like cases). Don't threat booleans as integers when
> it's not needed.
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> ---
> net/netlink/af_netlink.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c
> index 383631873748..d81e7a43944c 100644
> --- a/net/netlink/af_netlink.c
> +++ b/net/netlink/af_netlink.c
> @@ -1623,9 +1623,10 @@ EXPORT_SYMBOL(netlink_set_err);
> /* must be called with netlink table grabbed */
> static void netlink_update_socket_mc(struct netlink_sock *nlk,
> unsigned int group,
> - int is_new)
> + bool new)
> {
> - int old, new = !!is_new, subscriptions;
> + int subscriptions;
> + bool old;
>
> old = test_bit(group - 1, nlk->groups);
> subscriptions = nlk->subscriptions - old + new;

So what is the outcome of "int - bool + bool" in the line above?

> @@ -2152,7 +2153,7 @@ void __netlink_clear_multicast_users(struct sock *ksk, unsigned int group)
> struct netlink_table *tbl = &nl_table[ksk->sk_protocol];
>
> sk_for_each_bound(sk, &tbl->mc_list)
> - netlink_update_socket_mc(nlk_sk(sk), group, 0);
> + netlink_update_socket_mc(nlk_sk(sk), group, false);
> }
>
> struct nlmsghdr *
> --
> 2.40.0.1.gaa8946217a0b
>
>