From: <edward.cree@amd.com>
To: <linux-net-drivers@amd.com>, <davem@davemloft.net>,
<kuba@kernel.org>, <edumazet@google.com>, <pabeni@redhat.com>
Cc: Edward Cree <ecree.xilinx@gmail.com>, <netdev@vger.kernel.org>,
<habetsm.xilinx@gmail.com>, <sudheer.mogilappagari@intel.com>,
<jdamato@fastly.com>, <mw@semihalf.com>, <linux@armlinux.org.uk>,
<sgoutham@marvell.com>, <gakula@marvell.com>,
<sbhatta@marvell.com>, <hkelam@marvell.com>, <saeedm@nvidia.com>,
<leon@kernel.org>, <jacob.e.keller@intel.com>, <andrew@lunn.ch>,
<ahmed.zaki@intel.com>
Subject: [PATCH v6 net-next 0/9] ethtool: track custom RSS contexts in the core
Date: Thu, 20 Jun 2024 06:47:03 +0100 [thread overview]
Message-ID: <cover.1718862049.git.ecree.xilinx@gmail.com> (raw)
From: Edward Cree <ecree.xilinx@gmail.com>
Make the core responsible for tracking the set of custom RSS contexts,
their IDs, indirection tables, hash keys, and hash functions; this
lets us get rid of duplicative code in drivers, and will allow us to
support netlink dumps later.
This series only moves the sfc EF10 & EF100 driver over to the new API;
other drivers (mvpp2, octeontx2, mlx5, sfc/siena) can be converted afterwards
and the legacy API removed.
Changes in v6:
* fixed kdoc for renamed fields
* always call setter in netdev_rss_contexts_free()
* document that 'create' method should populate ctx for driver-chosen defaults
* on 'ethtool -x', get info from the tracking xarray rather than calling the
driver's get_rxfh method. This makes it easier to test that the tracking is
correct, in the absence of future code like netlink dumps to use it.
Changes in v5:
* Rebased on top of Ahmed Zaki's struct ethtool_rxfh_param API
* Moved rxfh_max_context_id to the ethtool ops struct
Changes in v4:
* replaced IDR with XArray
* grouped initialisations together in patch 6
* dropped RFC tags
Changes in v3:
* Added WangXun ngbe to patch #1, not sure if they've added WoL support since
v2 or if I just missed it last time around
* Re-ordered struct ethtool_netdev_state to avoid hole (Andrew Lunn)
* Fixed some resource leaks in error handling paths (kuba)
* Added maintainers of other context-using drivers to CC
Edward Cree (9):
net: move ethtool-related netdev state into its own struct
net: ethtool: attach an XArray of custom RSS contexts to a netdevice
net: ethtool: record custom RSS contexts in the XArray
net: ethtool: let the core choose RSS context IDs
net: ethtool: add an extack parameter to new rxfh_context APIs
net: ethtool: add a mutex protecting RSS contexts
sfc: use new rxfh_context API
net: ethtool: use the tracking array for get_rxfh on custom RSS
contexts
sfc: remove get_rxfh_context dead code
drivers/net/ethernet/realtek/r8169_main.c | 4 +-
drivers/net/ethernet/sfc/ef10.c | 2 +-
drivers/net/ethernet/sfc/ef100_ethtool.c | 4 +
drivers/net/ethernet/sfc/efx.c | 2 +-
drivers/net/ethernet/sfc/efx.h | 2 +-
drivers/net/ethernet/sfc/efx_common.c | 10 +-
drivers/net/ethernet/sfc/ethtool.c | 4 +
drivers/net/ethernet/sfc/ethtool_common.c | 168 ++++++++----------
drivers/net/ethernet/sfc/ethtool_common.h | 12 ++
drivers/net/ethernet/sfc/mcdi_filters.c | 135 +++++++-------
drivers/net/ethernet/sfc/mcdi_filters.h | 8 +-
drivers/net/ethernet/sfc/net_driver.h | 28 +--
drivers/net/ethernet/sfc/rx_common.c | 64 ++-----
drivers/net/ethernet/sfc/rx_common.h | 8 +-
.../net/ethernet/wangxun/ngbe/ngbe_ethtool.c | 4 +-
drivers/net/ethernet/wangxun/ngbe/ngbe_main.c | 2 +-
drivers/net/phy/phy.c | 2 +-
drivers/net/phy/phy_device.c | 5 +-
drivers/net/phy/phylink.c | 2 +-
include/linux/ethtool.h | 110 ++++++++++++
include/linux/netdevice.h | 7 +-
net/core/dev.c | 40 +++++
net/ethtool/ioctl.c | 135 +++++++++++++-
net/ethtool/wol.c | 2 +-
24 files changed, 495 insertions(+), 265 deletions(-)
next reply other threads:[~2024-06-20 5:48 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-20 5:47 edward.cree [this message]
2024-06-20 5:47 ` [PATCH v6 net-next 1/9] net: move ethtool-related netdev state into its own struct edward.cree
2024-06-20 5:47 ` [PATCH v6 net-next 2/9] net: ethtool: attach an XArray of custom RSS contexts to a netdevice edward.cree
2024-06-20 5:47 ` [PATCH v6 net-next 3/9] net: ethtool: record custom RSS contexts in the XArray edward.cree
2024-06-20 6:32 ` Przemek Kitszel
2024-06-20 6:37 ` Edward Cree
2024-06-25 7:17 ` Przemek Kitszel
2024-06-25 9:27 ` Edward Cree
2024-06-25 13:39 ` Edward Cree
2024-06-26 9:05 ` Przemek Kitszel
2024-06-27 14:24 ` Edward Cree
2024-06-28 12:15 ` Przemek Kitszel
2024-06-20 5:47 ` [PATCH v6 net-next 4/9] net: ethtool: let the core choose RSS context IDs edward.cree
2024-06-20 5:47 ` [PATCH v6 net-next 5/9] net: ethtool: add an extack parameter to new rxfh_context APIs edward.cree
2024-06-20 5:47 ` [PATCH v6 net-next 6/9] net: ethtool: add a mutex protecting RSS contexts edward.cree
2024-06-20 5:47 ` [PATCH v6 net-next 7/9] sfc: use new rxfh_context API edward.cree
2024-06-20 5:47 ` [PATCH v6 net-next 8/9] net: ethtool: use the tracking array for get_rxfh on custom RSS contexts edward.cree
2024-06-20 19:42 ` Simon Horman
2024-06-24 13:31 ` Edward Cree
2024-06-20 5:47 ` [PATCH v6 net-next 9/9] sfc: remove get_rxfh_context dead code edward.cree
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=cover.1718862049.git.ecree.xilinx@gmail.com \
--to=edward.cree@amd.com \
--cc=ahmed.zaki@intel.com \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=ecree.xilinx@gmail.com \
--cc=edumazet@google.com \
--cc=gakula@marvell.com \
--cc=habetsm.xilinx@gmail.com \
--cc=hkelam@marvell.com \
--cc=jacob.e.keller@intel.com \
--cc=jdamato@fastly.com \
--cc=kuba@kernel.org \
--cc=leon@kernel.org \
--cc=linux-net-drivers@amd.com \
--cc=linux@armlinux.org.uk \
--cc=mw@semihalf.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=saeedm@nvidia.com \
--cc=sbhatta@marvell.com \
--cc=sgoutham@marvell.com \
--cc=sudheer.mogilappagari@intel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.