mbuf: remove the rte_pktmbuf structure
authorOlivier Matz <olivier.matz@6wind.com>
Thu, 28 Aug 2014 15:42:37 +0000 (16:42 +0100)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Wed, 17 Sep 2014 09:27:51 +0000 (11:27 +0200)
commitea672a8b1655bbb44876d2550ff56f384968a43b
treea3a44af5b72c8dd45550107eedcc10f0fc7d5c2f
parent9aaccf1abdb2894ec23870e1d2199a657f85850e
mbuf: remove the rte_pktmbuf structure

The rte_pktmbuf structure was initially included in the rte_mbuf
structure. This was needed when there was 2 types of mbuf (ctrl and
packet). As the control mbuf has been removed, we can merge the
rte_pktmbuf into the rte_mbuf structure.

Advantages of doing this:
  - the access to mbuf fields is easier (ex: m->data instead of m->pkt.data)
  - make the structure more consistent: for instance, there was no reason
    to have the ol_flags field in rte_mbuf
  - it will allow a deeper reorganization of the rte_mbuf structure in the
    next commits, allowing to gain several bytes in it

Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
[Bruce: updated for latest code and new example apps]
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
61 files changed:
app/test-pmd/cmdline.c
app/test-pmd/csumonly.c
app/test-pmd/flowgen.c
app/test-pmd/icmpecho.c
app/test-pmd/ieee1588fwd.c
app/test-pmd/macfwd-retry.c
app/test-pmd/macfwd.c
app/test-pmd/macswap.c
app/test-pmd/rxonly.c
app/test-pmd/testpmd.c
app/test-pmd/testpmd.h
app/test-pmd/txonly.c
app/test/commands.c
app/test/packet_burst_generator.c
app/test/test_distributor.c
app/test/test_distributor_perf.c
app/test/test_mbuf.c
app/test/test_sched.c
app/test/test_table_acl.c
app/test/test_table_pipeline.c
examples/dpdk_qat/crypto.c
examples/dpdk_qat/main.c
examples/exception_path/main.c
examples/ip_fragmentation/main.c
examples/ip_pipeline/pipeline_rx.c
examples/ip_pipeline/pipeline_tx.c
examples/ip_reassembly/main.c
examples/ipv4_multicast/main.c
examples/l3fwd-acl/main.c
examples/l3fwd-power/main.c
examples/l3fwd-vf/main.c
examples/l3fwd/main.c
examples/load_balancer/runtime.c
examples/multi_process/client_server_mp/mp_client/client.c
examples/quota_watermark/qw/main.c
examples/vhost/main.c
examples/vhost_xen/main.c
lib/librte_distributor/rte_distributor.c
lib/librte_ip_frag/ip_frag_common.h
lib/librte_ip_frag/rte_ipv4_fragmentation.c
lib/librte_ip_frag/rte_ipv4_reassembly.c
lib/librte_ip_frag/rte_ipv6_fragmentation.c
lib/librte_ip_frag/rte_ipv6_reassembly.c
lib/librte_mbuf/rte_mbuf.c
lib/librte_mbuf/rte_mbuf.h
lib/librte_pmd_bond/rte_eth_bond_pmd.c
lib/librte_pmd_e1000/em_rxtx.c
lib/librte_pmd_e1000/igb_rxtx.c
lib/librte_pmd_i40e/i40e_rxtx.c
lib/librte_pmd_ixgbe/ixgbe_rxtx.c
lib/librte_pmd_ixgbe/ixgbe_rxtx.h
lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c
lib/librte_pmd_pcap/rte_eth_pcap.c
lib/librte_pmd_virtio/virtio_rxtx.c
lib/librte_pmd_virtio/virtqueue.h
lib/librte_pmd_vmxnet3/vmxnet3_rxtx.c
lib/librte_pmd_xenvirt/rte_eth_xenvirt.c
lib/librte_pmd_xenvirt/virtqueue.h
lib/librte_port/rte_port_frag.c
lib/librte_sched/rte_sched.c
lib/librte_sched/rte_sched.h