* [PATCH net v3 0/2][pull request] Intel Wired LAN Driver Updates 2023-01-20 (ice)
@ 2023-01-20 21:12 Tony Nguyen
2023-01-20 21:12 ` [PATCH net v3 1/2] ice: Prevent set_channel from changing queues while RDMA active Tony Nguyen
2023-01-20 21:12 ` [PATCH net v3 2/2] ice: Fix broken link in ice NAPI doc Tony Nguyen
0 siblings, 2 replies; 4+ messages in thread
From: Tony Nguyen @ 2023-01-20 21:12 UTC (permalink / raw)
To: davem, kuba, pabeni, edumazet; +Cc: Tony Nguyen, netdev
This series contains updates to ice driver only.
Dave prevents modifying channels when RDMA is active as this will break
RDMA traffic.
Michal fixes a broken URL.
---
v3:
- Reduced scope of lock in patch 1 to avoid double lock
- Dropped, previous, patch 2
v2: https://lore.kernel.org/netdev/20230103230738.1102585-1-anthony.l.nguyen@intel.com/
- Dropped, previous, patch 1.
- Replace RDMA patch to disallow change instead of replugging aux device
v1: https://lore.kernel.org/netdev/20221207211040.1099708-1-anthony.l.nguyen@intel.com/
The following are changes since commit 45a919bbb21c642e0c34dac483d1e003560159dc:
Revert "Merge branch 'octeontx2-af-CPT'"
and are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/net-queue 100GbE
Dave Ertman (1):
ice: Prevent set_channel from changing queues while RDMA active
Michal Wilczynski (1):
ice: Fix broken link in ice NAPI doc
.../networking/device_drivers/ethernet/intel/ice.rst | 2 +-
drivers/net/ethernet/intel/ice/ice_ethtool.c | 8 ++++++++
2 files changed, 9 insertions(+), 1 deletion(-)
--
2.38.1
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH net v3 1/2] ice: Prevent set_channel from changing queues while RDMA active
2023-01-20 21:12 [PATCH net v3 0/2][pull request] Intel Wired LAN Driver Updates 2023-01-20 (ice) Tony Nguyen
@ 2023-01-20 21:12 ` Tony Nguyen
2023-01-22 12:37 ` Leon Romanovsky
2023-01-20 21:12 ` [PATCH net v3 2/2] ice: Fix broken link in ice NAPI doc Tony Nguyen
1 sibling, 1 reply; 4+ messages in thread
From: Tony Nguyen @ 2023-01-20 21:12 UTC (permalink / raw)
To: davem, kuba, pabeni, edumazet
Cc: Dave Ertman, netdev, anthony.l.nguyen, leonro, Michal Swiatkowski,
Gurucharan G
From: Dave Ertman <david.m.ertman@intel.com>
The PF controls the set of queues that the RDMA auxiliary_driver requests
resources from. The set_channel command will alter that pool and trigger a
reconfiguration of the VSI, which breaks RDMA functionality.
Prevent set_channel from executing when RDMA driver bound to auxiliary
device.
Fixes: 348048e724a0 ("ice: Implement iidc operations")
Co-developed-by: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
Signed-off-by: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
Signed-off-by: Dave Ertman <david.m.ertman@intel.com>
Tested-by: Gurucharan G <gurucharanx.g@intel.com> (A Contingent worker at Intel)
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/ice/ice_ethtool.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/net/ethernet/intel/ice/ice_ethtool.c b/drivers/net/ethernet/intel/ice/ice_ethtool.c
index 4191994d8f3a..16006eedfceb 100644
--- a/drivers/net/ethernet/intel/ice/ice_ethtool.c
+++ b/drivers/net/ethernet/intel/ice/ice_ethtool.c
@@ -3705,6 +3705,14 @@ static int ice_set_channels(struct net_device *dev, struct ethtool_channels *ch)
return -EINVAL;
}
+ mutex_lock(&pf->adev_mutex);
+ if (pf->adev && pf->adev->dev.driver) {
+ netdev_err(dev, "Cannot change channels when RDMA is active\n");
+ mutex_unlock(&pf->adev_mutex);
+ return -EINVAL;
+ }
+ mutex_unlock(&pf->adev_mutex);
+
ice_vsi_recfg_qs(vsi, new_rx, new_tx);
if (!netif_is_rxfh_configured(dev))
--
2.38.1
^ permalink raw reply related [flat|nested] 4+ messages in thread* Re: [PATCH net v3 1/2] ice: Prevent set_channel from changing queues while RDMA active
2023-01-20 21:12 ` [PATCH net v3 1/2] ice: Prevent set_channel from changing queues while RDMA active Tony Nguyen
@ 2023-01-22 12:37 ` Leon Romanovsky
0 siblings, 0 replies; 4+ messages in thread
From: Leon Romanovsky @ 2023-01-22 12:37 UTC (permalink / raw)
To: Tony Nguyen
Cc: davem, kuba, pabeni, edumazet, Dave Ertman, netdev,
Michal Swiatkowski, Gurucharan G
On Fri, Jan 20, 2023 at 01:12:30PM -0800, Tony Nguyen wrote:
> From: Dave Ertman <david.m.ertman@intel.com>
>
> The PF controls the set of queues that the RDMA auxiliary_driver requests
> resources from. The set_channel command will alter that pool and trigger a
> reconfiguration of the VSI, which breaks RDMA functionality.
>
> Prevent set_channel from executing when RDMA driver bound to auxiliary
> device.
>
> Fixes: 348048e724a0 ("ice: Implement iidc operations")
> Co-developed-by: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
> Signed-off-by: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
> Signed-off-by: Dave Ertman <david.m.ertman@intel.com>
> Tested-by: Gurucharan G <gurucharanx.g@intel.com> (A Contingent worker at Intel)
> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
> ---
> drivers/net/ethernet/intel/ice/ice_ethtool.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/drivers/net/ethernet/intel/ice/ice_ethtool.c b/drivers/net/ethernet/intel/ice/ice_ethtool.c
> index 4191994d8f3a..16006eedfceb 100644
> --- a/drivers/net/ethernet/intel/ice/ice_ethtool.c
> +++ b/drivers/net/ethernet/intel/ice/ice_ethtool.c
> @@ -3705,6 +3705,14 @@ static int ice_set_channels(struct net_device *dev, struct ethtool_channels *ch)
> return -EINVAL;
> }
>
> + mutex_lock(&pf->adev_mutex);
> + if (pf->adev && pf->adev->dev.driver) {
adev_mutex protects pf->adev, but not .driver, isn't it?
> + netdev_err(dev, "Cannot change channels when RDMA is active\n");
> + mutex_unlock(&pf->adev_mutex);
> + return -EINVAL;
> + }
> + mutex_unlock(&pf->adev_mutex);
> +
> ice_vsi_recfg_qs(vsi, new_rx, new_tx);
>
> if (!netif_is_rxfh_configured(dev))
> --
> 2.38.1
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH net v3 2/2] ice: Fix broken link in ice NAPI doc
2023-01-20 21:12 [PATCH net v3 0/2][pull request] Intel Wired LAN Driver Updates 2023-01-20 (ice) Tony Nguyen
2023-01-20 21:12 ` [PATCH net v3 1/2] ice: Prevent set_channel from changing queues while RDMA active Tony Nguyen
@ 2023-01-20 21:12 ` Tony Nguyen
1 sibling, 0 replies; 4+ messages in thread
From: Tony Nguyen @ 2023-01-20 21:12 UTC (permalink / raw)
To: davem, kuba, pabeni, edumazet
Cc: Michal Wilczynski, netdev, anthony.l.nguyen, corbet, linux-doc,
Jesse Brandeburg
From: Michal Wilczynski <michal.wilczynski@intel.com>
Current link for NAPI documentation in ice driver doesn't work - it
returns 404. Update the link to the working one.
Signed-off-by: Michal Wilczynski <michal.wilczynski@intel.com>
Acked-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
Documentation/networking/device_drivers/ethernet/intel/ice.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Documentation/networking/device_drivers/ethernet/intel/ice.rst b/Documentation/networking/device_drivers/ethernet/intel/ice.rst
index dc2e60ced927..b481b81f3be5 100644
--- a/Documentation/networking/device_drivers/ethernet/intel/ice.rst
+++ b/Documentation/networking/device_drivers/ethernet/intel/ice.rst
@@ -819,7 +819,7 @@ NAPI
----
This driver supports NAPI (Rx polling mode).
For more information on NAPI, see
-https://www.linuxfoundation.org/collaborate/workgroups/networking/napi
+https://wiki.linuxfoundation.org/networking/napi
MACVLAN
--
2.38.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2023-01-22 12:37 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-01-20 21:12 [PATCH net v3 0/2][pull request] Intel Wired LAN Driver Updates 2023-01-20 (ice) Tony Nguyen
2023-01-20 21:12 ` [PATCH net v3 1/2] ice: Prevent set_channel from changing queues while RDMA active Tony Nguyen
2023-01-22 12:37 ` Leon Romanovsky
2023-01-20 21:12 ` [PATCH net v3 2/2] ice: Fix broken link in ice NAPI doc Tony Nguyen
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.