igb: enable TSO support
[dpdk.git] / doc / guides / rel_notes / release_2_2.rst
1 DPDK Release 2.2
2 ================
3
4 New Features
5 ------------
6
7 * **Added igb TSO support for both PF and VF.**
8
9 * **Enhanced support for the Chelsio CXGBE driver.**
10
11   *  Added support for Jumbo Frames.
12   *  Optimize forwarding performance for Chelsio T5 40GbE cards.
13
14 * **Added vhost-user multiple queue support.**
15
16
17 Resolved Issues
18 ---------------
19
20 EAL
21 ~~~
22
23 * **eal/linux: Fixed epoll timeout.**
24
25   Fixed issue where the ``rte_epoll_wait()`` function didn't return when the
26   underlying call to ``epoll_wait()`` timed out.
27
28
29 Drivers
30 ~~~~~~~
31
32 * **ixgbe: Fixed issue with X550 DCB.**
33
34   Fixed a DCB issue with x550 where for 8 TCs (Traffic Classes), if a packet
35   with user priority 6 or 7 was injected to the NIC, then the NIC would only
36   put 3 packets into the queue. There was also a similar issue for 4 TCs.
37
38 * **ixgbe: Removed burst size restriction of vector RX.**
39
40   Fixed issue where a burst size less than 32 didn't receive anything.
41
42 * **i40e: Fixed base driver allocation when not using first numa node.**
43
44   Fixed i40e issue that occurred when a DPDK application didn't initialize
45   ports if memory wasn't available on socket 0.
46
47 * **vhost: Fixed Qemu shutdown.**
48
49   Fixed issue with libvirt ``virsh destroy`` not killing the VM.
50
51 * **virtio: Fixed crash after changing link state.**
52
53   Fixed io permission in the interrupt handler.
54
55 * **virtio: Fixed crash when releasing queue.**
56
57   Fixed issue when releasing null control queue.
58
59
60 Libraries
61 ~~~~~~~~~
62
63 * **hash: Fixed memory allocation of Cuckoo Hash key table.**
64
65   Fixed issue where an incorrect Cuckoo Hash key table size could be
66   calculated limiting the size to 4GB.
67
68
69 Examples
70 ~~~~~~~~
71
72
73 Other
74 ~~~~~
75
76
77 Known Issues
78 ------------
79
80
81 API Changes
82 -----------
83
84 * The deprecated flow director API is removed.
85   It was replaced by rte_eth_dev_filter_ctrl().
86
87 * The function rte_eal_pci_close_one() is removed.
88   It was replaced by rte_eal_pci_detach().
89
90 * The deprecated ACL API ipv4vlan is removed.
91
92 * The deprecated hash function rte_jhash2() is removed.
93   It was replaced by rte_jhash_32b().
94
95 * The deprecated KNI functions are removed:
96   rte_kni_create(), rte_kni_get_port_id() and rte_kni_info_get().
97
98 * The deprecated ring PMD functions are removed:
99   rte_eth_ring_pair_create() and rte_eth_ring_pair_attach().
100
101 * The devargs union field virtual is renamed to virt for C++ compatibility.
102
103
104 ABI Changes
105 -----------
106
107 * The EAL and ethdev structures rte_intr_handle and rte_eth_conf were changed
108   to support Rx interrupt. It was already done in 2.1 for CONFIG_RTE_NEXT_ABI.
109
110 * The ethdev flow director entries for SCTP were changed.
111   It was already done in 2.1 for CONFIG_RTE_NEXT_ABI.
112
113 * The mbuf structure was changed to support unified packet type.
114   It was already done in 2.1 for CONFIG_RTE_NEXT_ABI.
115
116 * The dummy malloc library is removed. The content was moved into EAL in 2.1.
117
118 * The LPM structure is changed. The deprecated field mem_location is removed.
119
120 * librte_table LPM: A new parameter to hold the table name will be added to
121   the LPM table parameter structure.
122
123 * librte_port: Macros to access the packet meta-data stored within the packet
124   buffer has been adjusted to cover the packet mbuf structure.
125
126 * librte_cfgfile: Allow longer names and values by increasing the constants
127   CFG_NAME_LEN and CFG_VALUE_LEN to 64 and 256 respectively.
128
129
130 Shared Library Versions
131 -----------------------
132
133 The libraries prepended with a plus sign were incremented in this version.
134
135 .. code-block:: diff
136
137    + libethdev.so.2
138    + librte_acl.so.2
139    + librte_cfgfile.so.2
140      librte_cmdline.so.1
141      librte_distributor.so.1
142    + librte_eal.so.2
143    + librte_hash.so.2
144      librte_ip_frag.so.1
145      librte_ivshmem.so.1
146      librte_jobstats.so.1
147    + librte_kni.so.2
148      librte_kvargs.so.1
149    + librte_lpm.so.2
150    + librte_mbuf.so.2
151      librte_mempool.so.1
152      librte_meter.so.1
153      librte_pipeline.so.1
154      librte_pmd_bond.so.1
155    + librte_pmd_ring.so.2
156    + librte_port.so.2
157      librte_power.so.1
158      librte_reorder.so.1
159      librte_ring.so.1
160      librte_sched.so.1
161    + librte_table.so.2
162      librte_timer.so.1
163      librte_vhost.so.1