Skip to contentSkip to conversation

doc: announce bus/vmbus API changes

PATCH Superseded [email protected] 3 participants 3 messages Mar 15, 2025 – Mar 17, 2025

v2 of 3 Superseded Latest is v3 →

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 doc: announce bus/vmbus API changes

From: Long Li <[email protected]>

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.

---
Change in v2:
add details on what APIs will be changed

 doc/guides/rel_notes/deprecation.rst | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
doc/guides/rel_notes/deprecation.rst +24 -0
index 3f5f0e949c..0ff7dd69cd 100644
@@ -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
Signature · 1 line
2.34.1
#1 lore raw
Quoted 20 lines · On Sat, Mar 15, 2025 at 1:35 AM <[email protected]> wrote:

From: Long Li <[email protected]>

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.

---
Change in v2:
add details on what APIs will be changed

 doc/guides/rel_notes/deprecation.rst | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
doc/guides/rel_notes/deprecation.rst +0 -0
index 3f5f0e949c..0ff7dd69cd 100644

doc/guides/rel_notes/deprecation.rst Deprecation Notices · line 143

Quoted 6 lines
doc/guides/rel_notes/deprecation.rst +3 -0
@@ -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=*

Quoted 11 lines
doc/guides/rel_notes/deprecation.rst +11 -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

doc/guides/rel_notes/deprecation.rst Deprecation Notices · line 164

Quoted 10 lines
doc/guides/rel_notes/deprecation.rst +10 -0
+  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.

Signature · 1 line
David Marchand
#2 lore raw
Quoted 85 lines

-----Original Message-----
From: David Marchand <[email protected]>
Sent: Monday, March 17, 2025 2:47 AM
To: [email protected]
Cc: Stephen Hemminger <[email protected]>; Wei Hu <[email protected]>; Thomas Monjalon <[email protected]>; [email protected]; Long Li <[email protected]>
Subject: [EXTERNAL] Re: [Patch v2] doc: announce bus/vmbus API changes

Quoted 21 lines · On Sat, Mar 15, 2025 at 1:35 AM <[email protected]> wrote:

From: Long Li <[email protected]>

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.

---
Change in v2:
add details on what APIs will be changed

 doc/guides/rel_notes/deprecation.rst | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
doc/guides/rel_notes/deprecation.rst +0 -0
index 3f5f0e949c..0ff7dd69cd 100644

doc/guides/rel_notes/deprecation.rst Deprecation Notices · line 143

Quoted 6 lines
doc/guides/rel_notes/deprecation.rst +3 -0
@@ -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

Quoted 11 lines
doc/guides/rel_notes/deprecation.rst +11 -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

doc/guides/rel_notes/deprecation.rst Deprecation Notices · line 164

Quoted 10 lines
doc/guides/rel_notes/deprecation.rst +10 -0
+  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)

Quoted 5 lines

Otherwise, this cleanup lgtm.
Thanks.

--
David Marchand

Thank you.

Sent v3.

Long