mbox series

[00/32] Set 2: Rid W=1 warnings in Wireless

Message ID 20200821071644.109970-1-lee.jones@linaro.org
Headers show
Series Set 2: Rid W=1 warnings in Wireless | expand

Message

Lee Jones Aug. 21, 2020, 7:16 a.m. UTC
This set is part of a larger effort attempting to clean-up W=1
kernel builds, which are currently overwhelmingly riddled with
niggly little warnings.

There are quite a few W=1 warnings in the Wireless.  My plan
is to work through all of them over the next few weeks.
Hopefully it won't be too long before drivers/net/wireless
builds clean with W=1 enabled.

This set brings the total number of (arm, arm64, x86, mips and
ppc *combined* i.e. some duplicated) warnings down from 4983
(since the last set) to 2066.

Lee Jones (32):
  wireless: marvell: mwifiex: sdio: Move 'static const struct's into
    their own header file
  wireless: rsi: rsi_91x_mac80211: Add description for function param
    'sta'
  wireless: intel: iwlwifi: mvm: ops: Remove unused static struct
    'iwl_mvm_debug_names'
  wireless: broadcom: brcm80211: brcmsmac: ampdu: Remove a bunch of
    unused variables
  wireless: broadcom: brcm80211: brcmfmac: p2p: Fix a bunch of function
    docs
  wireless: rsi: rsi_91x_mgmt: Add descriptions for
    rsi_set_vap_capabilities()'s parameters
  wireless: intel: iwlwifi: dvm: rx: Demote a couple of nonconformant
    kernel-doc headers
  wireless: intel: iwlwifi: mvm: utils: Fix some doc-rot
  wireless: broadcom: brcm80211: brcmsmac: main: Remove a bunch of
    unused variables
  wireless: rsi: rsi_91x_ps: Source file headers do not make good
    kernel-doc candidates
  wireless: intel: iwlwifi: dvm: scan: Demote a few nonconformant
    kernel-doc headers
  wireless: brcm80211: brcmfmac: firmware: Demote seemingly
    unintentional kernel-doc header
  wireless: intel: iwlwifi: dvm: rxon: Demote non-conformant kernel-doc
    headers
  wireless: rsi: rsi_91x_coex: File headers are not suitable for
    kernel-doc
  wireless: intel: iwlegacy: 4965-mac: Convert function headers to
    standard comment blocks
  wireless: brcm80211: btcoex: Update 'brcmf_btcoex_state' and demote
    others
  wireless: broadcom: b43: phy_ht: Remove 9 year old TODO
  wireless: intel: iwlwifi: mvm: tx: Demote misuse of kernel-doc headers
  wireless: intel: iwlwifi: dvm: devices: Fix function documentation
    formatting issues
  wireless: rsi: rsi_91x_debugfs: Source file headers are not suitable
    for kernel-doc
  wireless: intel: iwlwifi: iwl-drv: Provide descriptions debugfs
    dentries
  wireless: intel: iwlegacy: 4965-rs: Demote non kernel-doc headers to
    standard comment blocks
  wireless: intel: iwlegacy: 4965-calib: Demote seemingly accidental
    kernel-doc header
  wireless: brcmfmac: fwsignal: Remove unused variable
    'brcmf_fws_prio2fifo'
  wireless: ath: wil6210: wmi: Fix formatting and demote non-conforming
    function headers
  wireless: ath: wil6210: interrupt: Demote comment header which is
    clearly not kernel-doc
  wireless: ath: wil6210: txrx: Demote obvious abuse of kernel-doc
  wireless: ath: wil6210: txrx_edma: Demote comments which are clearly
    not kernel-doc
  wireless: realtek: rtl8192c: phy_common: Remove unused variable
    'bbvalue'
  wireless: ath: wil6210: pmc: Demote a few nonconformant kernel-doc
    function headers
  wireless: ath: wil6210: wil_platform: Demote kernel-doc header to
    standard comment block
  wireless: mediatek: mt76x0: Move tables used only by init.c to their
    own header file

 drivers/net/wireless/ath/wil6210/interrupt.c  |   2 +-
 drivers/net/wireless/ath/wil6210/pmc.c        |   8 +-
 drivers/net/wireless/ath/wil6210/txrx.c       |  20 +-
 drivers/net/wireless/ath/wil6210/txrx_edma.c  |   6 +-
 .../net/wireless/ath/wil6210/wil_platform.c   |   2 +-
 drivers/net/wireless/ath/wil6210/wmi.c        |  28 +-
 drivers/net/wireless/broadcom/b43/phy_ht.c    |   3 -
 .../broadcom/brcm80211/brcmfmac/btcoex.c      |  12 +-
 .../broadcom/brcm80211/brcmfmac/firmware.c    |   2 +-
 .../broadcom/brcm80211/brcmfmac/fwsignal.c    |  14 -
 .../broadcom/brcm80211/brcmfmac/p2p.c         |  22 +-
 .../broadcom/brcm80211/brcmsmac/ampdu.c       |  28 +-
 .../broadcom/brcm80211/brcmsmac/main.c        |  38 +-
 .../net/wireless/intel/iwlegacy/4965-calib.c  |   2 +-
 .../net/wireless/intel/iwlegacy/4965-mac.c    |  55 +--
 drivers/net/wireless/intel/iwlegacy/4965-rs.c |  10 +-
 .../net/wireless/intel/iwlwifi/dvm/devices.c  |   8 +-
 drivers/net/wireless/intel/iwlwifi/dvm/rx.c   |   4 +-
 drivers/net/wireless/intel/iwlwifi/dvm/rxon.c |   6 +-
 drivers/net/wireless/intel/iwlwifi/dvm/scan.c |   8 +-
 drivers/net/wireless/intel/iwlwifi/iwl-drv.c  |   5 +-
 drivers/net/wireless/intel/iwlwifi/mvm/ops.c  |   9 -
 drivers/net/wireless/intel/iwlwifi/mvm/tx.c   |   4 +-
 .../net/wireless/intel/iwlwifi/mvm/utils.c    |   7 +-
 .../wireless/marvell/mwifiex/sdio-tables.h    | 451 ++++++++++++++++++
 drivers/net/wireless/marvell/mwifiex/sdio.c   |   1 +
 drivers/net/wireless/marvell/mwifiex/sdio.h   | 427 -----------------
 .../net/wireless/mediatek/mt76/mt76x0/init.c  |   1 +
 .../wireless/mediatek/mt76/mt76x0/initvals.h  | 145 ------
 .../mediatek/mt76/mt76x0/initvals_init.h      | 159 ++++++
 .../realtek/rtlwifi/rtl8192c/phy_common.c     |   3 +-
 drivers/net/wireless/rsi/rsi_91x_coex.c       |   2 +-
 drivers/net/wireless/rsi/rsi_91x_debugfs.c    |   2 +-
 drivers/net/wireless/rsi/rsi_91x_mac80211.c   |   1 +
 drivers/net/wireless/rsi/rsi_91x_mgmt.c       |   3 +
 drivers/net/wireless/rsi/rsi_91x_ps.c         |   2 +-
 36 files changed, 738 insertions(+), 762 deletions(-)
 create mode 100644 drivers/net/wireless/marvell/mwifiex/sdio-tables.h
 create mode 100644 drivers/net/wireless/mediatek/mt76/mt76x0/initvals_init.h

-- 
2.25.1

Comments

Lee Jones Aug. 24, 2020, 8:16 a.m. UTC | #1
On Sat, 22 Aug 2020, Christian Lamparter wrote:

> On 2020-08-21 09:16, Lee Jones wrote:
> > This set is part of a larger effort attempting to clean-up W=1
> > kernel builds, which are currently overwhelmingly riddled with
> > niggly little warnings.
> > 
> I see that after our discussion about the carl9170 change in this
> thread following your patch: <https://lkml.org/lkml/2020/8/14/291>
> 
> you decided the best way to address our requirements, was to "drop"
> your patch from the series, instead of just implementing the requested
> changes. :(

No, this is "set 2", not "v2".

The patch you refer to is in the first set.

Looks like I am waiting for your reply [0]:

[0] https://lkml.org/lkml/2020/8/18/334

> > There are quite a few W=1 warnings in the Wireless.  My plan
> > is to work through all of them over the next few weeks.
> > Hopefully it won't be too long before drivers/net/wireless
> > builds clean with W=1 enabled.
> 
> Just a parting note for your consideration:
> 
> Since 5.7 [0], it has become rather easy to also compile the linux kernel
> with clang and the LLVM Utilities.
> <https://www.kernel.org/doc/html/latest/kbuild/llvm.html>
> 
> I hope this information can help you to see beyond that one-unamed
> "compiler" bias there... I wish you the best of luck in your endeavors.

Never used them.

GCC has always worked well for me.  What are their benefits over GCC?

I already build for 5 architectures locally and a great deal more
(arch * defconfigs) using remote testing infrastructures.  Multiplying
them without very good reason sounds like a *potential* waste of
already limited computation resources.

> Christian
> 
> [0] <https://www.phoronix.com/scan.php?page=news_item&px=Linux-5.7-Kbuild-Easier-LLVM>
merez@codeaurora.org Aug. 26, 2020, 10:21 a.m. UTC | #2
On 2020-08-21 10:16, Lee Jones wrote:
> Fixes the following W=1 kernel build warning(s):

> 

>  drivers/net/wireless/ath/wil6210/wmi.c:52: warning: Incorrect use of

> kernel-doc format:  * Addressing - theory of operations

>  drivers/net/wireless/ath/wil6210/wmi.c:70: warning: Incorrect use of

> kernel-doc format:  * @sparrow_fw_mapping provides memory remapping

> table for sparrow

>  drivers/net/wireless/ath/wil6210/wmi.c:80: warning: cannot understand

> function prototype: 'const struct fw_map sparrow_fw_mapping[] = '

>  drivers/net/wireless/ath/wil6210/wmi.c:107: warning: Cannot

> understand  * @sparrow_d0_mac_rgf_ext - mac_rgf_ext section for

> Sparrow D0

>  drivers/net/wireless/ath/wil6210/wmi.c:115: warning: Cannot

> understand  * @talyn_fw_mapping provides memory remapping table for

> Talyn

>  drivers/net/wireless/ath/wil6210/wmi.c:158: warning: Cannot

> understand  * @talyn_mb_fw_mapping provides memory remapping table for

> Talyn-MB

>  drivers/net/wireless/ath/wil6210/wmi.c:236: warning: Function

> parameter or member 'x' not described in 'wmi_addr_remap'

>  drivers/net/wireless/ath/wil6210/wmi.c:255: warning: Function

> parameter or member 'section' not described in 'wil_find_fw_mapping'

>  drivers/net/wireless/ath/wil6210/wmi.c:278: warning: Function

> parameter or member 'wil' not described in 'wmi_buffer_block'

>  drivers/net/wireless/ath/wil6210/wmi.c:278: warning: Function

> parameter or member 'ptr_' not described in 'wmi_buffer_block'

>  drivers/net/wireless/ath/wil6210/wmi.c:278: warning: Function

> parameter or member 'size' not described in 'wmi_buffer_block'

>  drivers/net/wireless/ath/wil6210/wmi.c:307: warning: Function

> parameter or member 'wil' not described in 'wmi_addr'

>  drivers/net/wireless/ath/wil6210/wmi.c:307: warning: Function

> parameter or member 'ptr' not described in 'wmi_addr'

>  drivers/net/wireless/ath/wil6210/wmi.c:1589: warning: Function

> parameter or member 'wil' not described in 'wil_find_cid_ringid_sta'

>  drivers/net/wireless/ath/wil6210/wmi.c:1589: warning: Function

> parameter or member 'vif' not described in 'wil_find_cid_ringid_sta'

>  drivers/net/wireless/ath/wil6210/wmi.c:1589: warning: Function

> parameter or member 'cid' not described in 'wil_find_cid_ringid_sta'

>  drivers/net/wireless/ath/wil6210/wmi.c:1589: warning: Function

> parameter or member 'ringid' not described in

> 'wil_find_cid_ringid_sta'

>  drivers/net/wireless/ath/wil6210/wmi.c:1876: warning: Function

> parameter or member 'vif' not described in 'wmi_evt_ignore'

>  drivers/net/wireless/ath/wil6210/wmi.c:1876: warning: Function

> parameter or member 'id' not described in 'wmi_evt_ignore'

>  drivers/net/wireless/ath/wil6210/wmi.c:1876: warning: Function

> parameter or member 'd' not described in 'wmi_evt_ignore'

>  drivers/net/wireless/ath/wil6210/wmi.c:1876: warning: Function

> parameter or member 'len' not described in 'wmi_evt_ignore'

>  drivers/net/wireless/ath/wil6210/wmi.c:2588: warning: Function

> parameter or member 'wil' not described in 'wmi_rxon'

> 

> Cc: Maya Erez <merez@codeaurora.org>

> Cc: Kalle Valo <kvalo@codeaurora.org>

> Cc: "David S. Miller" <davem@davemloft.net>

> Cc: Jakub Kicinski <kuba@kernel.org>

> Cc: linux-wireless@vger.kernel.org

> Cc: wil6210@qti.qualcomm.com

> Cc: netdev@vger.kernel.org

> Signed-off-by: Lee Jones <lee.jones@linaro.org>

> ---

>  drivers/net/wireless/ath/wil6210/wmi.c | 28 ++++++++++++++------------

>  1 file changed, 15 insertions(+), 13 deletions(-)

> 

> diff --git a/drivers/net/wireless/ath/wil6210/wmi.c

> b/drivers/net/wireless/ath/wil6210/wmi.c

> index c7136ce567eea..3a6ee85acf6c7 100644

> --- a/drivers/net/wireless/ath/wil6210/wmi.c

> +++ b/drivers/net/wireless/ath/wil6210/wmi.c

> @@ -31,7 +31,7 @@ MODULE_PARM_DESC(led_id,

>  #define WIL_WAIT_FOR_SUSPEND_RESUME_COMP 200

>  #define WIL_WMI_PCP_STOP_TO_MS 5000

> 

> -/**

> +/*

>   * WMI event receiving - theory of operations

>   *

>   * When firmware about to report WMI event, it fills memory area


The correct format for such documentation blocks is:
/**
  * DOC: Theory of Operation

This comment is also applicable for the rest of such documentation 
blocks changed in this patch.

> @@ -66,7 +66,7 @@ MODULE_PARM_DESC(led_id,

>   * AHB address must be used.

>   */

> 

> -/**

> +/*

>   * @sparrow_fw_mapping provides memory remapping table for sparrow

>   *

>   * array size should be in sync with the declaration in the wil6210.h

For files in net/ and drivers/net/ the preferred style for long 
(multi-line) comments is a different and
the text should be in the same line as /*, as follows:
/* sparrow_fw_mapping provides memory remapping table for sparrow
I would also remove the @ from @sparrow_fw_mapping.
This comment is also applicable for the rest of such documentation 
blocks changed in this patch.
Lee Jones Aug. 26, 2020, 11:21 a.m. UTC | #3
On Wed, 26 Aug 2020, merez@codeaurora.org wrote:

> On 2020-08-21 10:16, Lee Jones wrote:
> > Fixes the following W=1 kernel build warning(s):
> > 
> >  drivers/net/wireless/ath/wil6210/wmi.c:52: warning: Incorrect use of
> > kernel-doc format:  * Addressing - theory of operations
> >  drivers/net/wireless/ath/wil6210/wmi.c:70: warning: Incorrect use of
> > kernel-doc format:  * @sparrow_fw_mapping provides memory remapping
> > table for sparrow
> >  drivers/net/wireless/ath/wil6210/wmi.c:80: warning: cannot understand
> > function prototype: 'const struct fw_map sparrow_fw_mapping[] = '
> >  drivers/net/wireless/ath/wil6210/wmi.c:107: warning: Cannot
> > understand  * @sparrow_d0_mac_rgf_ext - mac_rgf_ext section for
> > Sparrow D0
> >  drivers/net/wireless/ath/wil6210/wmi.c:115: warning: Cannot
> > understand  * @talyn_fw_mapping provides memory remapping table for
> > Talyn
> >  drivers/net/wireless/ath/wil6210/wmi.c:158: warning: Cannot
> > understand  * @talyn_mb_fw_mapping provides memory remapping table for
> > Talyn-MB
> >  drivers/net/wireless/ath/wil6210/wmi.c:236: warning: Function
> > parameter or member 'x' not described in 'wmi_addr_remap'
> >  drivers/net/wireless/ath/wil6210/wmi.c:255: warning: Function
> > parameter or member 'section' not described in 'wil_find_fw_mapping'
> >  drivers/net/wireless/ath/wil6210/wmi.c:278: warning: Function
> > parameter or member 'wil' not described in 'wmi_buffer_block'
> >  drivers/net/wireless/ath/wil6210/wmi.c:278: warning: Function
> > parameter or member 'ptr_' not described in 'wmi_buffer_block'
> >  drivers/net/wireless/ath/wil6210/wmi.c:278: warning: Function
> > parameter or member 'size' not described in 'wmi_buffer_block'
> >  drivers/net/wireless/ath/wil6210/wmi.c:307: warning: Function
> > parameter or member 'wil' not described in 'wmi_addr'
> >  drivers/net/wireless/ath/wil6210/wmi.c:307: warning: Function
> > parameter or member 'ptr' not described in 'wmi_addr'
> >  drivers/net/wireless/ath/wil6210/wmi.c:1589: warning: Function
> > parameter or member 'wil' not described in 'wil_find_cid_ringid_sta'
> >  drivers/net/wireless/ath/wil6210/wmi.c:1589: warning: Function
> > parameter or member 'vif' not described in 'wil_find_cid_ringid_sta'
> >  drivers/net/wireless/ath/wil6210/wmi.c:1589: warning: Function
> > parameter or member 'cid' not described in 'wil_find_cid_ringid_sta'
> >  drivers/net/wireless/ath/wil6210/wmi.c:1589: warning: Function
> > parameter or member 'ringid' not described in
> > 'wil_find_cid_ringid_sta'
> >  drivers/net/wireless/ath/wil6210/wmi.c:1876: warning: Function
> > parameter or member 'vif' not described in 'wmi_evt_ignore'
> >  drivers/net/wireless/ath/wil6210/wmi.c:1876: warning: Function
> > parameter or member 'id' not described in 'wmi_evt_ignore'
> >  drivers/net/wireless/ath/wil6210/wmi.c:1876: warning: Function
> > parameter or member 'd' not described in 'wmi_evt_ignore'
> >  drivers/net/wireless/ath/wil6210/wmi.c:1876: warning: Function
> > parameter or member 'len' not described in 'wmi_evt_ignore'
> >  drivers/net/wireless/ath/wil6210/wmi.c:2588: warning: Function
> > parameter or member 'wil' not described in 'wmi_rxon'
> > 
> > Cc: Maya Erez <merez@codeaurora.org>
> > Cc: Kalle Valo <kvalo@codeaurora.org>
> > Cc: "David S. Miller" <davem@davemloft.net>
> > Cc: Jakub Kicinski <kuba@kernel.org>
> > Cc: linux-wireless@vger.kernel.org
> > Cc: wil6210@qti.qualcomm.com
> > Cc: netdev@vger.kernel.org
> > Signed-off-by: Lee Jones <lee.jones@linaro.org>
> > ---
> >  drivers/net/wireless/ath/wil6210/wmi.c | 28 ++++++++++++++------------
> >  1 file changed, 15 insertions(+), 13 deletions(-)
> > 
> > diff --git a/drivers/net/wireless/ath/wil6210/wmi.c
> > b/drivers/net/wireless/ath/wil6210/wmi.c
> > index c7136ce567eea..3a6ee85acf6c7 100644
> > --- a/drivers/net/wireless/ath/wil6210/wmi.c
> > +++ b/drivers/net/wireless/ath/wil6210/wmi.c
> > @@ -31,7 +31,7 @@ MODULE_PARM_DESC(led_id,
> >  #define WIL_WAIT_FOR_SUSPEND_RESUME_COMP 200
> >  #define WIL_WMI_PCP_STOP_TO_MS 5000
> > 
> > -/**
> > +/*
> >   * WMI event receiving - theory of operations
> >   *
> >   * When firmware about to report WMI event, it fills memory area
> 
> The correct format for such documentation blocks is:
> /**
>  * DOC: Theory of Operation
> 
> This comment is also applicable for the rest of such documentation blocks
> changed in this patch.

Ah yes, good point.  Will fix.

> > @@ -66,7 +66,7 @@ MODULE_PARM_DESC(led_id,
> >   * AHB address must be used.
> >   */
> > 
> > -/**
> > +/*
> >   * @sparrow_fw_mapping provides memory remapping table for sparrow
> >   *
> >   * array size should be in sync with the declaration in the wil6210.h
> For files in net/ and drivers/net/ the preferred style for long (multi-line)
> comments is a different and
> the text should be in the same line as /*, as follows:
> /* sparrow_fw_mapping provides memory remapping table for sparrow
> I would also remove the @ from @sparrow_fw_mapping.
> This comment is also applicable for the rest of such documentation blocks
> changed in this patch.

Sounds fair.  Will also fix.

Thank you.
Kalle Valo Sept. 1, 2020, 9:14 a.m. UTC | #4
Lee Jones <lee.jones@linaro.org> writes:

> This set is part of a larger effort attempting to clean-up W=1

> kernel builds, which are currently overwhelmingly riddled with

> niggly little warnings.

>

> There are quite a few W=1 warnings in the Wireless.  My plan

> is to work through all of them over the next few weeks.

> Hopefully it won't be too long before drivers/net/wireless

> builds clean with W=1 enabled.


BTW, now the patches are in random order and it's quite annoying to
review when there's no logic. Grouping them by the driver would be a lot
more pleasent for reviewers.

-- 
https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
Lee Jones Sept. 8, 2020, 8:46 a.m. UTC | #5
On Tue, 01 Sep 2020, Kalle Valo wrote:

> Lee Jones <lee.jones@linaro.org> writes:

> 

> > This set is part of a larger effort attempting to clean-up W=1

> > kernel builds, which are currently overwhelmingly riddled with

> > niggly little warnings.

> >

> > There are quite a few W=1 warnings in the Wireless.  My plan

> > is to work through all of them over the next few weeks.

> > Hopefully it won't be too long before drivers/net/wireless

> > builds clean with W=1 enabled.

> 

> BTW, now the patches are in random order and it's quite annoying to

> review when there's no logic. Grouping them by the driver would be a lot

> more pleasent for reviewers.


My script makes a best effort attempt to group changes by file.  It
takes the first warning presented by the compiler then greps the
output for all issues pertaining to that file.  I then split the patch
by issue (i.e. different patches for; kernel-doc, unused variables,
bracketing etc).

One issue you might be seeing is the potential for one fixed issue to
cause another i.e. when one unused variable is removed which was the
only user of another, leading to a subsequent fix of the newly unused
variable.

Other than that, I'm not sure why they would end up out of order.

-- 
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog