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: bcaa54c1a148 ("net/enic: support mbuf fast free offload") Signed-off-by: Hyong Youb Kim <hyonkim@cisco.com> Reviewed-by: John Daley <johndale@cisco.com>
DPDK is a set of libraries and drivers for fast packet processing. It supports many processor architectures and both FreeBSD and Linux. The DPDK uses the Open Source BSD-3-Clause license for the core libraries and drivers. The kernel components are GPL-2.0 licensed. Please check the doc directory for release notes, API documentation, and sample application information. For questions and usage discussions, subscribe to: users@dpdk.org Report bugs and issues to the development mailing list: dev@dpdk.org
Description
Languages
C
99.1%
Meson
0.5%
Python
0.2%
Shell
0.1%