ring: introduce RTS ring mode
[dpdk.git] / doc / guides / rel_notes / release_20_05.rst
1 .. SPDX-License-Identifier: BSD-3-Clause
2    Copyright 2020 The DPDK contributors
3
4 .. include:: <isonum.txt>
5
6 DPDK Release 20.05
7 ==================
8
9 .. **Read this first.**
10
11    The text in the sections below explains how to update the release notes.
12
13    Use proper spelling, capitalization and punctuation in all sections.
14
15    Variable and config names should be quoted as fixed width text:
16    ``LIKE_THIS``.
17
18    Build the docs and view the output file to ensure the changes are correct::
19
20       make doc-guides-html
21
22       xdg-open build/doc/html/guides/rel_notes/release_20_05.html
23
24
25 New Features
26 ------------
27
28 .. This section should contain new features added in this release.
29    Sample format:
30
31    * **Add a title in the past tense with a full stop.**
32
33      Add a short 1-2 sentence description in the past tense.
34      The description should be enough to allow someone scanning
35      the release notes to understand the new feature.
36
37      If the feature adds a lot of sub-features you can use a bullet list
38      like this:
39
40      * Added feature foo to do something.
41      * Enhanced feature bar to do something else.
42
43      Refer to the previous release notes for examples.
44
45      Suggested order in release notes items:
46      * Core libs (EAL, mempool, ring, mbuf, buses)
47      * Device abstraction libs and PMDs
48        - ethdev (lib, PMDs)
49        - cryptodev (lib, PMDs)
50        - eventdev (lib, PMDs)
51        - etc
52      * Other libs
53      * Apps, Examples, Tools (if significant)
54
55      This section is a comment. Do not overwrite or remove it.
56      Also, make sure to start the actual text at the margin.
57      =========================================================
58
59 * **New synchronization modes for rte_ring.**
60
61   Introduced new optional MT synchronization mode for rte_ring:
62   Relaxed Tail Sync (RTS). With this mode selected, rte_ring shows
63   significant improvements for average enqueue/dequeue times on
64   overcommitted systems.
65
66 * **Updated Mellanox mlx5 driver.**
67
68   Updated Mellanox mlx5 driver with new features and improvements, including:
69
70   * Added support for matching on IPv4 Time To Live and IPv6 Hop Limit.
71
72 * **Added handling of mixed crypto algorithms in QAT PMD for GEN2.**
73
74   Enabled handling of mixed algorithms in encrypted digest hash-cipher
75   (generation) and cipher-hash (verification) requests in QAT PMD
76   when running on GEN2 QAT hardware with particular firmware versions
77   (GEN3 support was added in DPDK 20.02).
78
79 * **Updated the turbo_sw bbdev PMD.**
80
81   Supported large size code blocks which does not fit in one mbuf segment.
82
83 * **Added event mode to ipsec-secgw application.**
84
85   Updated ipsec-secgw application to add event based packet processing. The worker
86   thread(s) would receive events and submit them back to the event device after
87   the processing. This way, multicore scaling and HW assisted scheduling is achieved
88   by making use of the event device capabilities. The event mode currently supports
89   only inline IPsec protocol offload.
90
91
92 Removed Items
93 -------------
94
95 .. This section should contain removed items in this release. Sample format:
96
97    * Add a short 1-2 sentence description of the removed item
98      in the past tense.
99
100    This section is a comment. Do not overwrite or remove it.
101    Also, make sure to start the actual text at the margin.
102    =========================================================
103
104
105 API Changes
106 -----------
107
108 .. This section should contain API changes. Sample format:
109
110    * sample: Add a short 1-2 sentence description of the API change
111      which was announced in the previous releases and made in this release.
112      Start with a scope label like "ethdev:".
113      Use fixed width quotes for ``function_names`` or ``struct_names``.
114      Use the past tense.
115
116    This section is a comment. Do not overwrite or remove it.
117    Also, make sure to start the actual text at the margin.
118    =========================================================
119
120
121 ABI Changes
122 -----------
123
124 .. This section should contain ABI changes. Sample format:
125
126    * sample: Add a short 1-2 sentence description of the ABI change
127      which was announced in the previous releases and made in this release.
128      Start with a scope label like "ethdev:".
129      Use fixed width quotes for ``function_names`` or ``struct_names``.
130      Use the past tense.
131
132    This section is a comment. Do not overwrite or remove it.
133    Also, make sure to start the actual text at the margin.
134    =========================================================
135
136 * No ABI change that would break compatibility with DPDK 20.02 and 19.11.
137
138
139 Known Issues
140 ------------
141
142 .. This section should contain new known issues in this release. Sample format:
143
144    * **Add title in present tense with full stop.**
145
146      Add a short 1-2 sentence description of the known issue
147      in the present tense. Add information on any known workarounds.
148
149    This section is a comment. Do not overwrite or remove it.
150    Also, make sure to start the actual text at the margin.
151    =========================================================
152
153
154 Tested Platforms
155 ----------------
156
157 .. This section should contain a list of platforms that were tested
158    with this release.
159
160    The format is:
161
162    * <vendor> platform with <vendor> <type of devices> combinations
163
164      * List of CPU
165      * List of OS
166      * List of devices
167      * Other relevant details...
168
169    This section is a comment. Do not overwrite or remove it.
170    Also, make sure to start the actual text at the margin.
171    =========================================================