[dpdk-stable] patch 'net/i40e: fix VF overwrite PF RSS LUT for X722' has been queued to LTS release 17.11.6

Yongseok Koh yskoh at mellanox.com
Fri Mar 8 18:47:29 CET 2019


Hi,

FYI, your patch has been queued to LTS release 17.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objection by 03/13/19. So please
shout if anyone has objection.

Also note that after the patch there's a diff of the upstream commit vs the patch applied
to the branch. If the code is different (ie: not only metadata diffs), due for example to
a change in context or macro names, please double check it.

Thanks.

Yongseok

---
>From 370f6ce5643db4dccb2fec3c3c1debfaefcf59f5 Mon Sep 17 00:00:00 2001
From: Yanglong Wu <yanglong.wu at intel.com>
Date: Tue, 15 Jan 2019 10:23:45 +0800
Subject: [PATCH] net/i40e: fix VF overwrite PF RSS LUT for X722

[ upstream commit 1d4b2b4966bbb219afd2d7072ffba51f3a3067a5 ]

i40e_aq_set_rss_lut should set register according
to the vsi->type. if not, VF may overwrite the rigister
of PF.
Note, only X722 is impacted, since flag I40E_FLAG_RSS_AQ_CAPABLE
is only enabled on X722.

Fixes: d0a349409bd7 ("i40e: support AQ based RSS config")

Signed-off-by: Yanglong Wu <yanglong.wu at intel.com>
Acked-by: Qi Zhang <qi.z.zhang at intel.com>
---
 drivers/net/i40e/i40e_ethdev.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index 60b63e027..a8d6c9714 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -3971,7 +3971,8 @@ i40e_get_rss_lut(struct i40e_vsi *vsi, uint8_t *lut, uint16_t lut_size)
 		return -EINVAL;
 
 	if (pf->flags & I40E_FLAG_RSS_AQ_CAPABLE) {
-		ret = i40e_aq_get_rss_lut(hw, vsi->vsi_id, TRUE,
+		ret = i40e_aq_get_rss_lut(hw, vsi->vsi_id,
+					  vsi->type != I40E_VSI_SRIOV,
 					  lut, lut_size);
 		if (ret) {
 			PMD_DRV_LOG(ERR, "Failed to get RSS lookup table");
@@ -4002,7 +4003,8 @@ i40e_set_rss_lut(struct i40e_vsi *vsi, uint8_t *lut, uint16_t lut_size)
 	hw = I40E_VSI_TO_HW(vsi);
 
 	if (pf->flags & I40E_FLAG_RSS_AQ_CAPABLE) {
-		ret = i40e_aq_set_rss_lut(hw, vsi->vsi_id, TRUE,
+		ret = i40e_aq_set_rss_lut(hw, vsi->vsi_id,
+					  vsi->type != I40E_VSI_SRIOV,
 					  lut, lut_size);
 		if (ret) {
 			PMD_DRV_LOG(ERR, "Failed to set RSS lookup table");
-- 
2.11.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-03-08 09:46:42.737614004 -0800
+++ 0051-net-i40e-fix-VF-overwrite-PF-RSS-LUT-for-X722.patch	2019-03-08 09:46:40.262402000 -0800
@@ -1,8 +1,10 @@
-From 1d4b2b4966bbb219afd2d7072ffba51f3a3067a5 Mon Sep 17 00:00:00 2001
+From 370f6ce5643db4dccb2fec3c3c1debfaefcf59f5 Mon Sep 17 00:00:00 2001
 From: Yanglong Wu <yanglong.wu at intel.com>
 Date: Tue, 15 Jan 2019 10:23:45 +0800
 Subject: [PATCH] net/i40e: fix VF overwrite PF RSS LUT for X722
 
+[ upstream commit 1d4b2b4966bbb219afd2d7072ffba51f3a3067a5 ]
+
 i40e_aq_set_rss_lut should set register according
 to the vsi->type. if not, VF may overwrite the rigister
 of PF.
@@ -10,7 +12,6 @@
 is only enabled on X722.
 
 Fixes: d0a349409bd7 ("i40e: support AQ based RSS config")
-Cc: stable at dpdk.org
 
 Signed-off-by: Yanglong Wu <yanglong.wu at intel.com>
 Acked-by: Qi Zhang <qi.z.zhang at intel.com>
@@ -19,10 +20,10 @@
  1 file changed, 4 insertions(+), 2 deletions(-)
 
 diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
-index a6b97e164..f97cd5348 100644
+index 60b63e027..a8d6c9714 100644
 --- a/drivers/net/i40e/i40e_ethdev.c
 +++ b/drivers/net/i40e/i40e_ethdev.c
-@@ -4183,7 +4183,8 @@ i40e_get_rss_lut(struct i40e_vsi *vsi, uint8_t *lut, uint16_t lut_size)
+@@ -3971,7 +3971,8 @@ i40e_get_rss_lut(struct i40e_vsi *vsi, uint8_t *lut, uint16_t lut_size)
  		return -EINVAL;
  
  	if (pf->flags & I40E_FLAG_RSS_AQ_CAPABLE) {
@@ -32,7 +33,7 @@
  					  lut, lut_size);
  		if (ret) {
  			PMD_DRV_LOG(ERR, "Failed to get RSS lookup table");
-@@ -4222,7 +4223,8 @@ i40e_set_rss_lut(struct i40e_vsi *vsi, uint8_t *lut, uint16_t lut_size)
+@@ -4002,7 +4003,8 @@ i40e_set_rss_lut(struct i40e_vsi *vsi, uint8_t *lut, uint16_t lut_size)
  	hw = I40E_VSI_TO_HW(vsi);
  
  	if (pf->flags & I40E_FLAG_RSS_AQ_CAPABLE) {


More information about the stable mailing list