[dpdk-dev] fix to use index to HW queue assigned to PF instead of queus 0 - nb_rx_queues which belong to VF in SR-IOV configuration

Message ID 1472206161-14601-1-git-send-email-alexz@att.com (mailing list archive)
State Superseded, archived
Headers

Commit Message

azelezniak Aug. 26, 2016, 10:09 a.m. UTC
  From: Alex Zelezniak <alexz@att.com>

Signed-off-by: Alex Zelezniak <alexz@att.com>
---
 drivers/net/ixgbe/ixgbe_ethdev.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)
  

Comments

Ferruh Yigit Aug. 26, 2016, 10:55 a.m. UTC | #1
Hi Alex,

On 8/26/2016 11:09 AM, azelezniak wrote:
> From: Alex Zelezniak <alexz@att.com>
> 
> Signed-off-by: Alex Zelezniak <alexz@att.com>
> ---

Thank you for the patch, not related to the patch content but related to
the patch format:
patch subject is too long, it is expected to be around 50 characters,
can you please move some of information to the patch commit log?

Also since this is a fix, commit log requires a Fixes line.

More details on:
http://dpdk.org/doc/guides/contributing/patches.html#sending-patches

Thanks,
ferruh
  
Stephen Hemminger Aug. 26, 2016, 3:57 p.m. UTC | #2
On Fri, 26 Aug 2016 11:55:40 +0100
Ferruh Yigit <ferruh.yigit@intel.com> wrote:

> Hi Alex,
> 
> On 8/26/2016 11:09 AM, azelezniak wrote:
> > From: Alex Zelezniak <alexz@att.com>
> > 
> > Signed-off-by: Alex Zelezniak <alexz@att.com>
> > ---  
> 
> Thank you for the patch, not related to the patch content but related to
> the patch format:
> patch subject is too long, it is expected to be around 50 characters,
> can you please move some of information to the patch commit log?
> 
> Also since this is a fix, commit log requires a Fixes line.
> 
> More details on:
> http://dpdk.org/doc/guides/contributing/patches.html#sending-patches
> 
> Thanks,
> ferruh
> 

The subject line of the patch email becomes the first line of the
git commit message. This also documented on 'git commit' man page.

DISCUSSION
       Though not required, it’s a good idea to begin the commit message with
       a single short (less than 50 character) line summarizing the change,
       followed by a blank line and then a more thorough description.

Overly long summary lines are flagged as errors by tools like Debian lintian.
  

Patch

diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c b/drivers/net/ixgbe/ixgbe_ethdev.c
index bc2ad4b..d8d32f7 100644
--- a/drivers/net/ixgbe/ixgbe_ethdev.c
+++ b/drivers/net/ixgbe/ixgbe_ethdev.c
@@ -1779,6 +1779,7 @@  ixgbe_vlan_hw_strip_disable_all(struct rte_eth_dev *dev)
 		IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
 	uint32_t ctrl;
 	uint16_t i;
+	struct ixgbe_rx_queue *rxq;
 
 	PMD_INIT_FUNC_TRACE();
 
@@ -1789,9 +1790,10 @@  ixgbe_vlan_hw_strip_disable_all(struct rte_eth_dev *dev)
 	} else {
 		/* Other 10G NIC, the VLAN strip can be setup per queue in RXDCTL */
 		for (i = 0; i < dev->data->nb_rx_queues; i++) {
-			ctrl = IXGBE_READ_REG(hw, IXGBE_RXDCTL(i));
+			rxq = dev->data->rx_queues[i];
+			ctrl = IXGBE_READ_REG(hw, IXGBE_RXDCTL(rxq->reg_idx));
 			ctrl &= ~IXGBE_RXDCTL_VME;
-			IXGBE_WRITE_REG(hw, IXGBE_RXDCTL(i), ctrl);
+			IXGBE_WRITE_REG(hw, IXGBE_RXDCTL(rxq->reg_idx), ctrl);
 
 			/* record those setting for HW strip per queue */
 			ixgbe_vlan_hw_strip_bitmap_set(dev, i, 0);
@@ -1806,6 +1808,7 @@  ixgbe_vlan_hw_strip_enable_all(struct rte_eth_dev *dev)
 		IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
 	uint32_t ctrl;
 	uint16_t i;
+	struct ixgbe_rx_queue *rxq;
 
 	PMD_INIT_FUNC_TRACE();
 
@@ -1816,9 +1819,10 @@  ixgbe_vlan_hw_strip_enable_all(struct rte_eth_dev *dev)
 	} else {
 		/* Other 10G NIC, the VLAN strip can be setup per queue in RXDCTL */
 		for (i = 0; i < dev->data->nb_rx_queues; i++) {
-			ctrl = IXGBE_READ_REG(hw, IXGBE_RXDCTL(i));
+			rxq = dev->data->rx_queues[i];
+			ctrl = IXGBE_READ_REG(hw, IXGBE_RXDCTL(rxq->reg_idx));
 			ctrl |= IXGBE_RXDCTL_VME;
-			IXGBE_WRITE_REG(hw, IXGBE_RXDCTL(i), ctrl);
+			IXGBE_WRITE_REG(hw, IXGBE_RXDCTL(rxq->reg_idx), ctrl);
 
 			/* record those setting for HW strip per queue */
 			ixgbe_vlan_hw_strip_bitmap_set(dev, i, 1);