numam-dpdk/drivers/net/enic
Hyong Youb Kim d16623dd39 net/enic: revert mbuf fast free offload
This reverts the patch that enabled mbuf fast free.

There are two main reasons.

First, enic_fast_free_wq_bufs is broken. When
DEV_TX_OFFLOAD_MBUF_FAST_FREE is enabled, the driver calls this
function to free transmitted mbufs. This function currently does not
reset next and nb_segs. This is simply wrong as the fast-free flag
does not imply anything about next and nb_segs.

We could fix enic_fast_free_wq_bufs by making it to call
rte_pktmbuf_prefree_seg to reset the required fields. But, it negates
most of cycle saving.

Second, there are customer applications that blindly enable all Tx
offloads supported by the device. Some of these applications do not
satisfy the requirements of mbuf fast free (i.e. a single pool per
queue and refcnt = 1), and end up crashing or behaving badly.

Fixes: bcaa54c1a1 ("net/enic: support mbuf fast free offload")

Signed-off-by: Hyong Youb Kim <hyonkim@cisco.com>
Reviewed-by: John Daley <johndale@cisco.com>
2018-08-02 10:26:02 +02:00
..
base net/enic: add simple Rx handler 2018-07-03 01:54:26 +02:00
enic_clsf.c net/enic: avoid strict aliasing warnings 2018-03-30 14:08:43 +02:00
enic_compat.h net/enic: add the simple version of Tx handler 2018-07-03 01:54:23 +02:00
enic_ethdev.c remove useless constructor headers 2018-07-12 00:00:35 +02:00
enic_flow.c net/enic: fix flow drop action 2018-05-14 22:31:52 +01:00
enic_main.c net/enic: revert mbuf fast free offload 2018-08-02 10:26:02 +02:00
enic_res.c net/enic: revert mbuf fast free offload 2018-08-02 10:26:02 +02:00
enic_res.h net/enic: add simple Rx handler 2018-07-03 01:54:26 +02:00
enic_rxtx.c net/enic: revert mbuf fast free offload 2018-08-02 10:26:02 +02:00
enic.h net/enic: add simple Rx handler 2018-07-03 01:54:26 +02:00
Makefile net/enic: use BSD-3-Clause 2018-01-16 18:47:49 +01:00
meson.build net/enic: support meson 2018-03-30 14:08:43 +02:00
rte_pmd_enic_version.map enic: move to drivers/net/ 2015-05-22 16:05:52 +02:00