numam-dpdk/drivers/net
Maciej Bielski 40e7c02155 net/ena: fix L4 checksum Tx offload
During an if-condition evaluation, a 2-bit flag evaluates to 'true' for
'0x1', '0x2' and '0x3'. Thus, from this perspective these flags are
indistinguishable. To make them distinct, respective bits must be
extracted with a mask and then checked for strict equality.

Specifically here, even if `PKT_TX_UDP_CKSUM` (value '0x3') was set, the
expression `mbuf->ol_flags & PKT_TX_TCP` (the second flag of value
'0x1') is evaluated first and the result is 'true'. In consequence, for
UDP packets the execution flow enters an incorrect branch.

Fixes: 56b8b9b7e5 ("net/ena: convert to new Tx offloads API")
Cc: stable@dpdk.org

Reported-by: Eduard Serra <eserra@vmware.com>
Signed-off-by: Maciej Bielski <mba@semihalf.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
2019-08-05 19:42:02 +02:00
..
af_packet net/af_packet: remove unused Rx counter 2019-07-26 15:27:05 +02:00
af_xdp net/af_xdp: remove unused Tx counter 2019-07-26 15:27:05 +02:00
ark net/ark: remove resources when port is close 2019-07-23 14:31:36 +02:00
atlantic drivers/net: use ack in interrupt handlers 2019-07-23 12:00:23 +02:00
avp drivers/net: use ack in interrupt handlers 2019-07-23 12:00:23 +02:00
axgbe drivers/net: use ack in interrupt handlers 2019-07-23 12:00:23 +02:00
bnx2x net/bnx2x: fix fastpath SB allocation for SRIOV 2019-07-23 14:31:34 +02:00
bnxt net/bnxt: set checksum flags in vector Rx 2019-07-30 19:39:39 +02:00
bonding net/bonding: use dynamic log type for error message 2019-07-23 14:31:35 +02:00
cxgbe net/cxgbe: remove unnecessary cast 2019-06-13 23:54:29 +09:00
dpaa net/dpaa: fix build with 0 headroom 2019-08-05 19:24:17 +02:00
dpaa2 bus/fslmc: fix build with 0 headroom 2019-08-05 19:24:27 +02:00
e1000 net/e1000: replace license text with SPDX tag 2019-07-29 13:31:45 +02:00
ena net/ena: fix L4 checksum Tx offload 2019-08-05 19:42:02 +02:00
enetc drivers: add reasons for components being disabled 2019-07-02 23:21:11 +02:00
enic net/enic: restore default log level to info 2019-07-29 13:01:01 +02:00
failsafe net/failsafe: skip devargs if not present in secondary 2019-07-23 14:31:35 +02:00
fm10k net/fm10k: replace license text with SPDX tag 2019-07-24 18:44:40 +02:00
hinic net/hinic: fix implicit downcast of bitfield 2019-07-23 14:31:35 +02:00
i40e net/i40e: replace license text with SPDX tag 2019-07-29 13:31:45 +02:00
iavf net/iavf: fix endless loop 2019-07-26 13:24:32 +02:00
ice net/ice: fix LLDP forward 2019-07-29 15:52:22 +02:00
ifc net/ifc: add devargs pointer check 2019-07-23 14:31:35 +02:00
ipn3ke remove extra blank lines at end of files 2019-08-05 15:19:32 +02:00
ixgbe net/ixgbe: replace license text with SPDX tag 2019-07-29 13:31:45 +02:00
kni net/kni: do not count unsent packets as errors 2019-07-26 15:27:05 +02:00
liquidio net: add rte prefix to ether defines 2019-05-24 13:34:45 +02:00
memif net/memif: do not count unsent packets as errors 2019-07-26 15:27:05 +02:00
mlx4 net/mlx4: fix typo in comment 2019-07-23 14:31:36 +02:00
mlx5 remove extra blank lines at end of files 2019-08-05 15:19:32 +02:00
mvneta net/mvneta: remove resources when port is closed 2019-07-08 21:26:52 +02:00
mvpp2 drivers: add reasons for components being disabled 2019-07-02 23:21:11 +02:00
netvsc net/netvsc: fix definition of offload values 2019-07-05 01:52:01 +02:00
nfb net/nfb: support timestamp 2019-07-23 14:31:34 +02:00
nfp drivers/net: use ack in interrupt handlers 2019-07-23 12:00:23 +02:00
null net/null: remove unused Tx error counter 2019-07-26 15:27:05 +02:00
octeontx net/octeontx: use driver log type 2019-07-23 14:31:36 +02:00
octeontx2 drivers/octeontx2: fix recursive interrupts 2019-07-29 22:18:01 +02:00
pcap net/pcap: fix concurrent multiseg Tx 2019-07-26 00:32:18 +02:00
qede drivers/net: use ack in interrupt handlers 2019-07-23 12:00:23 +02:00
ring net/ring: do not count unsent packets as errors 2019-07-26 15:27:05 +02:00
sfc net/sfc: unify power of 2 alignment check macro 2019-07-24 21:01:11 +02:00
softnic net/softnic: add config flexibility to TM 2019-07-22 15:41:50 +02:00
szedata2 net/szedata2: support Silicom Mango card 2019-07-03 12:57:30 +02:00
tap net/tap: remove redundant declarations 2019-07-23 14:31:34 +02:00
thunderx drivers/net: fix double free on init failure 2019-06-28 20:31:49 +02:00
vdev_netvsc net/vdev_netvsc: use new ethernet address parser 2019-07-08 21:26:52 +02:00
vhost net/vhost: do not count unsent packets as errors 2019-07-26 15:27:05 +02:00
virtio net/virtio: fix build with 0 headroom 2019-08-05 19:26:49 +02:00
vmxnet3 net/vmxnet3: replace license text with SPDX tag 2019-07-29 13:31:45 +02:00
Makefile net/octeontx2: add build and doc infrastructure 2019-07-05 01:52:01 +02:00
meson.build net/octeontx2: add build and doc infrastructure 2019-07-05 01:52:01 +02:00