* [dpdk-dev] [PATCH v2] vhost: mark vDPA driver API as internal
@ 2021-10-28 14:15 Maxime Coquelin
2021-10-29 16:15 ` [dpdk-dev] [dpdk-techboard] " Thomas Monjalon
2021-11-01 6:50 ` [dpdk-dev] " Xia, Chenbo
0 siblings, 2 replies; 4+ messages in thread
From: Maxime Coquelin @ 2021-10-28 14:15 UTC (permalink / raw)
To: dev, techboard, chenbo.xia, xuemingl, xiao.w.wang, david.marchand
Cc: Maxime Coquelin
This patch marks the vDPA driver APIs as internal and
rename the corresponding header file to vdpa_driver.h.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
---
Hi Techboard,
Please vote for an exception for this unannounced API
breakage.
Changes in v2:
==============
- Alphabetical ordering in version.map (David)
- Rename header to vdpa_driver.h (David)
- Add Techboard in Cc to vote for API breakage exception
drivers/vdpa/ifc/ifcvf_vdpa.c | 2 +-
drivers/vdpa/mlx5/mlx5_vdpa.h | 2 +-
lib/vhost/meson.build | 4 +++-
lib/vhost/vdpa.c | 2 +-
lib/vhost/{rte_vdpa_dev.h => vdpa_driver.h} | 12 +++++++++---
lib/vhost/version.map | 13 +++++++++----
lib/vhost/vhost.h | 2 +-
7 files changed, 25 insertions(+), 12 deletions(-)
rename lib/vhost/{rte_vdpa_dev.h => vdpa_driver.h} (95%)
diff --git a/drivers/vdpa/ifc/ifcvf_vdpa.c b/drivers/vdpa/ifc/ifcvf_vdpa.c
index dd5251d382..3853c4cf7e 100644
--- a/drivers/vdpa/ifc/ifcvf_vdpa.c
+++ b/drivers/vdpa/ifc/ifcvf_vdpa.c
@@ -17,7 +17,7 @@
#include <rte_bus_pci.h>
#include <rte_vhost.h>
#include <rte_vdpa.h>
-#include <rte_vdpa_dev.h>
+#include <vdpa_driver.h>
#include <rte_vfio.h>
#include <rte_spinlock.h>
#include <rte_log.h>
diff --git a/drivers/vdpa/mlx5/mlx5_vdpa.h b/drivers/vdpa/mlx5/mlx5_vdpa.h
index cf4f384fa4..a6c9404cb0 100644
--- a/drivers/vdpa/mlx5/mlx5_vdpa.h
+++ b/drivers/vdpa/mlx5/mlx5_vdpa.h
@@ -12,7 +12,7 @@
#pragma GCC diagnostic ignored "-Wpedantic"
#endif
#include <rte_vdpa.h>
-#include <rte_vdpa_dev.h>
+#include <vdpa_driver.h>
#include <rte_vhost.h>
#ifdef PEDANTIC
#pragma GCC diagnostic error "-Wpedantic"
diff --git a/lib/vhost/meson.build b/lib/vhost/meson.build
index 2d8fe0239f..cdb37a4814 100644
--- a/lib/vhost/meson.build
+++ b/lib/vhost/meson.build
@@ -29,9 +29,11 @@ sources = files(
)
headers = files(
'rte_vdpa.h',
- 'rte_vdpa_dev.h',
'rte_vhost.h',
'rte_vhost_async.h',
'rte_vhost_crypto.h',
)
+driver_sdk_headers = files(
+ 'vdpa_driver.h',
+)
deps += ['ethdev', 'cryptodev', 'hash', 'pci']
diff --git a/lib/vhost/vdpa.c b/lib/vhost/vdpa.c
index 6dd91859ac..09ad5d866e 100644
--- a/lib/vhost/vdpa.c
+++ b/lib/vhost/vdpa.c
@@ -17,7 +17,7 @@
#include <rte_tailq.h>
#include "rte_vdpa.h"
-#include "rte_vdpa_dev.h"
+#include "vdpa_driver.h"
#include "vhost.h"
/** Double linked list of vDPA devices. */
diff --git a/lib/vhost/rte_vdpa_dev.h b/lib/vhost/vdpa_driver.h
similarity index 95%
rename from lib/vhost/rte_vdpa_dev.h
rename to lib/vhost/vdpa_driver.h
index b0f494815f..fc2d6acedd 100644
--- a/lib/vhost/rte_vdpa_dev.h
+++ b/lib/vhost/vdpa_driver.h
@@ -2,11 +2,13 @@
* Copyright(c) 2018 Intel Corporation
*/
-#ifndef _RTE_VDPA_H_DEV_
-#define _RTE_VDPA_H_DEV_
+#ifndef _VDPA_DRIVER_H_
+#define _VDPA_DRIVER_H_
#include <stdbool.h>
+#include <rte_compat.h>
+
#include "rte_vhost.h"
#include "rte_vdpa.h"
@@ -88,6 +90,7 @@ struct rte_vdpa_device {
* @return
* vDPA device pointer on success, NULL on failure
*/
+__rte_internal
struct rte_vdpa_device *
rte_vdpa_register_device(struct rte_device *rte_dev,
struct rte_vdpa_dev_ops *ops);
@@ -100,6 +103,7 @@ rte_vdpa_register_device(struct rte_device *rte_dev,
* @return
* device id on success, -1 on failure
*/
+__rte_internal
int
rte_vdpa_unregister_device(struct rte_vdpa_device *dev);
@@ -115,6 +119,7 @@ rte_vdpa_unregister_device(struct rte_vdpa_device *dev);
* @return
* 0 on success, -1 on failure
*/
+__rte_internal
int
rte_vhost_host_notifier_ctrl(int vid, uint16_t qid, bool enable);
@@ -132,7 +137,8 @@ rte_vhost_host_notifier_ctrl(int vid, uint16_t qid, bool enable);
* @return
* number of synced used entries on success, -1 on failure
*/
+__rte_internal
int
rte_vdpa_relay_vring_used(int vid, uint16_t qid, void *vring_m);
-#endif /* _RTE_VDPA_DEV_H_ */
+#endif /* _VDPA_DRIVER_H_ */
diff --git a/lib/vhost/version.map b/lib/vhost/version.map
index 8ebde3f694..9de4df0886 100644
--- a/lib/vhost/version.map
+++ b/lib/vhost/version.map
@@ -8,10 +8,7 @@ DPDK_22 {
rte_vdpa_get_rte_device;
rte_vdpa_get_stats;
rte_vdpa_get_stats_names;
- rte_vdpa_register_device;
- rte_vdpa_relay_vring_used;
rte_vdpa_reset_stats;
- rte_vdpa_unregister_device;
rte_vhost_avail_entries;
rte_vhost_clr_inflight_desc_packed;
rte_vhost_clr_inflight_desc_split;
@@ -52,7 +49,6 @@ DPDK_22 {
rte_vhost_get_vring_base_from_inflight;
rte_vhost_get_vring_num;
rte_vhost_gpa_to_vva;
- rte_vhost_host_notifier_ctrl;
rte_vhost_log_used_vring;
rte_vhost_log_write;
rte_vhost_rx_queue_count;
@@ -86,3 +82,12 @@ EXPERIMENTAL {
rte_vhost_async_channel_unregister_thread_unsafe;
rte_vhost_clear_queue_thread_unsafe;
};
+
+INTERNAL {
+ global;
+
+ rte_vdpa_register_device;
+ rte_vdpa_relay_vring_used;
+ rte_vdpa_unregister_device;
+ rte_vhost_host_notifier_ctrl;
+};
diff --git a/lib/vhost/vhost.h b/lib/vhost/vhost.h
index 6c6a2da2c9..a373f3cf12 100644
--- a/lib/vhost/vhost.h
+++ b/lib/vhost/vhost.h
@@ -22,7 +22,7 @@
#include "rte_vhost.h"
#include "rte_vdpa.h"
-#include "rte_vdpa_dev.h"
+#include "vdpa_driver.h"
#include "rte_vhost_async.h"
--
2.31.1
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [dpdk-dev] [dpdk-techboard] [PATCH v2] vhost: mark vDPA driver API as internal
2021-10-28 14:15 [dpdk-dev] [PATCH v2] vhost: mark vDPA driver API as internal Maxime Coquelin
@ 2021-10-29 16:15 ` Thomas Monjalon
2021-11-01 6:50 ` [dpdk-dev] " Xia, Chenbo
1 sibling, 0 replies; 4+ messages in thread
From: Thomas Monjalon @ 2021-10-29 16:15 UTC (permalink / raw)
To: Maxime Coquelin
Cc: dev, techboard, chenbo.xia, xuemingl, xiao.w.wang, david.marchand
28/10/2021 16:15, Maxime Coquelin:
> This patch marks the vDPA driver APIs as internal and
> rename the corresponding header file to vdpa_driver.h.
>
> Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
> ---
>
> Hi Techboard,
>
> Please vote for an exception for this unannounced API
> breakage.
[...]
> lib/vhost/{rte_vdpa_dev.h => vdpa_driver.h} | 12 +++++++++---
Hiding more internal structs is a good breakage.
[...]
> --- a/lib/vhost/rte_vdpa_dev.h
> +++ b/lib/vhost/vdpa_driver.h
> +__rte_internal
> struct rte_vdpa_device *
> rte_vdpa_register_device(struct rte_device *rte_dev,
> struct rte_vdpa_dev_ops *ops);
[...]
> +__rte_internal
> int
> rte_vdpa_unregister_device(struct rte_vdpa_device *dev);
[...]
> +__rte_internal
> int
> rte_vhost_host_notifier_ctrl(int vid, uint16_t qid, bool enable);
[...]
> +__rte_internal
> int
> rte_vdpa_relay_vring_used(int vid, uint16_t qid, void *vring_m);
[...]
> --- a/lib/vhost/version.map
> +++ b/lib/vhost/version.map
> - rte_vdpa_register_device;
> - rte_vdpa_relay_vring_used;
> - rte_vdpa_unregister_device;
> - rte_vhost_host_notifier_ctrl;
OK to remove these functions from the ABI
and mark them internal.
I suppose this breakage should not hurt too much,
as I don't see the need for out-of-tree vDPA drivers.
Of course it is always better to announce such change,
but it would be a pity to wait one more year for hiding this.
Acked-by: Thomas Monjalon <thomas@monjalon.net>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [dpdk-dev] [PATCH v2] vhost: mark vDPA driver API as internal
2021-10-28 14:15 [dpdk-dev] [PATCH v2] vhost: mark vDPA driver API as internal Maxime Coquelin
2021-10-29 16:15 ` [dpdk-dev] [dpdk-techboard] " Thomas Monjalon
@ 2021-11-01 6:50 ` Xia, Chenbo
2021-11-02 8:57 ` Maxime Coquelin
1 sibling, 1 reply; 4+ messages in thread
From: Xia, Chenbo @ 2021-11-01 6:50 UTC (permalink / raw)
To: Maxime Coquelin, dev, techboard, xuemingl, Wang, Xiao W, david.marchand
> -----Original Message-----
> From: Maxime Coquelin <maxime.coquelin@redhat.com>
> Sent: Thursday, October 28, 2021 10:16 PM
> To: dev@dpdk.org; techboard@dpdk.org; Xia, Chenbo <chenbo.xia@intel.com>;
> xuemingl@nvidia.com; Wang, Xiao W <xiao.w.wang@intel.com>;
> david.marchand@redhat.com
> Cc: Maxime Coquelin <maxime.coquelin@redhat.com>
> Subject: [PATCH v2] vhost: mark vDPA driver API as internal
>
> This patch marks the vDPA driver APIs as internal and
> rename the corresponding header file to vdpa_driver.h.
>
> Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
> ---
>
> Hi Techboard,
>
> Please vote for an exception for this unannounced API
> breakage.
More accurately, the four functions were announced :)
Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
>
> Changes in v2:
> ==============
> - Alphabetical ordering in version.map (David)
> - Rename header to vdpa_driver.h (David)
> - Add Techboard in Cc to vote for API breakage exception
>
> drivers/vdpa/ifc/ifcvf_vdpa.c | 2 +-
> drivers/vdpa/mlx5/mlx5_vdpa.h | 2 +-
> lib/vhost/meson.build | 4 +++-
> lib/vhost/vdpa.c | 2 +-
> lib/vhost/{rte_vdpa_dev.h => vdpa_driver.h} | 12 +++++++++---
> lib/vhost/version.map | 13 +++++++++----
> lib/vhost/vhost.h | 2 +-
> 7 files changed, 25 insertions(+), 12 deletions(-)
> rename lib/vhost/{rte_vdpa_dev.h => vdpa_driver.h} (95%)
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [dpdk-dev] [PATCH v2] vhost: mark vDPA driver API as internal
2021-11-01 6:50 ` [dpdk-dev] " Xia, Chenbo
@ 2021-11-02 8:57 ` Maxime Coquelin
0 siblings, 0 replies; 4+ messages in thread
From: Maxime Coquelin @ 2021-11-02 8:57 UTC (permalink / raw)
To: Xia, Chenbo, dev, techboard, xuemingl, Wang, Xiao W, david.marchand
On 11/1/21 07:50, Xia, Chenbo wrote:
>> -----Original Message-----
>> From: Maxime Coquelin <maxime.coquelin@redhat.com>
>> Sent: Thursday, October 28, 2021 10:16 PM
>> To: dev@dpdk.org; techboard@dpdk.org; Xia, Chenbo <chenbo.xia@intel.com>;
>> xuemingl@nvidia.com; Wang, Xiao W <xiao.w.wang@intel.com>;
>> david.marchand@redhat.com
>> Cc: Maxime Coquelin <maxime.coquelin@redhat.com>
>> Subject: [PATCH v2] vhost: mark vDPA driver API as internal
>>
>> This patch marks the vDPA driver APIs as internal and
>> rename the corresponding header file to vdpa_driver.h.
>>
>> Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
>> ---
>>
>> Hi Techboard,
>>
>> Please vote for an exception for this unannounced API
>> breakage.
>
> More accurately, the four functions were announced :)
My bad, I forgot about it. Thanks for the reminder!
> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
Maxime
>>
>> Changes in v2:
>> ==============
>> - Alphabetical ordering in version.map (David)
>> - Rename header to vdpa_driver.h (David)
>> - Add Techboard in Cc to vote for API breakage exception
>>
>> drivers/vdpa/ifc/ifcvf_vdpa.c | 2 +-
>> drivers/vdpa/mlx5/mlx5_vdpa.h | 2 +-
>> lib/vhost/meson.build | 4 +++-
>> lib/vhost/vdpa.c | 2 +-
>> lib/vhost/{rte_vdpa_dev.h => vdpa_driver.h} | 12 +++++++++---
>> lib/vhost/version.map | 13 +++++++++----
>> lib/vhost/vhost.h | 2 +-
>> 7 files changed, 25 insertions(+), 12 deletions(-)
>> rename lib/vhost/{rte_vdpa_dev.h => vdpa_driver.h} (95%)
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-11-02 8:58 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-28 14:15 [dpdk-dev] [PATCH v2] vhost: mark vDPA driver API as internal Maxime Coquelin
2021-10-29 16:15 ` [dpdk-dev] [dpdk-techboard] " Thomas Monjalon
2021-11-01 6:50 ` [dpdk-dev] " Xia, Chenbo
2021-11-02 8:57 ` Maxime Coquelin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).