Re: [PATCH] staging: rtl8712: Fix Sparse warnings in rtl871x_ioctl_linux.c

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Feb 20, 2023 at 02:37:58PM +0000, Shibo Li wrote:
> This patch fixes the following warning in rtl871x_ioctl_linux.c
> 
> WARNING: Avoid multiple line dereference - prefer 'pnetwork->network.InfrastructureMode'
> +                                       if (pnetwork->network.
> +                                               InfrastructureMode
> 
> WARNING: Avoid multiple line dereference - prefer 'padapter->mlmepriv.cur_network.network'
> +                                               padapter->mlmepriv.
> +                                               cur_network.network.
> 
> WARNING: Avoid multiple line dereference - prefer 'cur_network.network.InfrastructureMode'
> +                                               cur_network.network.
> +                                               InfrastructureMode)
> 
> Signed-off-by: Shibo Li <zzutcyha@xxxxxxx>
> ---
>  drivers/staging/rtl8712/rtl871x_ioctl_linux.c | 11 ++++-------
>  1 file changed, 4 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/staging/rtl8712/rtl871x_ioctl_linux.c b/drivers/staging/rtl8712/rtl871x_ioctl_linux.c
> index 36f6904d25ab..6673befeb2f0 100644
> --- a/drivers/staging/rtl8712/rtl871x_ioctl_linux.c
> +++ b/drivers/staging/rtl8712/rtl871x_ioctl_linux.c
> @@ -1268,14 +1268,11 @@ static int r8711_wx_set_essid(struct net_device *dev,
>  			if ((!memcmp(dst_ssid, src_ssid, ndis_ssid.SsidLength))
>  			    && (pnetwork->network.Ssid.SsidLength ==
>  			     ndis_ssid.SsidLength)) {
> -				if (check_fwstate(pmlmepriv,
> -							WIFI_ADHOC_STATE)) {
> -					if (pnetwork->network.
> -						InfrastructureMode
> +				if (check_fwstate(pmlmepriv, WIFI_ADHOC_STATE)) {
> +					if (pnetwork->network.configurationInfrastructureMode
>  						!=
> -						padapter->mlmepriv.
> -						cur_network.network.
> -						InfrastructureMode)
> +						padapter->mlmepriv.assoc_by_rssi.
> +						cur_network.network.InfrastructureMode)
>  						continue;

This one is not okay.  The indenting is still messed up.  There is still
a multi-line dereference.  The != is on the wrong line.  The parts of
the if statement should use space so they are aligned properly but
instead they're lined  up with the continue...

Look at the bigger picture.  Re-write the code to avoid so many tabs.
Reverse the outside if statement to return earlier for example.

regards,
dan carpenter





[Index of Archives]     [Linux Driver Development]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux