mbox series

[GIT,PULL,mlx5-next] Introduce auxiliary bus IRQs sysfs

Message ID 20240711213140.256997-1-saeed@kernel.org (mailing list archive)
State Not Applicable
Headers show
Series [GIT,PULL,mlx5-next] Introduce auxiliary bus IRQs sysfs | expand

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux.git tags/aux-sysfs-irqs

Message

Saeed Mahameed July 11, 2024, 9:31 p.m. UTC
From: Saeed Mahameed <saeedm@nvidia.com>

Hi Jakub and Greg,

Following the review of v10 and Greg's request to send this via netdev.
This is a pull request that includes the 2 patches of adding IRQs sysfs
to aux dev subsystem based on mlx5-next tree (6.10-rc3).

v10: https://lore.kernel.org/all/2024071041-frosted-stonework-2c60@gregkh/

Please pull and let me know if there's any problem.

The following changes since commit b339e0a39dc37726712b9f0485d78fe4306d1667:

  RDMA/mlx5: Add Qcounters req_transport_retries_exceeded/req_rnr_retries_exceeded (2024-06-16 18:53:23 +0300)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux.git tags/aux-sysfs-irqs

for you to fetch changes up to 587aebb80370c9cdea106e5870025ad70114a2ed:

  net/mlx5: Expose SFs IRQs (2024-07-11 13:52:16 -0700)

----------------------------------------------------------------
aux-sysfs-irqs

Shay Says:
==========
Introduce auxiliary bus IRQs sysfs

Today, PCI PFs and VFs, which are anchored on the PCI bus, display their
IRQ information in the <pci_device>/msi_irqs/<irq_num> sysfs files.  PCI
subfunctions (SFs) are similar to PFs and VFs and these SFs are anchored
on the auxiliary bus. However, these PCI SFs lack such IRQ information
on the auxiliary bus, leaving users without visibility into which IRQs
are used by the SFs. This absence makes it impossible to debug
situations and to understand the source of interrupts/SFs for
performance tuning and debug.

Additionally, the SFs are multifunctional devices supporting RDMA,
network devices, clocks, and more, similar to their peer PCI PFs and
VFs. Therefore, it is desirable to have SFs' IRQ information available
at the bus/device level.

To overcome the above limitations, this short series extends the
auxiliary bus to display IRQ information in sysfs, similar to that of
PFs and VFs.

It adds an 'irqs' directory under the auxiliary device and includes an
<irq_num> sysfs file within it.

For example:
$ ls /sys/bus/auxiliary/devices/mlx5_core.sf.1/irqs/
50  51  52  53  54  55  56  57  58

Patch summary:
patch-1 adds auxiliary bus to support irqs used by auxiliary device
patch-2 mlx5 driver using exposing irqs for PCI SF devices via auxiliary
        bus

==========

----------------------------------------------------------------
Shay Drory (2):
      driver core: auxiliary bus: show auxiliary device IRQs
      net/mlx5: Expose SFs IRQs

 Documentation/ABI/testing/sysfs-bus-auxiliary      |   9 ++
 drivers/base/Makefile                              |   1 +
 drivers/base/auxiliary.c                           |   1 +
 drivers/base/auxiliary_sysfs.c                     | 113 +++++++++++++++++++++
 drivers/net/ethernet/mellanox/mlx5/core/eq.c       |   6 +-
 .../net/ethernet/mellanox/mlx5/core/irq_affinity.c |  18 +++-
 .../net/ethernet/mellanox/mlx5/core/mlx5_core.h    |   6 ++
 drivers/net/ethernet/mellanox/mlx5/core/mlx5_irq.h |  12 ++-
 drivers/net/ethernet/mellanox/mlx5/core/pci_irq.c  |  12 ++-
 include/linux/auxiliary_bus.h                      |  24 +++++
 10 files changed, 191 insertions(+), 11 deletions(-)
 create mode 100644 Documentation/ABI/testing/sysfs-bus-auxiliary
 create mode 100644 drivers/base/auxiliary_sysfs.c

Comments

Jakub Kicinski July 13, 2024, 10:51 p.m. UTC | #1
On Thu, 11 Jul 2024 14:31:38 -0700 Saeed Mahameed wrote:
> Following the review of v10 and Greg's request to send this via netdev.
> This is a pull request that includes the 2 patches of adding IRQs sysfs
> to aux dev subsystem based on mlx5-next tree (6.10-rc3).
> 
> v10: https://lore.kernel.org/all/2024071041-frosted-stonework-2c60@gregkh/
> 
> Please pull and let me know if there's any problem.

Hi Saeed, when I pull this I get:

  net/mlx5: Reimplement write combining test
  RDMA/mlx5: Add Qcounters req_transport_retries_exceeded/req_rnr_retries_exceeded
  driver core: auxiliary bus: show auxiliary device IRQs
  net/mlx5: Expose SFs IRQs

and the subject says mlx5-next, so please confirm if you want me to
pull this or there's another plan..
Saeed Mahameed July 15, 2024, 5:56 p.m. UTC | #2
On 13 Jul 15:51, Jakub Kicinski wrote:
>On Thu, 11 Jul 2024 14:31:38 -0700 Saeed Mahameed wrote:
>> Following the review of v10 and Greg's request to send this via netdev.
>> This is a pull request that includes the 2 patches of adding IRQs sysfs
>> to aux dev subsystem based on mlx5-next tree (6.10-rc3).
>>
>> v10: https://lore.kernel.org/all/2024071041-frosted-stonework-2c60@gregkh/
>>
>> Please pull and let me know if there's any problem.
>
>Hi Saeed, when I pull this I get:
>
>  net/mlx5: Reimplement write combining test
>  RDMA/mlx5: Add Qcounters req_transport_retries_exceeded/req_rnr_retries_exceeded

Hi Kuba.
I thought Leon already sent one pull request with those, but maybe I was
mistaken, anyway they are needed for RDMA, this is why they are part of
mlx5-next. 

So yes please pull.

>  driver core: auxiliary bus: show auxiliary device IRQs
>  net/mlx5: Expose SFs IRQs
>
>and the subject says mlx5-next, so please confirm if you want me to
>pull this or there's another plan..

I see how this can be confusing, next time I will remove mlx5-next from
inside the brackets :).

Thanks,
Saeed.
patchwork-bot+netdevbpf@kernel.org July 15, 2024, 7:50 p.m. UTC | #3
Hello:

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

On Thu, 11 Jul 2024 14:31:38 -0700 you wrote:
> From: Saeed Mahameed <saeedm@nvidia.com>
> 
> Hi Jakub and Greg,
> 
> Following the review of v10 and Greg's request to send this via netdev.
> This is a pull request that includes the 2 patches of adding IRQs sysfs
> to aux dev subsystem based on mlx5-next tree (6.10-rc3).
> 
> [...]

Here is the summary with links:
  - [GIT,PULL,mlx5-next] Introduce auxiliary bus IRQs sysfs
    https://git.kernel.org/netdev/net-next/c/dd3cd3ca691d
  - [mlx5-next,2/2] net/mlx5: Expose SFs IRQs
    (no matching commit)

You are awesome, thank you!