numam-dpdk/drivers/net
Wei Hu (Xavier) 50ce3e7aec ethdev: fix VLAN offloads set if no relative capabilities
Currently, there is a potential problem that calling the API function
rte_eth_dev_set_vlan_offload to start VLAN hardware offloads which the
driver does not support. If the PMD driver does not support certain VLAN
hardware offloads and does not check for it, the hardware setting will
not change, but the VLAN offloads in dev->data->dev_conf.rxmode.offloads
will be turned on.

It is supposed to check the hardware capabilities to decide whether the
relative callback needs to be called just like the behavior in the API
function named rte_eth_dev_configure. And it is also needed to cleanup
duplicated checks which are done in some PMDs. Also, note that it is
behaviour change for some PMDs which simply ignore (with error/warning
log message) unsupported VLAN offloads, but now it will fail.

Fixes: a4996bd89c ("ethdev: new Rx/Tx offloads API")
Fixes: 0ebce6129b ("net/dpaa2: support new ethdev offload APIs")
Fixes: f9416bbafd ("net/enic: remove VLAN filter handler")
Fixes: 4f7d9e383e ("fm10k: update vlan offload features")
Fixes: fdba3bf15c ("net/hinic: add VLAN filter and offload")
Fixes: b96fb2f0d2 ("net/i40e: handle QinQ strip")
Fixes: d4a27a3b09 ("nfp: add basic features")
Fixes: 56139e85ab ("net/octeontx: support VLAN filter offload")
Fixes: ba1b3b081e ("net/octeontx2: support VLAN offloads")
Fixes: d87246a437 ("net/qede: enable and disable VLAN filtering")
Cc: stable@dpdk.org

Signed-off-by: Chengchang Tang <tangchengchang@huawei.com>
Signed-off-by: Wei Hu (Xavier) <xavier.huwei@huawei.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Hyong Youb Kim <hyonkim@cisco.com>
Acked-by: Sachin Saxena <sachin.saxena@nxp.com>
Acked-by: Xiaoyun Wang <cloud.wangxiaoyun@huawei.com>
Acked-by: Harman Kalra <hkalra@marvell.com>
Acked-by: Jeff Guo <jia.guo@intel.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
2020-07-11 06:18:53 +02:00
..
af_packet log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
af_xdp log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
ark log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
atlantic log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
avp log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
axgbe log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
bnx2x log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
bnxt net/bnxt: avoid hard coded values when reading counters 2020-07-11 06:18:53 +02:00
bonding net/bonding: fix socket ID check 2020-07-11 06:18:53 +02:00
cxgbe log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
dpaa bus/dpaa: enable set link status 2020-07-11 06:18:52 +02:00
dpaa2 ethdev: fix VLAN offloads set if no relative capabilities 2020-07-11 06:18:53 +02:00
e1000 net/e1000/base: update version 2020-07-07 23:38:27 +02:00
ena log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
enetc log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
enic ethdev: fix VLAN offloads set if no relative capabilities 2020-07-11 06:18:53 +02:00
failsafe log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
fm10k ethdev: fix VLAN offloads set if no relative capabilities 2020-07-11 06:18:53 +02:00
hinic ethdev: fix VLAN offloads set if no relative capabilities 2020-07-11 06:18:53 +02:00
hns3 net/hns3: fix inserted VLAN tag position in Tx 2020-07-07 23:38:28 +02:00
i40e ethdev: fix VLAN offloads set if no relative capabilities 2020-07-11 06:18:53 +02:00
iavf net/iavf: support RSS for IPv4 IPv6 mix of GTP 2020-07-11 06:18:53 +02:00
ice net/ice: support RSS for IPv4 IPv6 mix of GTP 2020-07-11 06:18:53 +02:00
igc log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
ionic log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
ipn3ke log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
ixgbe net/ixgbe/base: update version 2020-07-11 06:18:53 +02:00
kni log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
liquidio log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
memif log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
mlx4 log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
mlx5 net/mlx5: add ConnectX-6 Lx device ID 2020-07-11 06:18:53 +02:00
mvneta log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
mvpp2 log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
netvsc net/netvsc: detach external buffer on failure 2020-07-11 06:18:53 +02:00
nfb net/nfb: check array size before access 2020-04-21 13:57:06 +02:00
nfp ethdev: fix VLAN offloads set if no relative capabilities 2020-07-11 06:18:53 +02:00
null log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
octeontx ethdev: fix VLAN offloads set if no relative capabilities 2020-07-11 06:18:53 +02:00
octeontx2 ethdev: fix VLAN offloads set if no relative capabilities 2020-07-11 06:18:53 +02:00
pcap log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
pfe log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
qede ethdev: fix VLAN offloads set if no relative capabilities 2020-07-11 06:18:53 +02:00
ring log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
sfc net/sfc: reap Tx descriptors at least once 2020-06-30 14:52:29 +02:00
softnic log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
szedata2 log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
tap log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
thunderx log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
vdev_netvsc log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
vhost log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
virtio net/virtio-user: support reply-ack 2020-07-11 06:18:52 +02:00
vmxnet3 log: introduce logtype register macro 2020-07-03 15:52:51 +02:00
Makefile net/igc: add skeleton 2020-04-21 13:57:07 +02:00
meson.build bus/pci: introduce Windows support with stubs 2020-06-30 00:02:54 +02:00