vhost: rename driver callbacks struct

Message ID 20211102104748.57078-1-maxime.coquelin@redhat.com (mailing list archive)
State Accepted, archived
Delegated to: Maxime Coquelin
Headers
Series vhost: rename driver callbacks struct |

Checks

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

Commit Message

Maxime Coquelin Nov. 2, 2021, 10:47 a.m. UTC
  As previously announced, this patch renames struct
vhost_device_ops to struct rte_vhost_device_ops.

Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
---
 doc/guides/rel_notes/deprecation.rst   | 3 ---
 doc/guides/rel_notes/release_21_11.rst | 2 ++
 drivers/net/vhost/rte_eth_vhost.c      | 2 +-
 examples/vdpa/main.c                   | 2 +-
 examples/vhost/main.c                  | 2 +-
 examples/vhost_blk/vhost_blk.c         | 2 +-
 examples/vhost_blk/vhost_blk.h         | 2 +-
 examples/vhost_crypto/main.c           | 2 +-
 lib/vhost/rte_vhost.h                  | 4 ++--
 lib/vhost/socket.c                     | 6 +++---
 lib/vhost/vhost.h                      | 4 ++--
 11 files changed, 15 insertions(+), 16 deletions(-)
  

Comments

Chenbo Xia Nov. 3, 2021, 8:16 a.m. UTC | #1
Hi Maxime,

> -----Original Message-----
> From: Maxime Coquelin <maxime.coquelin@redhat.com>
> Sent: Tuesday, November 2, 2021 6:48 PM
> To: dev@dpdk.org; Xia, Chenbo <chenbo.xia@intel.com>;
> david.marchand@redhat.com
> Cc: Maxime Coquelin <maxime.coquelin@redhat.com>
> Subject: [PATCH] vhost: rename driver callbacks struct
> 
> As previously announced, this patch renames struct
> vhost_device_ops to struct rte_vhost_device_ops.
> 
> Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
> ---
>  doc/guides/rel_notes/deprecation.rst   | 3 ---
>  doc/guides/rel_notes/release_21_11.rst | 2 ++
>  drivers/net/vhost/rte_eth_vhost.c      | 2 +-
>  examples/vdpa/main.c                   | 2 +-
>  examples/vhost/main.c                  | 2 +-
>  examples/vhost_blk/vhost_blk.c         | 2 +-
>  examples/vhost_blk/vhost_blk.h         | 2 +-
>  examples/vhost_crypto/main.c           | 2 +-
>  lib/vhost/rte_vhost.h                  | 4 ++--
>  lib/vhost/socket.c                     | 6 +++---
>  lib/vhost/vhost.h                      | 4 ++--

Miss two in vhost_lib.rst :)

Testing issues reported in patchwork is expected as SPDK uses
this struct, so we can ignore it as SPDK will rename it when it
adapts to DPDK 21.11

With above fixed:

Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>


>  11 files changed, 15 insertions(+), 16 deletions(-)
> 
> diff --git a/doc/guides/rel_notes/deprecation.rst
> b/doc/guides/rel_notes/deprecation.rst
> index 4366015b01..a9e2433988 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -111,9 +111,6 @@ Deprecation Notices
>    ``rte_vhost_host_notifier_ctrl`` and ``rte_vdpa_relay_vring_used`` vDPA
>    driver interface will be marked as internal in DPDK v21.11.
> 
> -* vhost: rename ``struct vhost_device_ops`` to ``struct
> rte_vhost_device_ops``
> -  in DPDK v21.11.
> -
>  * vhost: The experimental tags of ``rte_vhost_driver_get_protocol_features``,
>    ``rte_vhost_driver_get_queue_num``, ``rte_vhost_crypto_create``,
>    ``rte_vhost_crypto_free``, ``rte_vhost_crypto_fetch_requests``,
> diff --git a/doc/guides/rel_notes/release_21_11.rst
> b/doc/guides/rel_notes/release_21_11.rst
> index 98d50a160b..dea038e3ac 100644
> --- a/doc/guides/rel_notes/release_21_11.rst
> +++ b/doc/guides/rel_notes/release_21_11.rst
> @@ -564,6 +564,8 @@ ABI Changes
> 
>  * eventdev: Re-arranged fields in ``rte_event_timer`` to remove holes.
> 
> +* vhost: rename ``struct vhost_device_ops`` to ``struct
> rte_vhost_device_ops``.
> +
> 
>  Known Issues
>  ------------
> diff --git a/drivers/net/vhost/rte_eth_vhost.c
> b/drivers/net/vhost/rte_eth_vhost.c
> index 8bb3b27d01..070f0e6dfd 100644
> --- a/drivers/net/vhost/rte_eth_vhost.c
> +++ b/drivers/net/vhost/rte_eth_vhost.c
> @@ -975,7 +975,7 @@ vring_state_changed(int vid, uint16_t vring, int enable)
>  	return 0;
>  }
> 
> -static struct vhost_device_ops vhost_ops = {
> +static struct rte_vhost_device_ops vhost_ops = {
>  	.new_device          = new_device,
>  	.destroy_device      = destroy_device,
>  	.vring_state_changed = vring_state_changed,
> diff --git a/examples/vdpa/main.c b/examples/vdpa/main.c
> index 097a267b8c..5ab07655ae 100644
> --- a/examples/vdpa/main.c
> +++ b/examples/vdpa/main.c
> @@ -153,7 +153,7 @@ destroy_device(int vid)
>  	}
>  }
> 
> -static const struct vhost_device_ops vdpa_sample_devops = {
> +static const struct rte_vhost_device_ops vdpa_sample_devops = {
>  	.new_device = new_device,
>  	.destroy_device = destroy_device,
>  };
> diff --git a/examples/vhost/main.c b/examples/vhost/main.c
> index 58e12aa710..8685dfd81b 100644
> --- a/examples/vhost/main.c
> +++ b/examples/vhost/main.c
> @@ -1519,7 +1519,7 @@ vring_state_changed(int vid, uint16_t queue_id, int
> enable)
>   * These callback allow devices to be added to the data core when
> configuration
>   * has been fully complete.
>   */
> -static const struct vhost_device_ops virtio_net_device_ops =
> +static const struct rte_vhost_device_ops virtio_net_device_ops =
>  {
>  	.new_device =  new_device,
>  	.destroy_device = destroy_device,
> diff --git a/examples/vhost_blk/vhost_blk.c b/examples/vhost_blk/vhost_blk.c
> index fe2b4e4803..feadacc62e 100644
> --- a/examples/vhost_blk/vhost_blk.c
> +++ b/examples/vhost_blk/vhost_blk.c
> @@ -753,7 +753,7 @@ new_connection(int vid)
>  	return 0;
>  }
> 
> -struct vhost_device_ops vhost_blk_device_ops = {
> +struct rte_vhost_device_ops vhost_blk_device_ops = {
>  	.new_device =  new_device,
>  	.destroy_device = destroy_device,
>  	.new_connection = new_connection,
> diff --git a/examples/vhost_blk/vhost_blk.h b/examples/vhost_blk/vhost_blk.h
> index 540998eb1b..975f0b4065 100644
> --- a/examples/vhost_blk/vhost_blk.h
> +++ b/examples/vhost_blk/vhost_blk.h
> @@ -104,7 +104,7 @@ struct vhost_blk_task {
>  };
> 
>  extern struct vhost_blk_ctrlr *g_vhost_ctrlr;
> -extern struct vhost_device_ops vhost_blk_device_ops;
> +extern struct rte_vhost_device_ops vhost_blk_device_ops;
> 
>  int vhost_bdev_process_blk_commands(struct vhost_block_dev *bdev,
>  				     struct vhost_blk_task *task);
> diff --git a/examples/vhost_crypto/main.c b/examples/vhost_crypto/main.c
> index dea7dcbd07..7d75623a5e 100644
> --- a/examples/vhost_crypto/main.c
> +++ b/examples/vhost_crypto/main.c
> @@ -363,7 +363,7 @@ destroy_device(int vid)
>  	RTE_LOG(INFO, USER1, "Vhost Crypto Device %i Removed\n", vid);
>  }
> 
> -static const struct vhost_device_ops virtio_crypto_device_ops = {
> +static const struct rte_vhost_device_ops virtio_crypto_device_ops = {
>  	.new_device =  new_device,
>  	.destroy_device = destroy_device,
>  };
> diff --git a/lib/vhost/rte_vhost.h b/lib/vhost/rte_vhost.h
> index 6f0915b98f..af0afbcf60 100644
> --- a/lib/vhost/rte_vhost.h
> +++ b/lib/vhost/rte_vhost.h
> @@ -264,7 +264,7 @@ struct rte_vhost_user_extern_ops {
>  /**
>   * Device and vring operations.
>   */
> -struct vhost_device_ops {
> +struct rte_vhost_device_ops {
>  	int (*new_device)(int vid);		/**< Add device. */
>  	void (*destroy_device)(int vid);	/**< Remove device. */
> 
> @@ -606,7 +606,7 @@ rte_vhost_get_negotiated_protocol_features(int vid,
> 
>  /* Register callbacks. */
>  int rte_vhost_driver_callback_register(const char *path,
> -	struct vhost_device_ops const * const ops);
> +	struct rte_vhost_device_ops const * const ops);
> 
>  /**
>   *
> diff --git a/lib/vhost/socket.c b/lib/vhost/socket.c
> index c6548608a3..82963c1e6d 100644
> --- a/lib/vhost/socket.c
> +++ b/lib/vhost/socket.c
> @@ -58,7 +58,7 @@ struct vhost_user_socket {
> 
>  	struct rte_vdpa_device *vdpa_dev;
> 
> -	struct vhost_device_ops const *notify_ops;
> +	struct rte_vhost_device_ops const *notify_ops;
>  };
> 
>  struct vhost_user_connection {
> @@ -1093,7 +1093,7 @@ rte_vhost_driver_unregister(const char *path)
>   */
>  int
>  rte_vhost_driver_callback_register(const char *path,
> -	struct vhost_device_ops const * const ops)
> +	struct rte_vhost_device_ops const * const ops)
>  {
>  	struct vhost_user_socket *vsocket;
> 
> @@ -1106,7 +1106,7 @@ rte_vhost_driver_callback_register(const char *path,
>  	return vsocket ? 0 : -1;
>  }
> 
> -struct vhost_device_ops const *
> +struct rte_vhost_device_ops const *
>  vhost_driver_callback_get(const char *path)
>  {
>  	struct vhost_user_socket *vsocket;
> diff --git a/lib/vhost/vhost.h b/lib/vhost/vhost.h
> index 05ccc35f37..080c67ef99 100644
> --- a/lib/vhost/vhost.h
> +++ b/lib/vhost/vhost.h
> @@ -394,7 +394,7 @@ struct virtio_net {
>  	uint16_t		mtu;
>  	uint8_t			status;
> 
> -	struct vhost_device_ops const *notify_ops;
> +	struct rte_vhost_device_ops const *notify_ops;
> 
>  	uint32_t		nr_guest_pages;
>  	uint32_t		max_guest_pages;
> @@ -702,7 +702,7 @@ void vhost_enable_linearbuf(int vid);
>  int vhost_enable_guest_notification(struct virtio_net *dev,
>  		struct vhost_virtqueue *vq, int enable);
> 
> -struct vhost_device_ops const *vhost_driver_callback_get(const char *path);
> +struct rte_vhost_device_ops const *vhost_driver_callback_get(const char
> *path);
> 
>  /*
>   * Backend-specific cleanup.
> --
> 2.31.1
  
David Marchand Nov. 3, 2021, 8:36 a.m. UTC | #2
On Wed, Nov 3, 2021 at 9:16 AM Xia, Chenbo <chenbo.xia@intel.com> wrote:
> Testing issues reported in patchwork is expected as SPDK uses
> this struct, so we can ignore it as SPDK will rename it when it
> adapts to DPDK 21.11

Please, no.
We can't simply say "ignore failure in CI".

The SPDK build test must be disabled in CI first.
You can create a bugzilla and assign it to UNH lab.
Example: https://bugs.dpdk.org/show_bug.cgi?id=579

Once done, we can merge this patch in DPDK.


In parallel, either prepare the patch or talk to SPDK guys to handle
this change.
Once this is done, update the bugzilla so that we can get SPDK build
tested again in CI.

Thanks.
  
Maxime Coquelin Nov. 3, 2021, 8:38 a.m. UTC | #3
Hi David,

On 11/3/21 09:36, David Marchand wrote:
> On Wed, Nov 3, 2021 at 9:16 AM Xia, Chenbo <chenbo.xia@intel.com> wrote:
>> Testing issues reported in patchwork is expected as SPDK uses
>> this struct, so we can ignore it as SPDK will rename it when it
>> adapts to DPDK 21.11
> 
> Please, no.
> We can't simply say "ignore failure in CI".
> 
> The SPDK build test must be disabled in CI first.
> You can create a bugzilla and assign it to UNH lab.
> Example: https://bugs.dpdk.org/show_bug.cgi?id=579
> 
> Once done, we can merge this patch in DPDK.
> 
> 
> In parallel, either prepare the patch or talk to SPDK guys to handle
> this change.
> Once this is done, update the bugzilla so that we can get SPDK build
> tested again in CI.

Thanks for the insights, I'll file a Bz and work with the SPDK team.

Maxime
> Thanks.
> 
>
  
Chenbo Xia Nov. 3, 2021, 9:10 a.m. UTC | #4
Hi David,

> -----Original Message-----
> From: David Marchand <david.marchand@redhat.com>
> Sent: Wednesday, November 3, 2021 4:36 PM
> To: Xia, Chenbo <chenbo.xia@intel.com>; Maxime Coquelin
> <maxime.coquelin@redhat.com>
> Cc: dev@dpdk.org; Liu, Changpeng <changpeng.liu@intel.com>; Thomas Monjalon
> <thomas@monjalon.net>; Aaron Conole <aconole@redhat.com>; dpdklab
> <dpdklab@iol.unh.edu>; ci@dpdk.org
> Subject: Re: [PATCH] vhost: rename driver callbacks struct
> 
> On Wed, Nov 3, 2021 at 9:16 AM Xia, Chenbo <chenbo.xia@intel.com> wrote:
> > Testing issues reported in patchwork is expected as SPDK uses
> > this struct, so we can ignore it as SPDK will rename it when it
> > adapts to DPDK 21.11
> 
> Please, no.
> We can't simply say "ignore failure in CI".
> 
> The SPDK build test must be disabled in CI first.
> You can create a bugzilla and assign it to UNH lab.
> Example: https://bugs.dpdk.org/show_bug.cgi?id=579
> 
> Once done, we can merge this patch in DPDK.

Thanks for the heads up!

> 
> 
> In parallel, either prepare the patch or talk to SPDK guys to handle
> this change.

Already + Changpeng in the cc list

Changpeng, could you help with the change?

Thanks,
Chenbo

> Once this is done, update the bugzilla so that we can get SPDK build
> tested again in CI.
> 
> Thanks.
> 
> 
> --
> David Marchand
  
Maxime Coquelin Nov. 3, 2021, 9:52 a.m. UTC | #5
On 11/3/21 09:38, Maxime Coquelin wrote:
> Hi David,
> 
> On 11/3/21 09:36, David Marchand wrote:
>> On Wed, Nov 3, 2021 at 9:16 AM Xia, Chenbo <chenbo.xia@intel.com> wrote:
>>> Testing issues reported in patchwork is expected as SPDK uses
>>> this struct, so we can ignore it as SPDK will rename it when it
>>> adapts to DPDK 21.11
>>
>> Please, no.
>> We can't simply say "ignore failure in CI".
>>
>> The SPDK build test must be disabled in CI first.
>> You can create a bugzilla and assign it to UNH lab.
>> Example: https://bugs.dpdk.org/show_bug.cgi?id=579
>>
>> Once done, we can merge this patch in DPDK.
>>
>>
>> In parallel, either prepare the patch or talk to SPDK guys to handle
>> this change.
>> Once this is done, update the bugzilla so that we can get SPDK build
>> tested again in CI.
> 
> Thanks for the insights, I'll file a Bz and work with the SPDK team.

The Bz has been filed:
https://bugs.dpdk.org/show_bug.cgi?id=876

> Maxime
>> Thanks.
>>
>>
  
Lincoln Lavoie Nov. 3, 2021, 1:11 p.m. UTC | #6
On Wed, Nov 3, 2021 at 5:53 AM Maxime Coquelin <maxime.coquelin@redhat.com>
wrote:

>
>
> On 11/3/21 09:38, Maxime Coquelin wrote:
> > Hi David,
> >
> > On 11/3/21 09:36, David Marchand wrote:
> >> On Wed, Nov 3, 2021 at 9:16 AM Xia, Chenbo <chenbo.xia@intel.com>
> wrote:
> >>> Testing issues reported in patchwork is expected as SPDK uses
> >>> this struct, so we can ignore it as SPDK will rename it when it
> >>> adapts to DPDK 21.11
> >>
> >> Please, no.
> >> We can't simply say "ignore failure in CI".
> >>
> >> The SPDK build test must be disabled in CI first.
> >> You can create a bugzilla and assign it to UNH lab.
> >> Example: https://bugs.dpdk.org/show_bug.cgi?id=579
> >>
> >> Once done, we can merge this patch in DPDK.
> >>
> >>
> >> In parallel, either prepare the patch or talk to SPDK guys to handle
> >> this change.
> >> Once this is done, update the bugzilla so that we can get SPDK build
> >> tested again in CI.
> >
> > Thanks for the insights, I'll file a Bz and work with the SPDK team.
>
> The Bz has been filed:
> https://bugs.dpdk.org/show_bug.cgi?id=876
>
> > Maxime
> >> Thanks.
> >>
> >>
>
> SDPK tests have been disabled in the CI testing and shouldn't run for any
new patches.  Anything that was already in the queue will finish out.  Bug
ticket has been updated.

Who from the SPDK team "has the ball" on this item, so we know it's being
tracked and worked on?

Cheers,
Lincoln
  
Maxime Coquelin Nov. 3, 2021, 1:16 p.m. UTC | #7
On 11/3/21 14:11, Lincoln Lavoie wrote:
> 
> 
> 
> On Wed, Nov 3, 2021 at 5:53 AM Maxime Coquelin 
> <maxime.coquelin@redhat.com <mailto:maxime.coquelin@redhat.com>> wrote:
> 
> 
> 
>     On 11/3/21 09:38, Maxime Coquelin wrote:
>      > Hi David,
>      >
>      > On 11/3/21 09:36, David Marchand wrote:
>      >> On Wed, Nov 3, 2021 at 9:16 AM Xia, Chenbo <chenbo.xia@intel.com
>     <mailto:chenbo.xia@intel.com>> wrote:
>      >>> Testing issues reported in patchwork is expected as SPDK uses
>      >>> this struct, so we can ignore it as SPDK will rename it when it
>      >>> adapts to DPDK 21.11
>      >>
>      >> Please, no.
>      >> We can't simply say "ignore failure in CI".
>      >>
>      >> The SPDK build test must be disabled in CI first.
>      >> You can create a bugzilla and assign it to UNH lab.
>      >> Example: https://bugs.dpdk.org/show_bug.cgi?id=579
>     <https://bugs.dpdk.org/show_bug.cgi?id=579>
>      >>
>      >> Once done, we can merge this patch in DPDK.
>      >>
>      >>
>      >> In parallel, either prepare the patch or talk to SPDK guys to handle
>      >> this change.
>      >> Once this is done, update the bugzilla so that we can get SPDK build
>      >> tested again in CI.
>      >
>      > Thanks for the insights, I'll file a Bz and work with the SPDK team.
> 
>     The Bz has been filed:
>     https://bugs.dpdk.org/show_bug.cgi?id=876
>     <https://bugs.dpdk.org/show_bug.cgi?id=876>
> 
>      > Maxime
>      >> Thanks.
>      >>
>      >>
> 
> SDPK tests have been disabled in the CI testing and shouldn't run for 
> any new patches.  Anything that was already in the queue will finish 
> out.  Bug ticket has been updated.

Thanks Lincoln, as the patch wasn't merged yet, this API change will not
impact other jobs already queued.

> Who from the SPDK team "has the ball" on this item, so we know it's 
> being tracked and worked on?

I think Changpeng Liu in Cc: is the right contact from the SPDK team for
this. For my information, are the SPDK tests based on their main branch
or on the last release?

Thanks,
Maxime

> Cheers,
> Lincoln
> 
> 
> -- 
> *Lincoln Lavoie*
> Principal Engineer, Broadband Technologies
> 21 Madbury Rd., Ste. 100, Durham, NH 03824
> lylavoie@iol.unh.edu <mailto:lylavoie@iol.unh.edu>
> https://www.iol.unh.edu <https://www.iol.unh.edu>
> +1-603-674-2755 (m)
> <https://www.iol.unh.edu>
  
Maxime Coquelin Nov. 3, 2021, 1:46 p.m. UTC | #8
On 11/2/21 11:47, Maxime Coquelin wrote:
> As previously announced, this patch renames struct
> vhost_device_ops to struct rte_vhost_device_ops.
> 
> Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
> ---
>   doc/guides/rel_notes/deprecation.rst   | 3 ---
>   doc/guides/rel_notes/release_21_11.rst | 2 ++
>   drivers/net/vhost/rte_eth_vhost.c      | 2 +-
>   examples/vdpa/main.c                   | 2 +-
>   examples/vhost/main.c                  | 2 +-
>   examples/vhost_blk/vhost_blk.c         | 2 +-
>   examples/vhost_blk/vhost_blk.h         | 2 +-
>   examples/vhost_crypto/main.c           | 2 +-
>   lib/vhost/rte_vhost.h                  | 4 ++--
>   lib/vhost/socket.c                     | 6 +++---
>   lib/vhost/vhost.h                      | 4 ++--
>   11 files changed, 15 insertions(+), 16 deletions(-)
> 

Applied to dpdk-next-virtio/main with fixing missing documentation
change reported by Chenbo.

Thanks,
Maxime
  
Lincoln Lavoie Nov. 3, 2021, 2:38 p.m. UTC | #9
On Wed, Nov 3, 2021 at 9:16 AM Maxime Coquelin <maxime.coquelin@redhat.com>
wrote:

>
>
> On 11/3/21 14:11, Lincoln Lavoie wrote:
> >
> >
> >
> > On Wed, Nov 3, 2021 at 5:53 AM Maxime Coquelin
> > <maxime.coquelin@redhat.com <mailto:maxime.coquelin@redhat.com>> wrote:
> >
> >
> >
> >     On 11/3/21 09:38, Maxime Coquelin wrote:
> >      > Hi David,
> >      >
> >      > On 11/3/21 09:36, David Marchand wrote:
> >      >> On Wed, Nov 3, 2021 at 9:16 AM Xia, Chenbo <chenbo.xia@intel.com
> >     <mailto:chenbo.xia@intel.com>> wrote:
> >      >>> Testing issues reported in patchwork is expected as SPDK uses
> >      >>> this struct, so we can ignore it as SPDK will rename it when it
> >      >>> adapts to DPDK 21.11
> >      >>
> >      >> Please, no.
> >      >> We can't simply say "ignore failure in CI".
> >      >>
> >      >> The SPDK build test must be disabled in CI first.
> >      >> You can create a bugzilla and assign it to UNH lab.
> >      >> Example: https://bugs.dpdk.org/show_bug.cgi?id=579
> >     <https://bugs.dpdk.org/show_bug.cgi?id=579>
> >      >>
> >      >> Once done, we can merge this patch in DPDK.
> >      >>
> >      >>
> >      >> In parallel, either prepare the patch or talk to SPDK guys to
> handle
> >      >> this change.
> >      >> Once this is done, update the bugzilla so that we can get SPDK
> build
> >      >> tested again in CI.
> >      >
> >      > Thanks for the insights, I'll file a Bz and work with the SPDK
> team.
> >
> >     The Bz has been filed:
> >     https://bugs.dpdk.org/show_bug.cgi?id=876
> >     <https://bugs.dpdk.org/show_bug.cgi?id=876>
> >
> >      > Maxime
> >      >> Thanks.
> >      >>
> >      >>
> >
> > SDPK tests have been disabled in the CI testing and shouldn't run for
> > any new patches.  Anything that was already in the queue will finish
> > out.  Bug ticket has been updated.
>
> Thanks Lincoln, as the patch wasn't merged yet, this API change will not
> impact other jobs already queued.
>
> > Who from the SPDK team "has the ball" on this item, so we know it's
> > being tracked and worked on?
>
> I think Changpeng Liu in Cc: is the right contact from the SPDK team for
> this. For my information, are the SPDK tests based on their main branch
> or on the last release?
>
SDPK branch should be their current LTS branch (21.1.x), so not the main
branch.



>
> Thanks,
> Maxime
>
> > Cheers,
> > Lincoln
> >
> >
> > --
> > *Lincoln Lavoie*
> > Principal Engineer, Broadband Technologies
> > 21 Madbury Rd., Ste. 100, Durham, NH 03824
> > lylavoie@iol.unh.edu <mailto:lylavoie@iol.unh.edu>
> > https://www.iol.unh.edu <https://www.iol.unh.edu>
> > +1-603-674-2755 (m)
> > <https://www.iol.unh.edu>
>
>
  
Liu, Changpeng Nov. 4, 2021, 2:48 a.m. UTC | #10
I'm on it. SPDK is using DPDK 21.08 now, we will bump to DPDK 21.11 in next SPDK 22.01 release.


> -----Original Message-----
> From: Xia, Chenbo <chenbo.xia@intel.com>
> Sent: Wednesday, November 3, 2021 5:10 PM
> To: David Marchand <david.marchand@redhat.com>; Maxime Coquelin
> <maxime.coquelin@redhat.com>
> Cc: dev@dpdk.org; Liu, Changpeng <changpeng.liu@intel.com>; Thomas
> Monjalon <thomas@monjalon.net>; Aaron Conole <aconole@redhat.com>;
> dpdklab <dpdklab@iol.unh.edu>; ci@dpdk.org
> Subject: RE: [PATCH] vhost: rename driver callbacks struct
> 
> Hi David,
> 
> > -----Original Message-----
> > From: David Marchand <david.marchand@redhat.com>
> > Sent: Wednesday, November 3, 2021 4:36 PM
> > To: Xia, Chenbo <chenbo.xia@intel.com>; Maxime Coquelin
> > <maxime.coquelin@redhat.com>
> > Cc: dev@dpdk.org; Liu, Changpeng <changpeng.liu@intel.com>; Thomas
> Monjalon
> > <thomas@monjalon.net>; Aaron Conole <aconole@redhat.com>; dpdklab
> > <dpdklab@iol.unh.edu>; ci@dpdk.org
> > Subject: Re: [PATCH] vhost: rename driver callbacks struct
> >
> > On Wed, Nov 3, 2021 at 9:16 AM Xia, Chenbo <chenbo.xia@intel.com> wrote:
> > > Testing issues reported in patchwork is expected as SPDK uses
> > > this struct, so we can ignore it as SPDK will rename it when it
> > > adapts to DPDK 21.11
> >
> > Please, no.
> > We can't simply say "ignore failure in CI".
> >
> > The SPDK build test must be disabled in CI first.
> > You can create a bugzilla and assign it to UNH lab.
> > Example: https://bugs.dpdk.org/show_bug.cgi?id=579
> >
> > Once done, we can merge this patch in DPDK.
> 
> Thanks for the heads up!
> 
> >
> >
> > In parallel, either prepare the patch or talk to SPDK guys to handle
> > this change.
> 
> Already + Changpeng in the cc list
> 
> Changpeng, could you help with the change?
> 
> Thanks,
> Chenbo
> 
> > Once this is done, update the bugzilla so that we can get SPDK build
> > tested again in CI.
> >
> > Thanks.
> >
> >
> > --
> > David Marchand
  

Patch

diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
index 4366015b01..a9e2433988 100644
--- a/doc/guides/rel_notes/deprecation.rst
+++ b/doc/guides/rel_notes/deprecation.rst
@@ -111,9 +111,6 @@  Deprecation Notices
   ``rte_vhost_host_notifier_ctrl`` and ``rte_vdpa_relay_vring_used`` vDPA
   driver interface will be marked as internal in DPDK v21.11.
 
-* vhost: rename ``struct vhost_device_ops`` to ``struct rte_vhost_device_ops``
-  in DPDK v21.11.
-
 * vhost: The experimental tags of ``rte_vhost_driver_get_protocol_features``,
   ``rte_vhost_driver_get_queue_num``, ``rte_vhost_crypto_create``,
   ``rte_vhost_crypto_free``, ``rte_vhost_crypto_fetch_requests``,
diff --git a/doc/guides/rel_notes/release_21_11.rst b/doc/guides/rel_notes/release_21_11.rst
index 98d50a160b..dea038e3ac 100644
--- a/doc/guides/rel_notes/release_21_11.rst
+++ b/doc/guides/rel_notes/release_21_11.rst
@@ -564,6 +564,8 @@  ABI Changes
 
 * eventdev: Re-arranged fields in ``rte_event_timer`` to remove holes.
 
+* vhost: rename ``struct vhost_device_ops`` to ``struct rte_vhost_device_ops``.
+
 
 Known Issues
 ------------
diff --git a/drivers/net/vhost/rte_eth_vhost.c b/drivers/net/vhost/rte_eth_vhost.c
index 8bb3b27d01..070f0e6dfd 100644
--- a/drivers/net/vhost/rte_eth_vhost.c
+++ b/drivers/net/vhost/rte_eth_vhost.c
@@ -975,7 +975,7 @@  vring_state_changed(int vid, uint16_t vring, int enable)
 	return 0;
 }
 
-static struct vhost_device_ops vhost_ops = {
+static struct rte_vhost_device_ops vhost_ops = {
 	.new_device          = new_device,
 	.destroy_device      = destroy_device,
 	.vring_state_changed = vring_state_changed,
diff --git a/examples/vdpa/main.c b/examples/vdpa/main.c
index 097a267b8c..5ab07655ae 100644
--- a/examples/vdpa/main.c
+++ b/examples/vdpa/main.c
@@ -153,7 +153,7 @@  destroy_device(int vid)
 	}
 }
 
-static const struct vhost_device_ops vdpa_sample_devops = {
+static const struct rte_vhost_device_ops vdpa_sample_devops = {
 	.new_device = new_device,
 	.destroy_device = destroy_device,
 };
diff --git a/examples/vhost/main.c b/examples/vhost/main.c
index 58e12aa710..8685dfd81b 100644
--- a/examples/vhost/main.c
+++ b/examples/vhost/main.c
@@ -1519,7 +1519,7 @@  vring_state_changed(int vid, uint16_t queue_id, int enable)
  * These callback allow devices to be added to the data core when configuration
  * has been fully complete.
  */
-static const struct vhost_device_ops virtio_net_device_ops =
+static const struct rte_vhost_device_ops virtio_net_device_ops =
 {
 	.new_device =  new_device,
 	.destroy_device = destroy_device,
diff --git a/examples/vhost_blk/vhost_blk.c b/examples/vhost_blk/vhost_blk.c
index fe2b4e4803..feadacc62e 100644
--- a/examples/vhost_blk/vhost_blk.c
+++ b/examples/vhost_blk/vhost_blk.c
@@ -753,7 +753,7 @@  new_connection(int vid)
 	return 0;
 }
 
-struct vhost_device_ops vhost_blk_device_ops = {
+struct rte_vhost_device_ops vhost_blk_device_ops = {
 	.new_device =  new_device,
 	.destroy_device = destroy_device,
 	.new_connection = new_connection,
diff --git a/examples/vhost_blk/vhost_blk.h b/examples/vhost_blk/vhost_blk.h
index 540998eb1b..975f0b4065 100644
--- a/examples/vhost_blk/vhost_blk.h
+++ b/examples/vhost_blk/vhost_blk.h
@@ -104,7 +104,7 @@  struct vhost_blk_task {
 };
 
 extern struct vhost_blk_ctrlr *g_vhost_ctrlr;
-extern struct vhost_device_ops vhost_blk_device_ops;
+extern struct rte_vhost_device_ops vhost_blk_device_ops;
 
 int vhost_bdev_process_blk_commands(struct vhost_block_dev *bdev,
 				     struct vhost_blk_task *task);
diff --git a/examples/vhost_crypto/main.c b/examples/vhost_crypto/main.c
index dea7dcbd07..7d75623a5e 100644
--- a/examples/vhost_crypto/main.c
+++ b/examples/vhost_crypto/main.c
@@ -363,7 +363,7 @@  destroy_device(int vid)
 	RTE_LOG(INFO, USER1, "Vhost Crypto Device %i Removed\n", vid);
 }
 
-static const struct vhost_device_ops virtio_crypto_device_ops = {
+static const struct rte_vhost_device_ops virtio_crypto_device_ops = {
 	.new_device =  new_device,
 	.destroy_device = destroy_device,
 };
diff --git a/lib/vhost/rte_vhost.h b/lib/vhost/rte_vhost.h
index 6f0915b98f..af0afbcf60 100644
--- a/lib/vhost/rte_vhost.h
+++ b/lib/vhost/rte_vhost.h
@@ -264,7 +264,7 @@  struct rte_vhost_user_extern_ops {
 /**
  * Device and vring operations.
  */
-struct vhost_device_ops {
+struct rte_vhost_device_ops {
 	int (*new_device)(int vid);		/**< Add device. */
 	void (*destroy_device)(int vid);	/**< Remove device. */
 
@@ -606,7 +606,7 @@  rte_vhost_get_negotiated_protocol_features(int vid,
 
 /* Register callbacks. */
 int rte_vhost_driver_callback_register(const char *path,
-	struct vhost_device_ops const * const ops);
+	struct rte_vhost_device_ops const * const ops);
 
 /**
  *
diff --git a/lib/vhost/socket.c b/lib/vhost/socket.c
index c6548608a3..82963c1e6d 100644
--- a/lib/vhost/socket.c
+++ b/lib/vhost/socket.c
@@ -58,7 +58,7 @@  struct vhost_user_socket {
 
 	struct rte_vdpa_device *vdpa_dev;
 
-	struct vhost_device_ops const *notify_ops;
+	struct rte_vhost_device_ops const *notify_ops;
 };
 
 struct vhost_user_connection {
@@ -1093,7 +1093,7 @@  rte_vhost_driver_unregister(const char *path)
  */
 int
 rte_vhost_driver_callback_register(const char *path,
-	struct vhost_device_ops const * const ops)
+	struct rte_vhost_device_ops const * const ops)
 {
 	struct vhost_user_socket *vsocket;
 
@@ -1106,7 +1106,7 @@  rte_vhost_driver_callback_register(const char *path,
 	return vsocket ? 0 : -1;
 }
 
-struct vhost_device_ops const *
+struct rte_vhost_device_ops const *
 vhost_driver_callback_get(const char *path)
 {
 	struct vhost_user_socket *vsocket;
diff --git a/lib/vhost/vhost.h b/lib/vhost/vhost.h
index 05ccc35f37..080c67ef99 100644
--- a/lib/vhost/vhost.h
+++ b/lib/vhost/vhost.h
@@ -394,7 +394,7 @@  struct virtio_net {
 	uint16_t		mtu;
 	uint8_t			status;
 
-	struct vhost_device_ops const *notify_ops;
+	struct rte_vhost_device_ops const *notify_ops;
 
 	uint32_t		nr_guest_pages;
 	uint32_t		max_guest_pages;
@@ -702,7 +702,7 @@  void vhost_enable_linearbuf(int vid);
 int vhost_enable_guest_notification(struct virtio_net *dev,
 		struct vhost_virtqueue *vq, int enable);
 
-struct vhost_device_ops const *vhost_driver_callback_get(const char *path);
+struct rte_vhost_device_ops const *vhost_driver_callback_get(const char *path);
 
 /*
  * Backend-specific cleanup.