
This commit updates i40e, iavf and ice device drivers to the following versions, refreshes StarlingX patches and resolves a build failure for the ice device driver with the v5.10 kernel: * i40e 2.16.11 * iavf 4.2.7 * ice 1.6.7 While refreshing the patches, the format and original author attribution of the following i40e patch were fixed: i40e-Enable-getting-link-status-from-VF.patch The following iavf patch was found to be no longer necessary, so it is dropped: 0001-Fix-build-issues.patch Furthermore, we noticed that enabling PREEMPT_RT causes CONFIG_NET_RX_BUSY_POLL to be disabled with recent kernels; however, the XDP code in the ice driver depends on the napi_busy_loop function made available by CONFIG_NET_RX_BUSY_POLL. This in turn results in a build failure. The following patch resolves this issue, and the validity of this patch was confirmed by colleagues at Intel: 0001-ice_xsk-Avoid-dependency-on-napi_busy_loop-with-PREE.patch Verification: This commit has gone through informal tests by one of the commit authors on a system with a Fortville/X710 network controller (which requires the i40e driver). Formal regression tests were carried out by colleagues in the verification team at Wind River, exercising ice, i40e and iavf device drivers. The titles of these regression test cases are as follows: * test_sriovdp_netdev_single_pod[1-True-1-lock/unlock] * test_sriovdp_netdev_single_pod[max-True-1-lock/unlock] * test_sriovdp_netdev_single_pod[1-True-1-reboot] * test_sriovdp_netdev_single_pod[max-True-1-reboot] * test_sriovdp_netdev_connectivity[1-1-calico-ipam-6] * test_sriovdp_netdev_connectivity[1-1-host-local-6] * test_sriovdp_netdev_ipv6_single_pod * test_sriov_pod_to_pod_netdevice_ping_iperf[1] * test_sriovdp_exceed_max_vf * test_sriovdp_pending_pod[netdevice] * test_sriovdp_resource_allocation[netdevice] * test_sriovdp_replicas_same_network[netdevice] * test_add_delete_vf_interface * test_verify_vfs_cannot_be_created_over_data_interface * test_verify_class_modification_when_vf_interface_configured Credits: Work on this patch was started by Jiping Ma. M. Vefa Bicakci refreshed the i40e patches, and prepared the changes for code review. Thanks to the colleagues in the verification team for their help with the regression tests. Story: 2008921 Task: 43665 Signed-off-by: Jiping Ma <jiping.ma2@windriver.com> Signed-off-by: M. Vefa Bicakci <vefa.bicakci@windriver.com> Change-Id: I0cb63c15c415947d1c94c4b7c5143e8d46eabd99
64 lines
2.2 KiB
Diff
64 lines
2.2 KiB
Diff
From a6a16444cbb50ce98c3cdf8ad5dff5e6ef1f66c1 Mon Sep 17 00:00:00 2001
|
|
From: Jim Somerville <Jim.Somerville@windriver.com>
|
|
Date: Mon, 26 Mar 2018 11:03:47 -0400
|
|
Subject: [PATCH] i40e add more debug info for VFs still in reset
|
|
|
|
Signed-off-by: Jim Somerville <Jim.Somerville@windriver.com>
|
|
[mvb: Refresh patch for i40e v2.6.11]
|
|
Signed-off-by: M. Vefa Bicakci <vefa.bicakci@windriver.com>
|
|
---
|
|
src/i40e_virtchnl_pf.c | 16 ++++++++--------
|
|
1 file changed, 8 insertions(+), 8 deletions(-)
|
|
|
|
diff --git a/src/i40e_virtchnl_pf.c b/src/i40e_virtchnl_pf.c
|
|
index 11190fb94c29..2de803d3463e 100644
|
|
--- a/src/i40e_virtchnl_pf.c
|
|
+++ b/src/i40e_virtchnl_pf.c
|
|
@@ -5525,8 +5525,8 @@ static int i40e_set_vf_mac(struct i40e_vf *vf, struct i40e_vsi *vsi,
|
|
msleep(20);
|
|
}
|
|
if (!test_bit(I40E_VF_STATE_INIT, &vf->vf_states)) {
|
|
- dev_err(&pf->pdev->dev, "VF %d still in reset. Try again.\n",
|
|
- vf->vf_id);
|
|
+ dev_err(&pf->pdev->dev, "%s: VF %d still in reset. Try again.\n",
|
|
+ __func__, vf->vf_id);
|
|
ret = -EAGAIN;
|
|
goto error_param;
|
|
}
|
|
@@ -5663,8 +5663,8 @@ int i40e_ndo_set_vf_port_vlan(struct net_device *netdev,
|
|
vf = &pf->vf[vf_id];
|
|
vsi = pf->vsi[vf->lan_vsi_idx];
|
|
if (!test_bit(I40E_VF_STATE_INIT, &vf->vf_states)) {
|
|
- dev_err(&pf->pdev->dev, "VF %d still in reset. Try again.\n",
|
|
- vf_id);
|
|
+ dev_err(&pf->pdev->dev, "%s: VF %d still in reset. Try again.\n",
|
|
+ __func__, vf_id);
|
|
ret = -EAGAIN;
|
|
goto error_pvid;
|
|
}
|
|
@@ -5856,8 +5856,8 @@ int i40e_ndo_set_vf_bw(struct net_device *netdev, int vf_id, int max_tx_rate)
|
|
vf = &pf->vf[vf_id];
|
|
vsi = pf->vsi[vf->lan_vsi_idx];
|
|
if (!test_bit(I40E_VF_STATE_INIT, &vf->vf_states)) {
|
|
- dev_err(&pf->pdev->dev, "VF %d still in reset. Try again.\n",
|
|
- vf_id);
|
|
+ dev_err(&pf->pdev->dev, "%s: VF %d still in reset. Try again.\n",
|
|
+ __func__, vf_id);
|
|
ret = -EAGAIN;
|
|
goto error;
|
|
}
|
|
@@ -6062,8 +6062,8 @@ int i40e_ndo_set_vf_spoofchk(struct net_device *netdev, int vf_id, bool enable)
|
|
|
|
vf = &(pf->vf[vf_id]);
|
|
if (!test_bit(I40E_VF_STATE_INIT, &vf->vf_states)) {
|
|
- dev_err(&pf->pdev->dev, "VF %d still in reset. Try again.\n",
|
|
- vf_id);
|
|
+ dev_err(&pf->pdev->dev, "%s: VF %d still in reset. Try again.\n",
|
|
+ __func__, vf_id);
|
|
ret = -EAGAIN;
|
|
goto out;
|
|
}
|
|
--
|
|
2.29.2
|
|
|