[v4] doc: announce KNI deprecation

Message ID 20220713161047.121805-1-thomas@monjalon.net (mailing list archive)
State Accepted, archived
Delegated to: Andrew Rybchenko
Headers
Series [v4] doc: announce KNI deprecation |

Checks

Context Check Description
ci/checkpatch warning coding style issues
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-aarch64-unit-testing success Testing PASS
ci/iol-aarch64-compile-testing success Testing PASS
ci/github-robot: build success github build: passed
ci/iol-intel-Functional success Functional Testing PASS
ci/iol-x86_64-unit-testing success Testing PASS
ci/iol-x86_64-compile-testing success Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-abi-testing success Testing PASS
ci/Intel-compilation success Compilation OK
ci/intel-Testing success Testing PASS

Commit Message

Thomas Monjalon July 13, 2022, 4:10 p.m. UTC
  From: Ferruh Yigit <ferruh.yigit@intel.com>

Announce the deprecation plan for KNI kernel module, library and example.

Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
---
Squashed and updated 2 deprecations:
https://patches.dpdk.org/project/dpdk/patch/20211124171609.3101896-2-ferruh.yigit@intel.com/
https://patches.dpdk.org/project/dpdk/patch/20211124171609.3101896-2-ferruh.yigit@intel.com/
---
 doc/guides/prog_guide/kernel_nic_interface.rst | 3 +++
 doc/guides/rel_notes/deprecation.rst           | 9 +++++++++
 2 files changed, 12 insertions(+)
  

Comments

Thomas Monjalon July 13, 2022, 7:51 p.m. UTC | #1
13/07/2022 18:10, Thomas Monjalon:
> From: Ferruh Yigit <ferruh.yigit@intel.com>
> 
> Announce the deprecation plan for KNI kernel module, library and example.
> 
> Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
> ---
> Squashed and updated 2 deprecations:
> https://patches.dpdk.org/project/dpdk/patch/20211124171609.3101896-2-ferruh.yigit@intel.com/
> https://patches.dpdk.org/project/dpdk/patch/20211124171609.3101896-2-ferruh.yigit@intel.com/

This is a mistake. The second deprecation squashed here is
https://patches.dpdk.org/project/dpdk/patch/20220630165031.79183-1-bruce.richardson@intel.com/

> ---
>  doc/guides/prog_guide/kernel_nic_interface.rst | 3 +++
>  doc/guides/rel_notes/deprecation.rst           | 9 +++++++++
>  2 files changed, 12 insertions(+)
> 
> diff --git a/doc/guides/prog_guide/kernel_nic_interface.rst b/doc/guides/prog_guide/kernel_nic_interface.rst
> index e021cc69b6..03b5bca958 100644
> --- a/doc/guides/prog_guide/kernel_nic_interface.rst
> +++ b/doc/guides/prog_guide/kernel_nic_interface.rst
> @@ -8,6 +8,9 @@ Kernel NIC Interface
>  
>  .. note::
>  
> +   KNI is deprecated and will be removed in future.
> +   See :doc:`../rel_notes/deprecation`.
> +
>     For an alternative to KNI, that does not require any out-of-tree Linux kernel modules,
>     or a custom library, see :ref:`virtio_user_as_exception_path`.
>  
> diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
> index 4e5b23c53d..e54597c591 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -48,6 +48,15 @@ Deprecation Notices
>    in the header will not be considered as ABI anymore. This change is inspired
>    by the RFC https://patchwork.dpdk.org/project/dpdk/list/?series=17176.
>  
> +* kni: The KNI kernel module and library are not recommended for use by new
> +  applications - other technologies such as virtio-user are recommended instead.
> +  The KNI kernel module and library will be removed from DPDK 23.11,
> +  following the DPDK technical board
> +  `decision <https://mails.dpdk.org/archives/dev/2021-January/197077.html>`_
> +  and `refinement <http://mails.dpdk.org/archives/dev/2022-June/243596.html>`_.
> +  The first steps are to add deprecation warnings
> +  and to remove the example application from 22.11.
> +
>  * lib: will fix extending some enum/define breaking the ABI. There are multiple
>    samples in DPDK that enum/define terminated with a ``.*MAX.*`` value which is
>    used by iterators, and arrays holding these values are sized with this
>
  
Bruce Richardson July 14, 2022, 9:20 a.m. UTC | #2
On Wed, Jul 13, 2022 at 06:10:47PM +0200, Thomas Monjalon wrote:
> From: Ferruh Yigit <ferruh.yigit@intel.com>
> 
> Announce the deprecation plan for KNI kernel module, library and example.
> 
> Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
> ---
> Squashed and updated 2 deprecations:
> https://patches.dpdk.org/project/dpdk/patch/20211124171609.3101896-2-ferruh.yigit@intel.com/
> https://patches.dpdk.org/project/dpdk/patch/20211124171609.3101896-2-ferruh.yigit@intel.com/
> ---

One suggestion below.
With corrected link and with/without suggested change:

Acked-by: Bruce Richardson <bruce.richardson@intel.com>

>  doc/guides/prog_guide/kernel_nic_interface.rst | 3 +++
>  doc/guides/rel_notes/deprecation.rst           | 9 +++++++++
>  2 files changed, 12 insertions(+)
> 
> diff --git a/doc/guides/prog_guide/kernel_nic_interface.rst b/doc/guides/prog_guide/kernel_nic_interface.rst
> index e021cc69b6..03b5bca958 100644
> --- a/doc/guides/prog_guide/kernel_nic_interface.rst
> +++ b/doc/guides/prog_guide/kernel_nic_interface.rst
> @@ -8,6 +8,9 @@ Kernel NIC Interface
>  
>  .. note::
>  
> +   KNI is deprecated and will be removed in future.
> +   See :doc:`../rel_notes/deprecation`.
> +
>     For an alternative to KNI, that does not require any out-of-tree Linux kernel modules,
>     or a custom library, see :ref:`virtio_user_as_exception_path`.
>  
> diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
> index 4e5b23c53d..e54597c591 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -48,6 +48,15 @@ Deprecation Notices
>    in the header will not be considered as ABI anymore. This change is inspired
>    by the RFC https://patchwork.dpdk.org/project/dpdk/list/?series=17176.
>  
> +* kni: The KNI kernel module and library are not recommended for use by new
> +  applications - other technologies such as virtio-user are recommended instead.
> +  The KNI kernel module and library will be removed from DPDK 23.11,
> +  following the DPDK technical board
> +  `decision <https://mails.dpdk.org/archives/dev/2021-January/197077.html>`_
> +  and `refinement <http://mails.dpdk.org/archives/dev/2022-June/243596.html>`_.
> +  The first steps are to add deprecation warnings
> +  and to remove the example application from 22.11.
> +

I wonder whether having this done as bullet points in chronological order
might be clearer. Something like:

* kni: The KNI kernel module and library are not recommended for use by new
  applications - other technologies such as virtio-user are recommended instead.
  Following the DPDK technical board
  `decision <https://mails.dpdk.org/archives/dev/2021-January/197077.html>`_
  and `refinement <http://mails.dpdk.org/archives/dev/2022-June/243596.html>`_:
  * The KNI example application will be removed from DPDK 22.11 release
  * The KNI kernel module and library will be removed from the DPDK 23.11
    release
  
David Marchand July 14, 2022, 9:30 a.m. UTC | #3
On Wed, Jul 13, 2022 at 6:10 PM Thomas Monjalon <thomas@monjalon.net> wrote:
>
> From: Ferruh Yigit <ferruh.yigit@intel.com>
>
> Announce the deprecation plan for KNI kernel module, library and example.
>
> Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>

Acked-by: David Marchand <david.marchand@redhat.com>
  
Thomas Monjalon July 14, 2022, 10:07 a.m. UTC | #4
14/07/2022 11:20, Bruce Richardson:
> On Wed, Jul 13, 2022 at 06:10:47PM +0200, Thomas Monjalon wrote:
> > From: Ferruh Yigit <ferruh.yigit@intel.com>
> > 
> > Announce the deprecation plan for KNI kernel module, library and example.
> > 
> > Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
> > Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
> > ---
> > Squashed and updated 2 deprecations:
> > https://patches.dpdk.org/project/dpdk/patch/20211124171609.3101896-2-ferruh.yigit@intel.com/
> > https://patches.dpdk.org/project/dpdk/patch/20211124171609.3101896-2-ferruh.yigit@intel.com/
> > ---
> 
> One suggestion below.
> With corrected link and with/without suggested change:
> 
> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
> 
> >  doc/guides/prog_guide/kernel_nic_interface.rst | 3 +++
> >  doc/guides/rel_notes/deprecation.rst           | 9 +++++++++
> >  2 files changed, 12 insertions(+)
> > 
> > diff --git a/doc/guides/prog_guide/kernel_nic_interface.rst b/doc/guides/prog_guide/kernel_nic_interface.rst
> > index e021cc69b6..03b5bca958 100644
> > --- a/doc/guides/prog_guide/kernel_nic_interface.rst
> > +++ b/doc/guides/prog_guide/kernel_nic_interface.rst
> > @@ -8,6 +8,9 @@ Kernel NIC Interface
> >  
> >  .. note::
> >  
> > +   KNI is deprecated and will be removed in future.
> > +   See :doc:`../rel_notes/deprecation`.
> > +
> >     For an alternative to KNI, that does not require any out-of-tree Linux kernel modules,
> >     or a custom library, see :ref:`virtio_user_as_exception_path`.
> >  
> > diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
> > index 4e5b23c53d..e54597c591 100644
> > --- a/doc/guides/rel_notes/deprecation.rst
> > +++ b/doc/guides/rel_notes/deprecation.rst
> > @@ -48,6 +48,15 @@ Deprecation Notices
> >    in the header will not be considered as ABI anymore. This change is inspired
> >    by the RFC https://patchwork.dpdk.org/project/dpdk/list/?series=17176.
> >  
> > +* kni: The KNI kernel module and library are not recommended for use by new
> > +  applications - other technologies such as virtio-user are recommended instead.
> > +  The KNI kernel module and library will be removed from DPDK 23.11,
> > +  following the DPDK technical board
> > +  `decision <https://mails.dpdk.org/archives/dev/2021-January/197077.html>`_
> > +  and `refinement <http://mails.dpdk.org/archives/dev/2022-June/243596.html>`_.
> > +  The first steps are to add deprecation warnings
> > +  and to remove the example application from 22.11.
> > +
> 
> I wonder whether having this done as bullet points in chronological order
> might be clearer. Something like:
> 
> * kni: The KNI kernel module and library are not recommended for use by new
>   applications - other technologies such as virtio-user are recommended instead.
>   Following the DPDK technical board
>   `decision <https://mails.dpdk.org/archives/dev/2021-January/197077.html>`_
>   and `refinement <http://mails.dpdk.org/archives/dev/2022-June/243596.html>`_:
>   * The KNI example application will be removed from DPDK 22.11 release
>   * The KNI kernel module and library will be removed from the DPDK 23.11
>     release

Yes I prefer your version. Bullets are always better :)
  
Ferruh Yigit July 14, 2022, 2:50 p.m. UTC | #5
On 7/14/2022 10:20 AM, Bruce Richardson wrote:
> On Wed, Jul 13, 2022 at 06:10:47PM +0200, Thomas Monjalon wrote:
>> From: Ferruh Yigit <ferruh.yigit@intel.com>
>>
>> Announce the deprecation plan for KNI kernel module, library and example.
>>
>> Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
>> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
>> ---
>> Squashed and updated 2 deprecations:
>> https://patches.dpdk.org/project/dpdk/patch/20211124171609.3101896-2-ferruh.yigit@intel.com/
>> https://patches.dpdk.org/project/dpdk/patch/20211124171609.3101896-2-ferruh.yigit@intel.com/
>> ---
> 
> One suggestion below.
> With corrected link and with/without suggested change:
> 
> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
> 
>>   doc/guides/prog_guide/kernel_nic_interface.rst | 3 +++
>>   doc/guides/rel_notes/deprecation.rst           | 9 +++++++++
>>   2 files changed, 12 insertions(+)
>>
>> diff --git a/doc/guides/prog_guide/kernel_nic_interface.rst b/doc/guides/prog_guide/kernel_nic_interface.rst
>> index e021cc69b6..03b5bca958 100644
>> --- a/doc/guides/prog_guide/kernel_nic_interface.rst
>> +++ b/doc/guides/prog_guide/kernel_nic_interface.rst
>> @@ -8,6 +8,9 @@ Kernel NIC Interface
>>   
>>   .. note::
>>   
>> +   KNI is deprecated and will be removed in future.
>> +   See :doc:`../rel_notes/deprecation`.
>> +
>>      For an alternative to KNI, that does not require any out-of-tree Linux kernel modules,
>>      or a custom library, see :ref:`virtio_user_as_exception_path`.
>>   
>> diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
>> index 4e5b23c53d..e54597c591 100644
>> --- a/doc/guides/rel_notes/deprecation.rst
>> +++ b/doc/guides/rel_notes/deprecation.rst
>> @@ -48,6 +48,15 @@ Deprecation Notices
>>     in the header will not be considered as ABI anymore. This change is inspired
>>     by the RFC https://patchwork.dpdk.org/project/dpdk/list/?series=17176.
>>   
>> +* kni: The KNI kernel module and library are not recommended for use by new
>> +  applications - other technologies such as virtio-user are recommended instead.
>> +  The KNI kernel module and library will be removed from DPDK 23.11,
>> +  following the DPDK technical board
>> +  `decision <https://mails.dpdk.org/archives/dev/2021-January/197077.html>`_
>> +  and `refinement <http://mails.dpdk.org/archives/dev/2022-June/243596.html>`_.
>> +  The first steps are to add deprecation warnings
>> +  and to remove the example application from 22.11.
>> +
> 
> I wonder whether having this done as bullet points in chronological order
> might be clearer. Something like:
> 
> * kni: The KNI kernel module and library are not recommended for use by new
>    applications - other technologies such as virtio-user are recommended instead.
>    Following the DPDK technical board
>    `decision <https://mails.dpdk.org/archives/dev/2021-January/197077.html>`_
>    and `refinement <http://mails.dpdk.org/archives/dev/2022-June/243596.html>`_:
>    * The KNI example application will be removed from DPDK 22.11 release
>    * The KNI kernel module and library will be removed from the DPDK 23.11
>      release

+1 to list actions in chronological order

I have a concern with removing sample application without replacing one 
with alternate methods: virtio-user and tun/tap.

It is easy to create a virtio-user PMD by testpmd or any sample 
application, and as far as I understand Bruce already documented this. 
But for many KNI users they are not using KNI PMD, so replacing KNI with 
this new method may require some hand holding.
One option can be hotplug the virtio-user PMD and use the port_id for 
packet forwarding, and I don't know if the PMD has APIs that 
applications can use directly, as done in KNI, @Maxime & @Chenbo can 
answer this better.

It can be good to have a sample application for above before deprecating 
the KNI sample application.
And same sample can use tun/tap PMD with a runtime parameter, to show 
how other example can be used, again tap can be used as tap PMD or Linux 
tun/tap APIs.

Question is who can work on such a sample, but if we can find some 
resource I am for having a replacement exception path sample app before 
deprecating KNI.

Thanks,
ferruh
  
Ferruh Yigit July 14, 2022, 3:03 p.m. UTC | #6
On 7/14/2022 3:50 PM, Ferruh Yigit wrote:
> On 7/14/2022 10:20 AM, Bruce Richardson wrote:
>> On Wed, Jul 13, 2022 at 06:10:47PM +0200, Thomas Monjalon wrote:
>>> From: Ferruh Yigit <ferruh.yigit@intel.com>
>>>
>>> Announce the deprecation plan for KNI kernel module, library and 
>>> example.
>>>
>>> Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
>>> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
>>> ---
>>> Squashed and updated 2 deprecations:
>>> https://patches.dpdk.org/project/dpdk/patch/20211124171609.3101896-2-ferruh.yigit@intel.com/
>>> https://patches.dpdk.org/project/dpdk/patch/20211124171609.3101896-2-ferruh.yigit@intel.com/
>>> ---
>>
>> One suggestion below.
>> With corrected link and with/without suggested change:
>>
>> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
>>
>>>   doc/guides/prog_guide/kernel_nic_interface.rst | 3 +++
>>>   doc/guides/rel_notes/deprecation.rst           | 9 +++++++++
>>>   2 files changed, 12 insertions(+)
>>>
>>> diff --git a/doc/guides/prog_guide/kernel_nic_interface.rst 
>>> b/doc/guides/prog_guide/kernel_nic_interface.rst
>>> index e021cc69b6..03b5bca958 100644
>>> --- a/doc/guides/prog_guide/kernel_nic_interface.rst
>>> +++ b/doc/guides/prog_guide/kernel_nic_interface.rst
>>> @@ -8,6 +8,9 @@ Kernel NIC Interface
>>>   .. note::
>>> +   KNI is deprecated and will be removed in future.
>>> +   See :doc:`../rel_notes/deprecation`.
>>> +
>>>      For an alternative to KNI, that does not require any out-of-tree 
>>> Linux kernel modules,
>>>      or a custom library, see :ref:`virtio_user_as_exception_path`.
>>> diff --git a/doc/guides/rel_notes/deprecation.rst 
>>> b/doc/guides/rel_notes/deprecation.rst
>>> index 4e5b23c53d..e54597c591 100644
>>> --- a/doc/guides/rel_notes/deprecation.rst
>>> +++ b/doc/guides/rel_notes/deprecation.rst
>>> @@ -48,6 +48,15 @@ Deprecation Notices
>>>     in the header will not be considered as ABI anymore. This change 
>>> is inspired
>>>     by the RFC 
>>> https://patchwork.dpdk.org/project/dpdk/list/?series=17176.
>>> +* kni: The KNI kernel module and library are not recommended for use 
>>> by new
>>> +  applications - other technologies such as virtio-user are 
>>> recommended instead.
>>> +  The KNI kernel module and library will be removed from DPDK 23.11,
>>> +  following the DPDK technical board
>>> +  `decision 
>>> <https://mails.dpdk.org/archives/dev/2021-January/197077.html>`_
>>> +  and `refinement 
>>> <http://mails.dpdk.org/archives/dev/2022-June/243596.html>`_.
>>> +  The first steps are to add deprecation warnings
>>> +  and to remove the example application from 22.11.
>>> +
>>
>> I wonder whether having this done as bullet points in chronological order
>> might be clearer. Something like:
>>
>> * kni: The KNI kernel module and library are not recommended for use 
>> by new
>>    applications - other technologies such as virtio-user are 
>> recommended instead.
>>    Following the DPDK technical board
>>    `decision 
>> <https://mails.dpdk.org/archives/dev/2021-January/197077.html>`_
>>    and `refinement 
>> <http://mails.dpdk.org/archives/dev/2022-June/243596.html>`_:
>>    * The KNI example application will be removed from DPDK 22.11 release
>>    * The KNI kernel module and library will be removed from the DPDK 
>> 23.11
>>      release
> 
> +1 to list actions in chronological order
> 
> I have a concern with removing sample application without replacing one 
> with alternate methods: virtio-user and tun/tap.
> 
> It is easy to create a virtio-user PMD by testpmd or any sample 
> application, and as far as I understand Bruce already documented this. 
> But for many KNI users they are not using KNI PMD, so replacing KNI with 
> this new method may require some hand holding.

As mentioned KNI PMD, it also should be removed when library and module 
are removed, may be good to list above to be explicit.

> One option can be hotplug the virtio-user PMD and use the port_id for 
> packet forwarding, and I don't know if the PMD has APIs that 
> applications can use directly, as done in KNI, @Maxime & @Chenbo can 
> answer this better.
> 
> It can be good to have a sample application for above before deprecating 
> the KNI sample application.
> And same sample can use tun/tap PMD with a runtime parameter, to show 
> how other example can be used, again tap can be used as tap PMD or Linux 
> tun/tap APIs.
> 
> Question is who can work on such a sample, but if we can find some 
> resource I am for having a replacement exception path sample app before 
> deprecating KNI.
> 
> Thanks,
> ferruh
> 
> 
>
  
Thomas Monjalon July 15, 2022, 3:32 p.m. UTC | #7
14/07/2022 17:03, Ferruh Yigit:
> On 7/14/2022 3:50 PM, Ferruh Yigit wrote:
> > On 7/14/2022 10:20 AM, Bruce Richardson wrote:
> >> On Wed, Jul 13, 2022 at 06:10:47PM +0200, Thomas Monjalon wrote:
> >>> From: Ferruh Yigit <ferruh.yigit@intel.com>
> >>>
> >>> Announce the deprecation plan for KNI kernel module, library and 
> >>> example.
> >>>
> >>> Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
> >>> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
> >>> ---
> >>> Squashed and updated 2 deprecations:
> >>> https://patches.dpdk.org/project/dpdk/patch/20211124171609.3101896-2-ferruh.yigit@intel.com/
> >>> https://patches.dpdk.org/project/dpdk/patch/20211124171609.3101896-2-ferruh.yigit@intel.com/
> >>> ---
> >>
> >> One suggestion below.
> >> With corrected link and with/without suggested change:
> >>
> >> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
> >>
> >>>   doc/guides/prog_guide/kernel_nic_interface.rst | 3 +++
> >>>   doc/guides/rel_notes/deprecation.rst           | 9 +++++++++
> >>>   2 files changed, 12 insertions(+)
> >>>
> >>> diff --git a/doc/guides/prog_guide/kernel_nic_interface.rst 
> >>> b/doc/guides/prog_guide/kernel_nic_interface.rst
> >>> index e021cc69b6..03b5bca958 100644
> >>> --- a/doc/guides/prog_guide/kernel_nic_interface.rst
> >>> +++ b/doc/guides/prog_guide/kernel_nic_interface.rst
> >>> @@ -8,6 +8,9 @@ Kernel NIC Interface
> >>>   .. note::
> >>> +   KNI is deprecated and will be removed in future.
> >>> +   See :doc:`../rel_notes/deprecation`.
> >>> +
> >>>      For an alternative to KNI, that does not require any out-of-tree 
> >>> Linux kernel modules,
> >>>      or a custom library, see :ref:`virtio_user_as_exception_path`.
> >>> diff --git a/doc/guides/rel_notes/deprecation.rst 
> >>> b/doc/guides/rel_notes/deprecation.rst
> >>> index 4e5b23c53d..e54597c591 100644
> >>> --- a/doc/guides/rel_notes/deprecation.rst
> >>> +++ b/doc/guides/rel_notes/deprecation.rst
> >>> @@ -48,6 +48,15 @@ Deprecation Notices
> >>>     in the header will not be considered as ABI anymore. This change 
> >>> is inspired
> >>>     by the RFC 
> >>> https://patchwork.dpdk.org/project/dpdk/list/?series=17176.
> >>> +* kni: The KNI kernel module and library are not recommended for use 
> >>> by new
> >>> +  applications - other technologies such as virtio-user are 
> >>> recommended instead.
> >>> +  The KNI kernel module and library will be removed from DPDK 23.11,
> >>> +  following the DPDK technical board
> >>> +  `decision 
> >>> <https://mails.dpdk.org/archives/dev/2021-January/197077.html>`_
> >>> +  and `refinement 
> >>> <http://mails.dpdk.org/archives/dev/2022-June/243596.html>`_.
> >>> +  The first steps are to add deprecation warnings
> >>> +  and to remove the example application from 22.11.
> >>> +
> >>
> >> I wonder whether having this done as bullet points in chronological order
> >> might be clearer. Something like:
> >>
> >> * kni: The KNI kernel module and library are not recommended for use 
> >> by new
> >>    applications - other technologies such as virtio-user are 
> >> recommended instead.
> >>    Following the DPDK technical board
> >>    `decision 
> >> <https://mails.dpdk.org/archives/dev/2021-January/197077.html>`_
> >>    and `refinement 
> >> <http://mails.dpdk.org/archives/dev/2022-June/243596.html>`_:
> >>    * The KNI example application will be removed from DPDK 22.11 release
> >>    * The KNI kernel module and library will be removed from the DPDK 
> >> 23.11
> >>      release
> > 
> > +1 to list actions in chronological order
> > 
> > I have a concern with removing sample application without replacing one 
> > with alternate methods: virtio-user and tun/tap.
> > 
> > It is easy to create a virtio-user PMD by testpmd or any sample 
> > application, and as far as I understand Bruce already documented this. 
> > But for many KNI users they are not using KNI PMD, so replacing KNI with 
> > this new method may require some hand holding.
> 
> As mentioned KNI PMD, it also should be removed when library and module 
> are removed, may be good to list above to be explicit.

Yes I'm adding the PMD in removal list.

> > One option can be hotplug the virtio-user PMD and use the port_id for 
> > packet forwarding, and I don't know if the PMD has APIs that 
> > applications can use directly, as done in KNI, @Maxime & @Chenbo can 
> > answer this better.
> > 
> > It can be good to have a sample application for above before deprecating 
> > the KNI sample application.
> > And same sample can use tun/tap PMD with a runtime parameter, to show 
> > how other example can be used, again tap can be used as tap PMD or Linux 
> > tun/tap APIs.
> > 
> > Question is who can work on such a sample, but if we can find some 
> > resource I am for having a replacement exception path sample app before 
> > deprecating KNI.

We are not sure we'll have time and resource,
and it has not been discussed earlier.
Thus I'll consider having a replacement example as a nice-to-have.
I have to be a bit conservative with techboard decisions.
  
Thomas Monjalon July 15, 2022, 3:33 p.m. UTC | #8
13/07/2022 21:51, Thomas Monjalon:
> 13/07/2022 18:10, Thomas Monjalon:
> > From: Ferruh Yigit <ferruh.yigit@intel.com>
> > 
> > Announce the deprecation plan for KNI kernel module, library and example.
> > 
> > Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
> > Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
> > ---
> > Squashed and updated 2 deprecations:
> > https://patches.dpdk.org/project/dpdk/patch/20211124171609.3101896-2-ferruh.yigit@intel.com/
> > https://patches.dpdk.org/project/dpdk/patch/20211124171609.3101896-2-ferruh.yigit@intel.com/
> 
> This is a mistake. The second deprecation squashed here is
> https://patches.dpdk.org/project/dpdk/patch/20220630165031.79183-1-bruce.richardson@intel.com/

Applied with minor improvements discussed in the thread:
	- ordered list of actions
	- PMD to be removed in 23.11
  

Patch

diff --git a/doc/guides/prog_guide/kernel_nic_interface.rst b/doc/guides/prog_guide/kernel_nic_interface.rst
index e021cc69b6..03b5bca958 100644
--- a/doc/guides/prog_guide/kernel_nic_interface.rst
+++ b/doc/guides/prog_guide/kernel_nic_interface.rst
@@ -8,6 +8,9 @@  Kernel NIC Interface
 
 .. note::
 
+   KNI is deprecated and will be removed in future.
+   See :doc:`../rel_notes/deprecation`.
+
    For an alternative to KNI, that does not require any out-of-tree Linux kernel modules,
    or a custom library, see :ref:`virtio_user_as_exception_path`.
 
diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
index 4e5b23c53d..e54597c591 100644
--- a/doc/guides/rel_notes/deprecation.rst
+++ b/doc/guides/rel_notes/deprecation.rst
@@ -48,6 +48,15 @@  Deprecation Notices
   in the header will not be considered as ABI anymore. This change is inspired
   by the RFC https://patchwork.dpdk.org/project/dpdk/list/?series=17176.
 
+* kni: The KNI kernel module and library are not recommended for use by new
+  applications - other technologies such as virtio-user are recommended instead.
+  The KNI kernel module and library will be removed from DPDK 23.11,
+  following the DPDK technical board
+  `decision <https://mails.dpdk.org/archives/dev/2021-January/197077.html>`_
+  and `refinement <http://mails.dpdk.org/archives/dev/2022-June/243596.html>`_.
+  The first steps are to add deprecation warnings
+  and to remove the example application from 22.11.
+
 * lib: will fix extending some enum/define breaking the ABI. There are multiple
   samples in DPDK that enum/define terminated with a ``.*MAX.*`` value which is
   used by iterators, and arrays holding these values are sized with this