[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <be60aa0f-2659-d32b-646a-ce696db4c064@intel.com>
Date: Wed, 30 Oct 2024 10:47:46 +0200
From: "Lifshits, Vitaly" <vitaly.lifshits@...el.com>
To: Joe Damato <jdamato@...tly.com>, <netdev@...r.kernel.org>
CC: <jacob.e.keller@...el.com>, <kurt@...utronix.de>,
<vinicius.gomes@...el.com>, Tony Nguyen <anthony.l.nguyen@...el.com>,
"Przemek Kitszel" <przemyslaw.kitszel@...el.com>, Andrew Lunn
<andrew+netdev@...n.ch>, "David S. Miller" <davem@...emloft.net>, Eric
Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>, Paolo Abeni
<pabeni@...hat.com>, "moderated list:INTEL ETHERNET DRIVERS"
<intel-wired-lan@...ts.osuosl.org>, open list <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH iwl-next v6 1/2] igc: Link IRQs to NAPI instances
On 10/29/2024 10:12 PM, Joe Damato wrote:
> Link IRQs to NAPI instances via netdev-genl API so that users can query
> this information with netlink.
>
> Compare the output of /proc/interrupts (noting that IRQ 128 is the
> "other" IRQ which does not appear to have a NAPI instance):
>
> $ cat /proc/interrupts | grep enp86s0 | cut --delimiter=":" -f1
> 128
> 129
> 130
> 131
> 132
>
> The output from netlink shows the mapping of NAPI IDs to IRQs (again
> noting that 128 is absent as it is the "other" IRQ):
>
> $ ./tools/net/ynl/cli.py --spec Documentation/netlink/specs/netdev.yaml \
> --dump napi-get --json='{"ifindex": 2}'
>
> [{'defer-hard-irqs': 0,
> 'gro-flush-timeout': 0,
> 'id': 8196,
> 'ifindex': 2,
> 'irq': 132},
> {'defer-hard-irqs': 0,
> 'gro-flush-timeout': 0,
> 'id': 8195,
> 'ifindex': 2,
> 'irq': 131},
> {'defer-hard-irqs': 0,
> 'gro-flush-timeout': 0,
> 'id': 8194,
> 'ifindex': 2,
> 'irq': 130},
> {'defer-hard-irqs': 0,
> 'gro-flush-timeout': 0,
> 'id': 8193,
> 'ifindex': 2,
> 'irq': 129}]
>
> Signed-off-by: Joe Damato <jdamato@...tly.com>
Reviewed-by: Vitaly Lifshits <vitaly.lifshits@...el.com>
> ---
> v4:
> - Fix typo in commit message (replacing 144 with 128)
>
> v2:
> - Line wrap at 80 characters
>
> drivers/net/ethernet/intel/igc/igc_main.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/net/ethernet/intel/igc/igc_main.c b/drivers/net/ethernet/intel/igc/igc_main.c
> index 6e70bca15db1..7964bbedb16c 100644
> --- a/drivers/net/ethernet/intel/igc/igc_main.c
> +++ b/drivers/net/ethernet/intel/igc/igc_main.c
> @@ -5576,6 +5576,9 @@ static int igc_request_msix(struct igc_adapter *adapter)
> q_vector);
> if (err)
> goto err_free;
> +
> + netif_napi_set_irq(&q_vector->napi,
> + adapter->msix_entries[vector].vector);
> }
>
> igc_configure_msix(adapter);
>
Powered by blists - more mailing lists