diff mbox series

[v4,09/14] vhost/vdpa: use get_config_size callback in vhost_vdpa_config_validate()

Message ID 20210315163450.254396-10-sgarzare@redhat.com
State New
Headers show
Series vdpa: add vdpa simulator for block device | expand

Commit Message

Stefano Garzarella March 15, 2021, 4:34 p.m. UTC
Let's use the new 'get_config_size()' callback available instead of
using the 'virtio_id' to get the size of the device config space.

Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
---
 drivers/vhost/vdpa.c | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

Comments

Jason Wang March 18, 2021, 3:22 a.m. UTC | #1
在 2021/3/16 上午12:34, Stefano Garzarella 写道:
> Let's use the new 'get_config_size()' callback available instead of

> using the 'virtio_id' to get the size of the device config space.

>

> Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>



Acked-by: Jason Wang <jasowang@redhat.com>



> ---

>   drivers/vhost/vdpa.c | 9 ++-------

>   1 file changed, 2 insertions(+), 7 deletions(-)

>

> diff --git a/drivers/vhost/vdpa.c b/drivers/vhost/vdpa.c

> index e0a27e336293..7ae4080e57d8 100644

> --- a/drivers/vhost/vdpa.c

> +++ b/drivers/vhost/vdpa.c

> @@ -188,13 +188,8 @@ static long vhost_vdpa_set_status(struct vhost_vdpa *v, u8 __user *statusp)

>   static int vhost_vdpa_config_validate(struct vhost_vdpa *v,

>   				      struct vhost_vdpa_config *c)

>   {

> -	long size = 0;

> -

> -	switch (v->virtio_id) {

> -	case VIRTIO_ID_NET:

> -		size = sizeof(struct virtio_net_config);

> -		break;

> -	}

> +	struct vdpa_device *vdpa = v->vdpa;

> +	long size = vdpa->config->get_config_size(vdpa);

>   

>   	if (c->len == 0)

>   		return -EINVAL;
diff mbox series

Patch

diff --git a/drivers/vhost/vdpa.c b/drivers/vhost/vdpa.c
index e0a27e336293..7ae4080e57d8 100644
--- a/drivers/vhost/vdpa.c
+++ b/drivers/vhost/vdpa.c
@@ -188,13 +188,8 @@  static long vhost_vdpa_set_status(struct vhost_vdpa *v, u8 __user *statusp)
 static int vhost_vdpa_config_validate(struct vhost_vdpa *v,
 				      struct vhost_vdpa_config *c)
 {
-	long size = 0;
-
-	switch (v->virtio_id) {
-	case VIRTIO_ID_NET:
-		size = sizeof(struct virtio_net_config);
-		break;
-	}
+	struct vdpa_device *vdpa = v->vdpa;
+	long size = vdpa->config->get_config_size(vdpa);
 
 	if (c->len == 0)
 		return -EINVAL;