drivers/staging/rtl8723bs/core/rtw_ap.c | 2 +- drivers/staging/rtl8723bs/include/sta_info.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
The struct field uses the uint values 0 and 1 to represent false and
true values respectively.
Convert cases to use the bool type instead to conform to Linux
coding styles and ensure consistency.
reported by Coccinelle:
Signed-off-by: Abraham Samuel Adekunle <abrahamadekunle50@gmail.com>
---
drivers/staging/rtl8723bs/core/rtw_ap.c | 2 +-
drivers/staging/rtl8723bs/include/sta_info.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/staging/rtl8723bs/core/rtw_ap.c b/drivers/staging/rtl8723bs/core/rtw_ap.c
index ed6942e289a5..82f54f769ed1 100644
--- a/drivers/staging/rtl8723bs/core/rtw_ap.c
+++ b/drivers/staging/rtl8723bs/core/rtw_ap.c
@@ -389,7 +389,7 @@ void update_bmc_sta(struct adapter *padapter)
psta->qos_option = 0;
psta->htpriv.ht_option = false;
- psta->ieee8021x_blocked = 0;
+ psta->ieee8021x_blocked = false;
memset((void *)&psta->sta_stats, 0, sizeof(struct stainfo_stats));
diff --git a/drivers/staging/rtl8723bs/include/sta_info.h b/drivers/staging/rtl8723bs/include/sta_info.h
index b3535fed3de7..63343998266a 100644
--- a/drivers/staging/rtl8723bs/include/sta_info.h
+++ b/drivers/staging/rtl8723bs/include/sta_info.h
@@ -86,7 +86,7 @@ struct sta_info {
uint qos_option;
u8 hwaddr[ETH_ALEN];
- uint ieee8021x_blocked; /* 0: allowed, 1:blocked */
+ bool ieee8021x_blocked;
uint dot118021XPrivacy; /* aes, tkip... */
union Keytype dot11tkiptxmickey;
union Keytype dot11tkiprxmickey;
--
2.34.1
On Wed, 2 Apr 2025, Abraham Samuel Adekunle wrote:
> The struct field uses the uint values 0 and 1 to represent false and
> true values respectively.
>
> Convert cases to use the bool type instead to conform to Linux
> coding styles and ensure consistency.
This is vague. Ensure consistency with what? You can point out that true
or false was already being used elsewhere in the code.
>
> reported by Coccinelle:
>
> Signed-off-by: Abraham Samuel Adekunle <abrahamadekunle50@gmail.com>
> ---
> drivers/staging/rtl8723bs/core/rtw_ap.c | 2 +-
> drivers/staging/rtl8723bs/include/sta_info.h | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/staging/rtl8723bs/core/rtw_ap.c b/drivers/staging/rtl8723bs/core/rtw_ap.c
> index ed6942e289a5..82f54f769ed1 100644
> --- a/drivers/staging/rtl8723bs/core/rtw_ap.c
> +++ b/drivers/staging/rtl8723bs/core/rtw_ap.c
> @@ -389,7 +389,7 @@ void update_bmc_sta(struct adapter *padapter)
> psta->qos_option = 0;
> psta->htpriv.ht_option = false;
>
> - psta->ieee8021x_blocked = 0;
> + psta->ieee8021x_blocked = false;
>
> memset((void *)&psta->sta_stats, 0, sizeof(struct stainfo_stats));
>
> diff --git a/drivers/staging/rtl8723bs/include/sta_info.h b/drivers/staging/rtl8723bs/include/sta_info.h
> index b3535fed3de7..63343998266a 100644
> --- a/drivers/staging/rtl8723bs/include/sta_info.h
> +++ b/drivers/staging/rtl8723bs/include/sta_info.h
> @@ -86,7 +86,7 @@ struct sta_info {
> uint qos_option;
> u8 hwaddr[ETH_ALEN];
>
> - uint ieee8021x_blocked; /* 0: allowed, 1:blocked */
> + bool ieee8021x_blocked;
This declaration doesn't have the same alignment as the others.
You should also check whether this is a structure that is read from the
hardware. In that case, it would be a concern if the bool field does not
have the same size as the uint one.
julia
> uint dot118021XPrivacy; /* aes, tkip... */
> union Keytype dot11tkiptxmickey;
> union Keytype dot11tkiprxmickey;
> --
> 2.34.1
>
>
On Thu, Apr 3, 2025 at 6:06 AM Julia Lawall <julia.lawall@inria.fr> wrote:
>
>
>
> On Wed, 2 Apr 2025, Abraham Samuel Adekunle wrote:
>
> > The struct field uses the uint values 0 and 1 to represent false and
> > true values respectively.
> >
> > Convert cases to use the bool type instead to conform to Linux
> > coding styles and ensure consistency.
>
> This is vague. Ensure consistency with what? You can point out that true
> or false was already being used elsewhere in the code.
>
> >
> > reported by Coccinelle:
> >
> > Signed-off-by: Abraham Samuel Adekunle <abrahamadekunle50@gmail.com>
> > ---
> > drivers/staging/rtl8723bs/core/rtw_ap.c | 2 +-
> > drivers/staging/rtl8723bs/include/sta_info.h | 2 +-
> > 2 files changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/staging/rtl8723bs/core/rtw_ap.c b/drivers/staging/rtl8723bs/core/rtw_ap.c
> > index ed6942e289a5..82f54f769ed1 100644
> > --- a/drivers/staging/rtl8723bs/core/rtw_ap.c
> > +++ b/drivers/staging/rtl8723bs/core/rtw_ap.c
> > @@ -389,7 +389,7 @@ void update_bmc_sta(struct adapter *padapter)
> > psta->qos_option = 0;
> > psta->htpriv.ht_option = false;
> >
> > - psta->ieee8021x_blocked = 0;
> > + psta->ieee8021x_blocked = false;
> >
> > memset((void *)&psta->sta_stats, 0, sizeof(struct stainfo_stats));
> >
> > diff --git a/drivers/staging/rtl8723bs/include/sta_info.h b/drivers/staging/rtl8723bs/include/sta_info.h
> > index b3535fed3de7..63343998266a 100644
> > --- a/drivers/staging/rtl8723bs/include/sta_info.h
> > +++ b/drivers/staging/rtl8723bs/include/sta_info.h
> > @@ -86,7 +86,7 @@ struct sta_info {
> > uint qos_option;
> > u8 hwaddr[ETH_ALEN];
> >
> > - uint ieee8021x_blocked; /* 0: allowed, 1:blocked */
> > + bool ieee8021x_blocked;
> You should also check whether this is a structure that is read from the
> hardware. In that case, it would be a concern if the bool field does not
> have the same size as the uint one.
Hello Julia
So following the conversation here,
https://lore.kernel.org/outreachy/bf8994cc-b812-f628-ff43-5dae8426e266@inria.fr/T/#u
I was able to compare the assembly code of the file before and after
my patch and this were my findings
Original assembly code for
# drivers/staging/rtl8723bs/core/rtw_ap.c:392 psta->ieee8021x_blocked = 0;
movl $0, 436(%r12) #, psta->ieee8021x_blocked
Assembly Code After Patch
# drivers/staging/rtl8723bs/core/rtw_ap.c:392
psta->ieee8021x_blocked = false;
movb $0, 434(%r12) #, psta->ieee8021x_blocked
Adekunle
On Thu, Apr 03, 2025 at 10:33:49AM +0100, Samuel Abraham wrote:
> On Thu, Apr 3, 2025 at 6:06 AM Julia Lawall <julia.lawall@inria.fr> wrote:
> >
> >
> >
> > On Wed, 2 Apr 2025, Abraham Samuel Adekunle wrote:
> >
> > > The struct field uses the uint values 0 and 1 to represent false and
> > > true values respectively.
> > >
> > > Convert cases to use the bool type instead to conform to Linux
> > > coding styles and ensure consistency.
> >
> > This is vague. Ensure consistency with what? You can point out that true
> > or false was already being used elsewhere in the code.
> >
> > >
> > > reported by Coccinelle:
> > >
> > > Signed-off-by: Abraham Samuel Adekunle <abrahamadekunle50@gmail.com>
> > > ---
> > > drivers/staging/rtl8723bs/core/rtw_ap.c | 2 +-
> > > drivers/staging/rtl8723bs/include/sta_info.h | 2 +-
> > > 2 files changed, 2 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/drivers/staging/rtl8723bs/core/rtw_ap.c b/drivers/staging/rtl8723bs/core/rtw_ap.c
> > > index ed6942e289a5..82f54f769ed1 100644
> > > --- a/drivers/staging/rtl8723bs/core/rtw_ap.c
> > > +++ b/drivers/staging/rtl8723bs/core/rtw_ap.c
> > > @@ -389,7 +389,7 @@ void update_bmc_sta(struct adapter *padapter)
> > > psta->qos_option = 0;
> > > psta->htpriv.ht_option = false;
> > >
> > > - psta->ieee8021x_blocked = 0;
> > > + psta->ieee8021x_blocked = false;
> > >
> > > memset((void *)&psta->sta_stats, 0, sizeof(struct stainfo_stats));
> > >
> > > diff --git a/drivers/staging/rtl8723bs/include/sta_info.h b/drivers/staging/rtl8723bs/include/sta_info.h
> > > index b3535fed3de7..63343998266a 100644
> > > --- a/drivers/staging/rtl8723bs/include/sta_info.h
> > > +++ b/drivers/staging/rtl8723bs/include/sta_info.h
> > > @@ -86,7 +86,7 @@ struct sta_info {
> > > uint qos_option;
> > > u8 hwaddr[ETH_ALEN];
> > >
> > > - uint ieee8021x_blocked; /* 0: allowed, 1:blocked */
> > > + bool ieee8021x_blocked;
>
> > You should also check whether this is a structure that is read from the
> > hardware. In that case, it would be a concern if the bool field does not
> > have the same size as the uint one.
> Hello Julia
> So following the conversation here,
> https://lore.kernel.org/outreachy/bf8994cc-b812-f628-ff43-5dae8426e266@inria.fr/T/#u
> I was able to compare the assembly code of the file before and after
> my patch and this were my findings
>
> Original assembly code for
> # drivers/staging/rtl8723bs/core/rtw_ap.c:392 psta->ieee8021x_blocked = 0;
> movl $0, 436(%r12) #, psta->ieee8021x_blocked
>
> Assembly Code After Patch
> # drivers/staging/rtl8723bs/core/rtw_ap.c:392
> psta->ieee8021x_blocked = false;
> movb $0, 434(%r12) #, psta->ieee8021x_blocked
So the structure size changed? That's not good at all, and is what I
was worried about :(
Also, the tool 'pahole' might help out here to verify what exactly
changed, if you want to dig in further here.
thanks,
greg k-h
On Thu, Apr 03, 2025 at 02:54:01PM +0100, Greg Kroah-Hartman wrote:
> > > > diff --git a/drivers/staging/rtl8723bs/include/sta_info.h b/drivers/staging/rtl8723bs/include/sta_info.h
> > > > index b3535fed3de7..63343998266a 100644
> > > > --- a/drivers/staging/rtl8723bs/include/sta_info.h
> > > > +++ b/drivers/staging/rtl8723bs/include/sta_info.h
> > > > @@ -86,7 +86,7 @@ struct sta_info {
> > > > uint qos_option;
> > > > u8 hwaddr[ETH_ALEN];
> > > >
> > > > - uint ieee8021x_blocked; /* 0: allowed, 1:blocked */
> > > > + bool ieee8021x_blocked;
> >
> > > You should also check whether this is a structure that is read from the
> > > hardware. In that case, it would be a concern if the bool field does not
> > > have the same size as the uint one.
> > Hello Julia
> > So following the conversation here,
> > https://lore.kernel.org/outreachy/bf8994cc-b812-f628-ff43-5dae8426e266@inria.fr/T/#u
> > I was able to compare the assembly code of the file before and after
> > my patch and this were my findings
> >
> > Original assembly code for
> > # drivers/staging/rtl8723bs/core/rtw_ap.c:392 psta->ieee8021x_blocked = 0;
> > movl $0, 436(%r12) #, psta->ieee8021x_blocked
> >
> > Assembly Code After Patch
> > # drivers/staging/rtl8723bs/core/rtw_ap.c:392
> > psta->ieee8021x_blocked = false;
> > movb $0, 434(%r12) #, psta->ieee8021x_blocked
>
> So the structure size changed? That's not good at all, and is what I
> was worried about :(
>
You had complained about a different struct. struct rx_pkt_attrib. It's
fine to modify this one.
regards,
dan carpenter
On Thu, Apr 03, 2025 at 05:02:45PM +0300, Dan Carpenter wrote:
> On Thu, Apr 03, 2025 at 02:54:01PM +0100, Greg Kroah-Hartman wrote:
> > > > > diff --git a/drivers/staging/rtl8723bs/include/sta_info.h b/drivers/staging/rtl8723bs/include/sta_info.h
> > > > > index b3535fed3de7..63343998266a 100644
> > > > > --- a/drivers/staging/rtl8723bs/include/sta_info.h
> > > > > +++ b/drivers/staging/rtl8723bs/include/sta_info.h
> > > > > @@ -86,7 +86,7 @@ struct sta_info {
> > > > > uint qos_option;
> > > > > u8 hwaddr[ETH_ALEN];
> > > > >
> > > > > - uint ieee8021x_blocked; /* 0: allowed, 1:blocked */
> > > > > + bool ieee8021x_blocked;
> > >
> > > > You should also check whether this is a structure that is read from the
> > > > hardware. In that case, it would be a concern if the bool field does not
> > > > have the same size as the uint one.
> > > Hello Julia
> > > So following the conversation here,
> > > https://lore.kernel.org/outreachy/bf8994cc-b812-f628-ff43-5dae8426e266@inria.fr/T/#u
> > > I was able to compare the assembly code of the file before and after
> > > my patch and this were my findings
> > >
> > > Original assembly code for
> > > # drivers/staging/rtl8723bs/core/rtw_ap.c:392 psta->ieee8021x_blocked = 0;
> > > movl $0, 436(%r12) #, psta->ieee8021x_blocked
> > >
> > > Assembly Code After Patch
> > > # drivers/staging/rtl8723bs/core/rtw_ap.c:392
> > > psta->ieee8021x_blocked = false;
> > > movb $0, 434(%r12) #, psta->ieee8021x_blocked
> >
> > So the structure size changed? That's not good at all, and is what I
> > was worried about :(
> >
>
> You had complained about a different struct. struct rx_pkt_attrib. It's
> fine to modify this one.
Argh, sorry, too many different threads right now, my fault...
On Thu, Apr 3, 2025 at 6:06 AM Julia Lawall <julia.lawall@inria.fr> wrote:
>
>
>
> On Wed, 2 Apr 2025, Abraham Samuel Adekunle wrote:
>
> > The struct field uses the uint values 0 and 1 to represent false and
> > true values respectively.
> >
> > Convert cases to use the bool type instead to conform to Linux
> > coding styles and ensure consistency.
>
> This is vague. Ensure consistency with what? You can point out that true
> or false was already being used elsewhere in the code.
Okay Noted.
>
> >
> > reported by Coccinelle:
> >
> > Signed-off-by: Abraham Samuel Adekunle <abrahamadekunle50@gmail.com>
> > ---
> > drivers/staging/rtl8723bs/core/rtw_ap.c | 2 +-
> > drivers/staging/rtl8723bs/include/sta_info.h | 2 +-
> > 2 files changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/staging/rtl8723bs/core/rtw_ap.c b/drivers/staging/rtl8723bs/core/rtw_ap.c
> > index ed6942e289a5..82f54f769ed1 100644
> > --- a/drivers/staging/rtl8723bs/core/rtw_ap.c
> > +++ b/drivers/staging/rtl8723bs/core/rtw_ap.c
> > @@ -389,7 +389,7 @@ void update_bmc_sta(struct adapter *padapter)
> > psta->qos_option = 0;
> > psta->htpriv.ht_option = false;
> >
> > - psta->ieee8021x_blocked = 0;
> > + psta->ieee8021x_blocked = false;
> >
> > memset((void *)&psta->sta_stats, 0, sizeof(struct stainfo_stats));
> >
> > diff --git a/drivers/staging/rtl8723bs/include/sta_info.h b/drivers/staging/rtl8723bs/include/sta_info.h
> > index b3535fed3de7..63343998266a 100644
> > --- a/drivers/staging/rtl8723bs/include/sta_info.h
> > +++ b/drivers/staging/rtl8723bs/include/sta_info.h
> > @@ -86,7 +86,7 @@ struct sta_info {
> > uint qos_option;
> > u8 hwaddr[ETH_ALEN];
> >
> > - uint ieee8021x_blocked; /* 0: allowed, 1:blocked */
> > + bool ieee8021x_blocked;
>
> This declaration doesn't have the same alignment as the others.
>
> You should also check whether this is a structure that is read from the
> hardware. In that case, it would be a concern if the bool field does not
> have the same size as the uint one.
>
> julia
Thank you very much. I will confirm and effect the changes
Adekunle
© 2016 - 2025 Red Hat, Inc.