lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aHDQ4ah-UpJ7ADvJ@skv.local>
Date: Fri, 11 Jul 2025 11:52:49 +0300
From: Andrey Skvortsov <andrej.skvortzov@...il.com>
To: Ping-Ke Shih <pkshih@...ltek.com>
Cc: Kalle Valo <kvalo@...nel.org>,
	"linux-wireless@...r.kernel.org" <linux-wireless@...r.kernel.org>,
	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
	Bitterblue Smith <rtl8821cerfe2@...il.com>,
	Fiona Klute <fiona.klute@....de>
Subject: Re: [PATCH v3] wifi: rtw88: enable TX reports for the management
 queue

On 25-07-11 00:11, Ping-Ke Shih wrote:
> Andrey Skvortsov <andrej.skvortzov@...il.com> wrote:
> > This is needed for AP mode. Otherwise client sees the network, but
> > can't connect to it.
> > 
> > REG_FWHW_TXQ_CTRL+1 is set to WLAN_TXQ_RPT_EN (0x1F) in common mac
> > init function (__rtw8723x_mac_init), but the value was overwritten
> > from mac table later.
> > 
> > Tables with register values for phy parameters initialization are
> > copied from vendor driver usually. When table will be regenerated,
> > manual modifications to it may be lost. To avoid regressions in this
> > case new callback mac_postinit is introduced, that is called after
> > parameters from table are set.
> > 
> > Tested on rtl8723cs, that reuses rtw8703b driver.
> > 
> > Signed-off-by: Andrey Skvortsov <andrej.skvortzov@...il.com>
> > ---
> > 
> > Changes in v2:
> >  - introduce mac_postinit callback to avoid changing register tables
> > 
> > Changes in v3:
> >  - merge two patches back together
> >  - remove unused initialization in rtw_mac_postinit
> >  - init unused .mac_postinit fields in drivers with NULL
> > 
> >  drivers/net/wireless/realtek/rtw88/mac.c      | 11 +++++++++++
> >  drivers/net/wireless/realtek/rtw88/mac.h      |  1 +
> >  drivers/net/wireless/realtek/rtw88/main.c     |  6 ++++++
> >  drivers/net/wireless/realtek/rtw88/main.h     |  1 +
> >  drivers/net/wireless/realtek/rtw88/rtw8703b.c |  1 +
> >  drivers/net/wireless/realtek/rtw88/rtw8723d.c |  1 +
> >  drivers/net/wireless/realtek/rtw88/rtw8723x.c |  9 ++++++++-
> >  drivers/net/wireless/realtek/rtw88/rtw8723x.h |  6 ++++++
> >  drivers/net/wireless/realtek/rtw88/rtw8812a.c |  1 +
> >  drivers/net/wireless/realtek/rtw88/rtw8814a.c |  1 +
> >  drivers/net/wireless/realtek/rtw88/rtw8821a.c |  1 +
> >  drivers/net/wireless/realtek/rtw88/rtw8821c.c |  1 +
> >  drivers/net/wireless/realtek/rtw88/rtw8822b.c |  1 +
> >  drivers/net/wireless/realtek/rtw88/rtw8822c.c |  1 +
> >  14 files changed, 41 insertions(+), 1 deletion(-)
> > 
> > diff --git a/drivers/net/wireless/realtek/rtw88/mac.c b/drivers/net/wireless/realtek/rtw88/mac.c
> > index 011b81c82f3ba..e1ec9aa401fa0 100644
> > --- a/drivers/net/wireless/realtek/rtw88/mac.c
> > +++ b/drivers/net/wireless/realtek/rtw88/mac.c
> > @@ -1409,3 +1409,14 @@ int rtw_mac_init(struct rtw_dev *rtwdev)
> > 
> >         return 0;
> >  }
> > +
> > +int rtw_mac_postinit(struct rtw_dev *rtwdev)
> > +{
> > +       const struct rtw_chip_info *chip = rtwdev->chip;
> > +       int ret;
> > +
> > +       if (chip->ops->mac_postinit)
> > +               ret = chip->ops->mac_postinit(rtwdev);
> > +
> 
> 'ret' is not used [1].
> 
> Prefer:
> 
> if (!chip->ops->mac_postinit)
>     return 0;
> 
> return chip->ops->mac_postinit(rtwdev);
> 
> [1] http://wifibot.sipsolutions.net/results/981272/14152513/build_clang/stderr
> 

Thanks, sorry I've missed warning.
I'll use CONFIG_WERROR and change my build pipeline, so this will not happen in the future.

-- 
Best regards,
Andrey Skvortsov

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ