[v2] doc: announce bus/vmbus API changes

Message ID 1741998895-31065-1-git-send-email-longli@linuxonhyperv.com (mailing list archive)
State Superseded, archived
Delegated to: Thomas Monjalon
Headers
Series [v2] doc: announce bus/vmbus API changes |

Checks

Context Check Description
ci/checkpatch warning coding style issues
ci/loongarch-compilation success Compilation OK
ci/loongarch-unit-testing success Unit Testing PASS
ci/github-robot: build success github build: passed
ci/Intel-compilation success Compilation OK
ci/intel-Testing success Testing PASS
ci/intel-Functional success Functional PASS

Commit Message

Long Li March 15, 2025, 12:34 a.m. UTC
From: Long Li <longli@microsoft.com>

All vmbus APIs are used internally by DPDK core and net/netvsc PMD.
It's not feasible or practical to use those APIs by the application.
Those APIs will be moved from "DPDK" to "Internal" in DPDK 25.11.

Signed-off-by: Long Li <longli@microsoft.com>
---
Change in v2:
add details on what APIs will be changed

 doc/guides/rel_notes/deprecation.rst | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
  

Comments

David Marchand March 17, 2025, 9:46 a.m. UTC | #1
On Sat, Mar 15, 2025 at 1:35 AM <longli@linuxonhyperv.com> wrote:
>
> From: Long Li <longli@microsoft.com>
>
> All vmbus APIs are used internally by DPDK core and net/netvsc PMD.
> It's not feasible or practical to use those APIs by the application.
> Those APIs will be moved from "DPDK" to "Internal" in DPDK 25.11.
>
> Signed-off-by: Long Li <longli@microsoft.com>
> ---
> Change in v2:
> add details on what APIs will be changed
>
>  doc/guides/rel_notes/deprecation.rst | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
>
> diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
> index 3f5f0e949c..0ff7dd69cd 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -138,3 +138,27 @@ Deprecation Notices
>    will be deprecated and subsequently removed in DPDK 24.11 release.
>    Before this, the new port library API (functions rte_swx_port_*)
>    will gradually transition from experimental to stable status.
> +
> +* bus/vmbus: Starting DPDK 25.11, all the vmbus APIs will be moved
> +  from "DPDK" to "INTERNAL" in drivers/bus/vmbus/version.map.

Nit: I would not mention version.map: it is just an implementation
detail (of symbol exports/versioning) that will become obsolete
if/when my rework gets merged.
https://patchwork.dpdk.org/project/dpdk/list/?series=34828&state=*


> +  Those APIs are used only by DPDK core and net/netvsc PMD.
> +  The following APIs wil be moved:
> +  rte_vmbus_chan_close
> +  rte_vmbus_chan_open
> +  rte_vmbus_chan_recv
> +  rte_vmbus_chan_recv_raw
> +  rte_vmbus_chan_rx_empty
> +  rte_vmbus_chan_send
> +  rte_vmbus_chan_send_sglist
> +  rte_vmbus_chan_signal_read
> +  rte_vmbus_chan_signal_tx
> +  rte_vmbus_irq_mask
> +  rte_vmbus_irq_read
> +  rte_vmbus_irq_unmask
> +  rte_vmbus_map_device
> +  rte_vmbus_max_channels
> +  rte_vmbus_probe
> +  rte_vmbus_scan
> +  rte_vmbus_set_latency
> +  rte_vmbus_sub_channel_index
> +  rte_vmbus_subchan_open

So all symbols from rte_bus_vmbus.h header become internal.

As part of the move during 25.11, this header will have to be renamed,
and moved to the driver_sdk_headers list like other buses (see
bus_pci_driver.h, for example).
Keep this in mind when doing the API change during 25.11.
(this is just a heads up, we don't need to mention this point in the
deprecation notices)


Otherwise, this cleanup lgtm.
Thanks.
  
Long Li March 17, 2025, 8:10 p.m. UTC | #2
> -----Original Message-----
> From: David Marchand <david.marchand@redhat.com>
> Sent: Monday, March 17, 2025 2:47 AM
> To: longli@linuxonhyperv.com
> Cc: Stephen Hemminger <stephen@networkplumber.org>; Wei Hu
> <weh@microsoft.com>; Thomas Monjalon <thomas@monjalon.net>;
> dev@dpdk.org; Long Li <longli@microsoft.com>
> Subject: [EXTERNAL] Re: [Patch v2] doc: announce bus/vmbus API changes
> 
> On Sat, Mar 15, 2025 at 1:35 AM <longli@linuxonhyperv.com> wrote:
> >
> > From: Long Li <longli@microsoft.com>
> >
> > All vmbus APIs are used internally by DPDK core and net/netvsc PMD.
> > It's not feasible or practical to use those APIs by the application.
> > Those APIs will be moved from "DPDK" to "Internal" in DPDK 25.11.
> >
> > Signed-off-by: Long Li <longli@microsoft.com>
> > ---
> > Change in v2:
> > add details on what APIs will be changed
> >
> >  doc/guides/rel_notes/deprecation.rst | 24 ++++++++++++++++++++++++
> >  1 file changed, 24 insertions(+)
> >
> > diff --git a/doc/guides/rel_notes/deprecation.rst
> > b/doc/guides/rel_notes/deprecation.rst
> > index 3f5f0e949c..0ff7dd69cd 100644
> > --- a/doc/guides/rel_notes/deprecation.rst
> > +++ b/doc/guides/rel_notes/deprecation.rst
> > @@ -138,3 +138,27 @@ Deprecation Notices
> >    will be deprecated and subsequently removed in DPDK 24.11 release.
> >    Before this, the new port library API (functions rte_swx_port_*)
> >    will gradually transition from experimental to stable status.
> > +
> > +* bus/vmbus: Starting DPDK 25.11, all the vmbus APIs will be moved
> > +  from "DPDK" to "INTERNAL" in drivers/bus/vmbus/version.map.
> 
> Nit: I would not mention version.map: it is just an implementation detail (of
> symbol exports/versioning) that will become obsolete if/when my rework gets
> merged.
> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatchwor
> k.dpdk.org%2Fproject%2Fdpdk%2Flist%2F%3Fseries%3D34828%26state%3D*&d
> ata=05%7C02%7Clongli%40microsoft.com%7C9a347cffe6864e0ed3a308dd6538a
> 22c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C6387780161137533
> 63%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuM
> DAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%
> 7C&sdata=FlVXxOVE4%2BRDLX4Nhn0m3Igu%2B%2BlXMly7OMZafhAhgYE%3D&
> reserved=0
> 
> 
> > +  Those APIs are used only by DPDK core and net/netvsc PMD.
> > +  The following APIs wil be moved:
> > +  rte_vmbus_chan_close
> > +  rte_vmbus_chan_open
> > +  rte_vmbus_chan_recv
> > +  rte_vmbus_chan_recv_raw
> > +  rte_vmbus_chan_rx_empty
> > +  rte_vmbus_chan_send
> > +  rte_vmbus_chan_send_sglist
> > +  rte_vmbus_chan_signal_read
> > +  rte_vmbus_chan_signal_tx
> > +  rte_vmbus_irq_mask
> > +  rte_vmbus_irq_read
> > +  rte_vmbus_irq_unmask
> > +  rte_vmbus_map_device
> > +  rte_vmbus_max_channels
> > +  rte_vmbus_probe
> > +  rte_vmbus_scan
> > +  rte_vmbus_set_latency
> > +  rte_vmbus_sub_channel_index
> > +  rte_vmbus_subchan_open
> 
> So all symbols from rte_bus_vmbus.h header become internal.
> 
> As part of the move during 25.11, this header will have to be renamed, and
> moved to the driver_sdk_headers list like other buses (see bus_pci_driver.h, for
> example).
> Keep this in mind when doing the API change during 25.11.
> (this is just a heads up, we don't need to mention this point in the deprecation
> notices)
> 
> 
> Otherwise, this cleanup lgtm.
> Thanks.
> 
> --
> David Marchand

Thank you.

Sent v3.

Long
  

Patch

diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
index 3f5f0e949c..0ff7dd69cd 100644
--- a/doc/guides/rel_notes/deprecation.rst
+++ b/doc/guides/rel_notes/deprecation.rst
@@ -138,3 +138,27 @@  Deprecation Notices
   will be deprecated and subsequently removed in DPDK 24.11 release.
   Before this, the new port library API (functions rte_swx_port_*)
   will gradually transition from experimental to stable status.
+
+* bus/vmbus: Starting DPDK 25.11, all the vmbus APIs will be moved
+  from "DPDK" to "INTERNAL" in drivers/bus/vmbus/version.map.
+  Those APIs are used only by DPDK core and net/netvsc PMD.
+  The following APIs wil be moved:
+  rte_vmbus_chan_close
+  rte_vmbus_chan_open
+  rte_vmbus_chan_recv
+  rte_vmbus_chan_recv_raw
+  rte_vmbus_chan_rx_empty
+  rte_vmbus_chan_send
+  rte_vmbus_chan_send_sglist
+  rte_vmbus_chan_signal_read
+  rte_vmbus_chan_signal_tx
+  rte_vmbus_irq_mask
+  rte_vmbus_irq_read
+  rte_vmbus_irq_unmask
+  rte_vmbus_map_device
+  rte_vmbus_max_channels
+  rte_vmbus_probe
+  rte_vmbus_scan
+  rte_vmbus_set_latency
+  rte_vmbus_sub_channel_index
+  rte_vmbus_subchan_open