OSDN Git Service

ixgbevf: VF2VF TCP RSS
authorSebastian Basierski <sebastianx.basierski@intel.com>
Thu, 9 Aug 2018 09:45:40 +0000 (11:45 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 13 Nov 2018 19:08:30 +0000 (11:08 -0800)
[ Upstream commit 7fb94bd58dd6650a0158e68d414e185077d8b57a ]

While VF2VF with RSS communication, RSS Type were wrongly recognized
and RSS hash was not calculated as it should be. Packets was
distributed on various queues by accident.
This commit fixes that behaviour and causes proper RSS Type recognition.

Signed-off-by: Sebastian Basierski <sebastianx.basierski@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c

index 5a22858..4093a9c 100644 (file)
@@ -3849,6 +3849,10 @@ static void ixgbevf_tx_csum(struct ixgbevf_ring *tx_ring,
                skb_checksum_help(skb);
                goto no_csum;
        }
+
+       if (first->protocol == htons(ETH_P_IP))
+               type_tucmd |= IXGBE_ADVTXD_TUCMD_IPV4;
+
        /* update TX checksum flag */
        first->tx_flags |= IXGBE_TX_FLAGS_CSUM;
        vlan_macip_lens = skb_checksum_start_offset(skb) -