diff mbox series

wifi:mac80211: Replace the ternary conditional operator with max()

Message ID 20230626104829.1896-1-youkangren@vivo.com
State Superseded
Headers show
Series wifi:mac80211: Replace the ternary conditional operator with max() | expand

Commit Message

You Kangren June 26, 2023, 10:48 a.m. UTC
Replace the ternary conditional operator with max() to make the code clean

Signed-off-by: You Kangren <youkangren@vivo.com>
---
 net/mac80211/tdls.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Ping-Ke Shih June 28, 2023, 1:48 a.m. UTC | #1
> -----Original Message-----
> From: You Kangren <youkangren@vivo.com>
> Sent: Monday, June 26, 2023 6:48 PM
> To: Johannes Berg <johannes@sipsolutions.net>; David S. Miller <davem@davemloft.net>; Eric Dumazet
> <edumazet@google.com>; Jakub Kicinski <kuba@kernel.org>; Paolo Abeni <pabeni@redhat.com>; open
> list:MAC80211 <linux-wireless@vger.kernel.org>; open list:NETWORKING [GENERAL] <netdev@vger.kernel.org>;
> open list <linux-kernel@vger.kernel.org>
> Cc: opensource.kernel@vivo.com; youkangren@vivo.com
> Subject: [PATCH] wifi:mac80211: Replace the ternary conditional operator with max()

The semicolon of "wifi:" is different from others.

> 
> Replace the ternary conditional operator with max() to make the code clean
> 
> Signed-off-by: You Kangren <youkangren@vivo.com>
> ---
>  net/mac80211/tdls.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/net/mac80211/tdls.c b/net/mac80211/tdls.c
> index a4af3b7675ef..9f8b0842a616 100644
> --- a/net/mac80211/tdls.c
> +++ b/net/mac80211/tdls.c
> @@ -946,7 +946,7 @@ ieee80211_tdls_build_mgmt_packet_data(struct ieee80211_sub_if_data *sdata,
>         int ret;
>         struct ieee80211_link_data *link;
> 
> -       link_id = link_id >= 0 ? link_id : 0;
> +       link_id = max(link_id, 0);

Original logic means "if link_id < 0, then use default link (0)" instead of
"always use link_id larger than or equal to 0". So, I think max(link_id, 0) could
cause misunderstanding. 

>         rcu_read_lock();
>         link = rcu_dereference(sdata->link[link_id]);
>         if (WARN_ON(!link))
> --
> 2.39.0
> 
> 
> ------Please consider the environment before printing this e-mail.
Nicolas Escande June 28, 2023, 8 a.m. UTC | #2
On Wed Jun 28, 2023 at 3:48 AM CEST, Ping-Ke Shih wrote:
>
>
> > -----Original Message-----
> > From: You Kangren <youkangren@vivo.com>
> > Sent: Monday, June 26, 2023 6:48 PM
> > To: Johannes Berg <johannes@sipsolutions.net>; David S. Miller <davem@davemloft.net>; Eric Dumazet
> > <edumazet@google.com>; Jakub Kicinski <kuba@kernel.org>; Paolo Abeni <pabeni@redhat.com>; open
> > list:MAC80211 <linux-wireless@vger.kernel.org>; open list:NETWORKING [GENERAL] <netdev@vger.kernel.org>;
> > open list <linux-kernel@vger.kernel.org>
> > Cc: opensource.kernel@vivo.com; youkangren@vivo.com
> > Subject: [PATCH] wifi:mac80211: Replace the ternary conditional operator with max()
>
> The semicolon of "wifi:" is different from others.
>
> > 
> > Replace the ternary conditional operator with max() to make the code clean
> > 
> > Signed-off-by: You Kangren <youkangren@vivo.com>
> > ---
> >  net/mac80211/tdls.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/net/mac80211/tdls.c b/net/mac80211/tdls.c
> > index a4af3b7675ef..9f8b0842a616 100644
> > --- a/net/mac80211/tdls.c
> > +++ b/net/mac80211/tdls.c
> > @@ -946,7 +946,7 @@ ieee80211_tdls_build_mgmt_packet_data(struct ieee80211_sub_if_data *sdata,
> >         int ret;
> >         struct ieee80211_link_data *link;
> > 
> > -       link_id = link_id >= 0 ? link_id : 0;
> > +       link_id = max(link_id, 0);
>
> Original logic means "if link_id < 0, then use default link (0)" instead of
> "always use link_id larger than or equal to 0". So, I think max(link_id, 0) could
> cause misunderstanding. 

I feel the same way, max() implies we want the 'highest' link whereas for me the
actual code really means 'prefer the non default' (zero) link.

>
> >         rcu_read_lock();
> >         link = rcu_dereference(sdata->link[link_id]);
> >         if (WARN_ON(!link))
> > --
> > 2.39.0
> > 
> > 
> > ------Please consider the environment before printing this e-mail.
David Laight June 29, 2023, 1:28 p.m. UTC | #3
From: Ping-Ke Shih
> Sent: 28 June 2023 02:49
> 
> > -----Original Message-----
> > From: You Kangren <youkangren@vivo.com>
> > Sent: Monday, June 26, 2023 6:48 PM
> > To: Johannes Berg <johannes@sipsolutions.net>; David S. Miller <davem@davemloft.net>; Eric Dumazet
> > <edumazet@google.com>; Jakub Kicinski <kuba@kernel.org>; Paolo Abeni <pabeni@redhat.com>; open
> > list:MAC80211 <linux-wireless@vger.kernel.org>; open list:NETWORKING [GENERAL]
> <netdev@vger.kernel.org>;
> > open list <linux-kernel@vger.kernel.org>
> > Cc: opensource.kernel@vivo.com; youkangren@vivo.com
> > Subject: [PATCH] wifi:mac80211: Replace the ternary conditional operator with max()
> 
> The semicolon of "wifi:" is different from others.
> 
> >
> > Replace the ternary conditional operator with max() to make the code clean
> >
> > Signed-off-by: You Kangren <youkangren@vivo.com>
> > ---
> >  net/mac80211/tdls.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/net/mac80211/tdls.c b/net/mac80211/tdls.c
> > index a4af3b7675ef..9f8b0842a616 100644
> > --- a/net/mac80211/tdls.c
> > +++ b/net/mac80211/tdls.c
> > @@ -946,7 +946,7 @@ ieee80211_tdls_build_mgmt_packet_data(struct ieee80211_sub_if_data *sdata,
> >         int ret;
> >         struct ieee80211_link_data *link;
> >
> > -       link_id = link_id >= 0 ? link_id : 0;
> > +       link_id = max(link_id, 0);
> 
> Original logic means "if link_id < 0, then use default link (0)" instead of
> "always use link_id larger than or equal to 0". So, I think max(link_id, 0) could
> cause misunderstanding.

The clearest is probably:
	if (link_id < 0)
		link_id = 0;

The compiler could easily generate the same code (compare and conditional
move).

	David

-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)
Ping-Ke Shih July 3, 2023, 8:18 a.m. UTC | #4
> -----Original Message-----
> From: David Laight <David.Laight@ACULAB.COM>
> Sent: Thursday, June 29, 2023 9:28 PM
> To: Ping-Ke Shih <pkshih@realtek.com>; You Kangren <youkangren@vivo.com>; Johannes Berg
> <johannes@sipsolutions.net>; David S. Miller <davem@davemloft.net>; Eric Dumazet <edumazet@google.com>;
> Jakub Kicinski <kuba@kernel.org>; Paolo Abeni <pabeni@redhat.com>; open list:MAC80211
> <linux-wireless@vger.kernel.org>; open list:NETWORKING [GENERAL] <netdev@vger.kernel.org>; open list
> <linux-kernel@vger.kernel.org>
> Cc: opensource.kernel@vivo.com
> Subject: RE: [PATCH] wifi:mac80211: Replace the ternary conditional operator with max()
> 
> From: Ping-Ke Shih
> > Sent: 28 June 2023 02:49
> >
> > > -----Original Message-----
> > > From: You Kangren <youkangren@vivo.com>
> > > Sent: Monday, June 26, 2023 6:48 PM
> > > To: Johannes Berg <johannes@sipsolutions.net>; David S. Miller <davem@davemloft.net>; Eric Dumazet
> > > <edumazet@google.com>; Jakub Kicinski <kuba@kernel.org>; Paolo Abeni <pabeni@redhat.com>; open
> > > list:MAC80211 <linux-wireless@vger.kernel.org>; open list:NETWORKING [GENERAL]
> > <netdev@vger.kernel.org>;
> > > open list <linux-kernel@vger.kernel.org>
> > > Cc: opensource.kernel@vivo.com; youkangren@vivo.com
> > > Subject: [PATCH] wifi:mac80211: Replace the ternary conditional operator with max()
> >
> > The semicolon of "wifi:" is different from others.
> >
> > >
> > > Replace the ternary conditional operator with max() to make the code clean
> > >
> > > Signed-off-by: You Kangren <youkangren@vivo.com>
> > > ---
> > >  net/mac80211/tdls.c | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/net/mac80211/tdls.c b/net/mac80211/tdls.c
> > > index a4af3b7675ef..9f8b0842a616 100644
> > > --- a/net/mac80211/tdls.c
> > > +++ b/net/mac80211/tdls.c
> > > @@ -946,7 +946,7 @@ ieee80211_tdls_build_mgmt_packet_data(struct ieee80211_sub_if_data *sdata,
> > >         int ret;
> > >         struct ieee80211_link_data *link;
> > >
> > > -       link_id = link_id >= 0 ? link_id : 0;
> > > +       link_id = max(link_id, 0);
> >
> > Original logic means "if link_id < 0, then use default link (0)" instead of
> > "always use link_id larger than or equal to 0". So, I think max(link_id, 0) could
> > cause misunderstanding.
> 
> The clearest is probably:
>         if (link_id < 0)
>                 link_id = 0;
> 
> The compiler could easily generate the same code (compare and conditional
> move).
> 

They would be the same, but personally I prefer original single one line statement
that is clear to me.
diff mbox series

Patch

diff --git a/net/mac80211/tdls.c b/net/mac80211/tdls.c
index a4af3b7675ef..9f8b0842a616 100644
--- a/net/mac80211/tdls.c
+++ b/net/mac80211/tdls.c
@@ -946,7 +946,7 @@  ieee80211_tdls_build_mgmt_packet_data(struct ieee80211_sub_if_data *sdata,
 	int ret;
 	struct ieee80211_link_data *link;
 
-	link_id = link_id >= 0 ? link_id : 0;
+	link_id = max(link_id, 0);
 	rcu_read_lock();
 	link = rcu_dereference(sdata->link[link_id]);
 	if (WARN_ON(!link))