Linux/linux 9bf4656drivers/net/ethernet/broadcom/bnxt bnxt_tc.h bnxt_tc.c

bnxt_en: Fix to include flow direction in L2 key

FW expects the driver to provide unique flow reference handles
for Tx or Rx flows. When a Tx flow and an Rx flow end up sharing
a reference handle, flow offload does not seem to work.
This could happen in the case of 2 flows having their L2 fields
wildcarded but in different direction.
Fix to incorporate the flow direction as part of the L2 key

v2: Move the dir field to the end of the bnxt_tc_l2_key struct to
fix the warning reported by kbuild test robot <lkp at intel.com>.
There is existing code that initializes the structure using
nested initializer and will warn with the new u8 field added to
the beginning.  The structure also packs nicer when this new u8 is
added to the end of the structure [MChan].

Fixes: abd43a13525d ("bnxt_en: Support for 64-bit flow handle.")
Signed-off-by: Somnath Kotur <somnath.kotur at broadcom.com>
Signed-off-by: Michael Chan <michael.chan at broadcom.com>
Signed-off-by: David S. Miller <davem at davemloft.net>
DeltaFile
+3-3drivers/net/ethernet/broadcom/bnxt/bnxt_tc.h
+2-2drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c
+5-52 files

UnifiedSplitRaw