2023-06-29 13:39:17

by Andy Shevchenko

[permalink] [raw]
Subject: [PATCH v1 1/1] netlink: Don't use int as bool in netlink_update_socket_mc()

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 <[email protected]>
---
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 9c9df143a2ec..81e4b802f3f9 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;
@@ -2149,7 +2150,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



2023-06-29 15:23:43

by Simon Horman

[permalink] [raw]
Subject: Re: [PATCH v1 1/1] netlink: Don't use int as bool in netlink_update_socket_mc()

On Thu, Jun 29, 2023 at 04:31:31PM +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 <[email protected]>
> ---
> 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 9c9df143a2ec..81e4b802f3f9 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;

Hi Andy,

Doing arithmetic with boolean values doesn't seem right to me.

In any case, net-next is closed.
Please consider reposting once it re-opens, after 10th July.

--
pw-bot: deferred

2023-06-29 18:57:27

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH v1 1/1] netlink: Don't use int as bool in netlink_update_socket_mc()

On Thu, Jun 29, 2023 at 05:11:23PM +0200, Simon Horman wrote:
> On Thu, Jun 29, 2023 at 04:31:31PM +0300, Andy Shevchenko wrote:

> > - int old, new = !!is_new, subscriptions;
> > + int subscriptions;
> > + bool old;
> >
> > old = test_bit(group - 1, nlk->groups);
> > subscriptions = nlk->subscriptions - old + new;
>
> Hi Andy,
>
> Doing arithmetic with boolean values doesn't seem right to me.

In any case it does not change the status quo, the same still applies to
the existing code (that's implied in the commit message). And obfuscating
it for the sake of purity seems wrong to me. Hence this patch.

> In any case, net-next is closed.
> Please consider reposting once it re-opens, after 10th July.

Sure.

Thank you for the review!

--
With Best Regards,
Andy Shevchenko



2023-06-29 19:51:08

by Simon Horman

[permalink] [raw]
Subject: Re: [PATCH v1 1/1] netlink: Don't use int as bool in netlink_update_socket_mc()

On Thu, Jun 29, 2023 at 09:55:50PM +0300, Andy Shevchenko wrote:
> On Thu, Jun 29, 2023 at 05:11:23PM +0200, Simon Horman wrote:
> > On Thu, Jun 29, 2023 at 04:31:31PM +0300, Andy Shevchenko wrote:
>
> > > - int old, new = !!is_new, subscriptions;
> > > + int subscriptions;
> > > + bool old;
> > >
> > > old = test_bit(group - 1, nlk->groups);
> > > subscriptions = nlk->subscriptions - old + new;
> >
> > Hi Andy,
> >
> > Doing arithmetic with boolean values doesn't seem right to me.
>
> In any case it does not change the status quo, the same still applies to
> the existing code (that's implied in the commit message). And obfuscating
> it for the sake of purity seems wrong to me. Hence this patch.

Yes, sure. That is true.

> > In any case, net-next is closed.
> > Please consider reposting once it re-opens, after 10th July.
>
> Sure.
>
> Thank you for the review!
>
> --
> With Best Regards,
> Andy Shevchenko
>
>
>