[dpdk-dev] net/fm10k: fix SGLORT of VF Tx queues
Commit Message
The SGLORT (Source Global Resource Tag) of the VF queues should be
assigned by PF driver, VF driver should not set these registers.
Fixes: 3b845bf6bcd9 ("fm10k: fix switch manager high CPU usage")
Signed-off-by: Xiao Wang <xiao.w.wang@intel.com>
Reported-by: Sarathx Somasekharan <sarathx.somasekharan@intel.com>
---
drivers/net/fm10k/fm10k_ethdev.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
Comments
On Wed, Oct 19, 2016 at 09:30:14AM +0800, Xiao Wang wrote:
> The SGLORT (Source Global Resource Tag) of the VF queues should be
> assigned by PF driver, VF driver should not set these registers.
>
> Fixes: 3b845bf6bcd9 ("fm10k: fix switch manager high CPU usage")
>
> Signed-off-by: Xiao Wang <xiao.w.wang@intel.com>
> Reported-by: Sarathx Somasekharan <sarathx.somasekharan@intel.com>
Applied to dpdk-next-net/rel_16_11
/Bruce
@@ -695,8 +695,9 @@ fm10k_dev_tx_init(struct rte_eth_dev *dev)
base_addr >> (CHAR_BIT * sizeof(uint32_t)));
FM10K_WRITE_REG(hw, FM10K_TDLEN(i), size);
- /* assign default SGLORT for each TX queue */
- FM10K_WRITE_REG(hw, FM10K_TX_SGLORT(i), hw->mac.dglort_map);
+ /* assign default SGLORT for each TX queue by PF */
+ if (hw->mac.type == fm10k_mac_pf)
+ FM10K_WRITE_REG(hw, FM10K_TX_SGLORT(i), hw->mac.dglort_map);
}
/* set up vector or scalar TX function as appropriate */