Netdev List
 help / color / mirror / Atom feed
From: Przemek Kitszel <przemyslaw.kitszel@intel.com>
To: Shay Drory <shayd@nvidia.com>
Cc: <rafael@kernel.org>, <ira.weiny@intel.com>,
	<netdev@vger.kernel.org>, <pabeni@redhat.com>,
	<davem@davemloft.net>, <kuba@kernel.org>, <edumazet@google.com>,
	<gregkh@linuxfoundation.org>, <david.m.ertman@intel.com>,
	<linux-rdma@vger.kernel.org>, <leon@kernel.org>,
	<tariqt@nvidia.com>
Subject: Re: [PATCH net-next v10 0/2] Introduce auxiliary bus IRQs sysfs
Date: Wed, 10 Jul 2024 16:19:38 +0200	[thread overview]
Message-ID: <9b9d0088-7773-41bd-b36f-de60ce4a7589@intel.com> (raw)
In-Reply-To: <20240708055537.1014744-1-shayd@nvidia.com>

On 7/8/24 07:55, Shay Drory wrote:
> 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
> 
> ---
> v9-v10:
> - remove Przemek RB

no need to drop my RB after you had one and applied my additional
suggestion ;), for the record, the diff is still fine, for the series:
Reviewed-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>

and congrats for the patience!

> - add name field to auxiliary_irq_info (Greg and Przemek)
> - handle bogus IRQ in auxiliary_device_sysfs_irq_remove (Greg)
> v8-v9:
> - add Przemek RB
> - use guard() in auxiliary_irq_dir_prepare (Paolo)
> v7-v8:
> - use cleanup.h for info and name fields (Greg)
> - correct error flow in auxiliary_irq_dir_prepare (Przemek)
> - add documentation for new fields of auxiliary_device (Simon)
> v6->v7:
> - dynamically creating irqs directory when first irq file created, patch #1 (Greg).
> - removed irqs flag and simplified the dev_add() API, patch #1 (Greg).
> - move sysfs related new code to a new auxiliary_sysfs.c file, patch #1 (Greg).
> v5->v6:
> - fix error flow in patch #2 (Przemek and Parav).
> - remove concept of shared and exclusive and hence global xarray in patch #1 (Greg).
> v4->v5:
> - addressed comments from Greg in patch #1.
> v3->4:
> - addressed comments from Przemek in patch #1.
> v2->v3:
> - addressed comments from Parav and Przemek in patch #1.
> - fixed a bug in patch #2.
> v1->v2:
> - addressed comments from Greg, Simon H and kernel test boot in patch #1.
> 
> 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 +-
>   .../mellanox/mlx5/core/irq_affinity.c         |  18 ++-
>   .../ethernet/mellanox/mlx5/core/mlx5_core.h   |   6 +
>   .../ethernet/mellanox/mlx5/core/mlx5_irq.h    |  12 +-
>   .../net/ethernet/mellanox/mlx5/core/pci_irq.c |  12 +-
>   include/linux/auxiliary_bus.h                 |  22 ++++
>   10 files changed, 189 insertions(+), 11 deletions(-)
>   create mode 100644 Documentation/ABI/testing/sysfs-bus-auxiliary
>   create mode 100644 drivers/base/auxiliary_sysfs.c
> 


      parent reply	other threads:[~2024-07-10 14:19 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-08  5:55 [PATCH net-next v10 0/2] Introduce auxiliary bus IRQs sysfs Shay Drory
2024-07-08  5:55 ` [PATCH net-next v10 1/2] driver core: auxiliary bus: show auxiliary device IRQs Shay Drory
2024-07-10 13:01   ` Greg KH
2024-07-08  5:55 ` [PATCH net-next v10 2/2] net/mlx5: Expose SFs IRQs Shay Drory
2024-07-10 14:19 ` Przemek Kitszel [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=9b9d0088-7773-41bd-b36f-de60ce4a7589@intel.com \
    --to=przemyslaw.kitszel@intel.com \
    --cc=davem@davemloft.net \
    --cc=david.m.ertman@intel.com \
    --cc=edumazet@google.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=ira.weiny@intel.com \
    --cc=kuba@kernel.org \
    --cc=leon@kernel.org \
    --cc=linux-rdma@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=rafael@kernel.org \
    --cc=shayd@nvidia.com \
    --cc=tariqt@nvidia.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox