mbox series

[v2,net-next,0/5] Eliminate CONFIG_NR_CPUS dependency in dpaa-eth and enable COMPILE_TEST in fsl_qbman

Message ID 20240713225336.1746343-1-vladimir.oltean@nxp.com (mailing list archive)
Headers show
Series Eliminate CONFIG_NR_CPUS dependency in dpaa-eth and enable COMPILE_TEST in fsl_qbman | expand

Message

Vladimir Oltean July 13, 2024, 10:53 p.m. UTC
Breno's previous attempt at enabling COMPILE_TEST for the fsl_qbman
driver (now included here as patch 5/5) triggered compilation warnings
for large CONFIG_NR_CPUS values:
https://lore.kernel.org/all/202406261920.l5pzM1rj-lkp@intel.com/

Patch 1/5 switches two NR_CPUS arrays in the dpaa-eth driver to dynamic
allocation to avoid that warning. There is more NR_CPUS usage in the
fsl-qbman driver, but that looks relatively harmless and I couldn't find
a good reason to change it.

I noticed, while testing, that the driver doesn't actually work properly
with high CONFIG_NR_CPUS values, and patch 2/5 addresses that.

During code analysis, I have identified two places which treat
conditions that can never happen. Patches 3/5 and 4/5 simplify the
probing code - dpaa_fq_setup() - just a little bit.

Finally we have at 5/5 the patch that triggered all of this. There is
an okay from Herbert to take it via netdev, despite it being on soc/qbman:
https://lore.kernel.org/all/Zns%2FeVVBc7pdv0yM@gondor.apana.org.au/

v1->v2 change log:
- Return -ENOMEM in dpaa_eth_probe() if devm_kcalloc() fails - Jakub

Link to v1:
https://lore.kernel.org/netdev/20240710230025.46487-1-vladimir.oltean@nxp.com/

Breno Leitao (1):
  soc: fsl: qbman: FSL_DPAA depends on COMPILE_TEST

Vladimir Oltean (4):
  net: dpaa: avoid on-stack arrays of NR_CPUS elements
  net: dpaa: eliminate NR_CPUS dependency in egress_fqs[] and conf_fqs[]
  net: dpaa: stop ignoring TX queues past the number of CPUs
  net: dpaa: no need to make sure all CPUs receive a corresponding Tx
    queue

 .../net/ethernet/freescale/dpaa/dpaa_eth.c    | 76 +++++++++++--------
 .../net/ethernet/freescale/dpaa/dpaa_eth.h    | 20 +++--
 .../ethernet/freescale/dpaa/dpaa_ethtool.c    | 10 ++-
 drivers/soc/fsl/qbman/Kconfig                 |  2 +-
 4 files changed, 69 insertions(+), 39 deletions(-)

Comments

patchwork-bot+netdevbpf@kernel.org July 15, 2024, 3:40 a.m. UTC | #1
Hello:

This series was applied to netdev/net-next.git (main)
by Jakub Kicinski <kuba@kernel.org>:

On Sun, 14 Jul 2024 01:53:31 +0300 you wrote:
> Breno's previous attempt at enabling COMPILE_TEST for the fsl_qbman
> driver (now included here as patch 5/5) triggered compilation warnings
> for large CONFIG_NR_CPUS values:
> https://lore.kernel.org/all/202406261920.l5pzM1rj-lkp@intel.com/
> 
> Patch 1/5 switches two NR_CPUS arrays in the dpaa-eth driver to dynamic
> allocation to avoid that warning. There is more NR_CPUS usage in the
> fsl-qbman driver, but that looks relatively harmless and I couldn't find
> a good reason to change it.
> 
> [...]

Here is the summary with links:
  - [v2,net-next,1/5] net: dpaa: avoid on-stack arrays of NR_CPUS elements
    https://git.kernel.org/netdev/net-next/c/555a05d84ca2
  - [v2,net-next,2/5] net: dpaa: eliminate NR_CPUS dependency in egress_fqs[] and conf_fqs[]
    https://git.kernel.org/netdev/net-next/c/e7072750bbcb
  - [v2,net-next,3/5] net: dpaa: stop ignoring TX queues past the number of CPUs
    https://git.kernel.org/netdev/net-next/c/e3672a6d5e89
  - [v2,net-next,4/5] net: dpaa: no need to make sure all CPUs receive a corresponding Tx queue
    https://git.kernel.org/netdev/net-next/c/6d2338205d78
  - [v2,net-next,5/5] soc: fsl: qbman: FSL_DPAA depends on COMPILE_TEST
    https://git.kernel.org/netdev/net-next/c/782fe08e9861

You are awesome, thank you!