018a11967f5204d3def2dd5b968a0bedf09c666e
[dpdk.git] / doc / guides / rel_notes / deprecation.rst
1 ABI and API Deprecation
2 =======================
3
4 See the :doc:`guidelines document for details of the ABI policy </contributing/versioning>`.
5 API and ABI deprecation notices are to be posted here.
6
7
8 Deprecation Notices
9 -------------------
10
11 * Significant ABI changes are planned for struct rte_eth_dev to support up to
12   1024 queues per port. This change will be in release 2.2.
13   There is no backward compatibility planned from release 2.2.
14   All binaries will need to be rebuilt from release 2.2.
15
16 * The following fields have been deprecated in rte_eth_stats:
17   imissed, ibadcrc, ibadlen, imcasts, fdirmatch, fdirmiss,
18   tx_pause_xon, rx_pause_xon, tx_pause_xoff, rx_pause_xoff
19
20 * ABI changes are planned for struct rte_eth_fdir_flow_ext in order to support
21   flow director filtering in VF. The release 2.1 does not contain these ABI
22   changes, but release 2.2 will, and no backwards compatibility is planned.
23
24 * ABI changes are planned for struct rte_eth_fdir_filter and
25   rte_eth_fdir_masks in order to support new flow director modes,
26   MAC VLAN and Cloud, on x550. The MAC VLAN mode means the MAC and
27   VLAN are monitored. The Cloud mode is for VxLAN and NVGRE, and
28   the tunnel type, TNI/VNI, inner MAC and inner VLAN are monitored.
29   The release 2.2 will contain these changes without backwards compatibility.
30
31 * ABI changes are planned for struct virtio_net in order to support vhost-user
32   multiple queues feature.
33   It should be integrated in release 2.2 without backward compatibility.
34
35 * The scheduler hierarchy structure (rte_sched_port_hierarchy) will change to
36   allow for a larger number of subport entries.
37   The number of available traffic_classes and queues may also change.
38   The mbuf structure element for sched hierarchy will also change from a single
39   32 bit to a 64 bit structure.
40
41 * The scheduler statistics structure will change to allow keeping track of
42   RED actions.
43
44 * librte_cfgfile: In order to allow for longer names and values,
45   the value of macros CFG_NAME_LEN and CFG_NAME_VAL will be increased.
46   Most likely, the new values will be 64 and 256, respectively.
47
48 * librte_table: New functions for table entry bulk add/delete will be added
49   to the table operations structure.
50
51 * librte_table hash: Key mask parameter will be added to the hash table
52   parameter structure for 8-byte key and 16-byte key extendible bucket and
53   LRU tables.
54
55 * librte_pipeline: The prototype for the pipeline input port, output port
56   and table action handlers will be updated:
57   the pipeline parameter will be added, the packets mask parameter will be
58   either removed (for input port action handler) or made input-only.