Commit 0497f23e authored by Jason Wang's avatar Jason Wang Committed by Michael S. Tsirkin
Browse files

vdpa_sim: switch to use __vdpa_alloc_device()



This allows us to control the allocation size of the structure.

Reviewed-by: default avatarStefano Garzarella <sgarzare@redhat.com>
Acked-by: default avatarEugenio Pérez <eperezma@redhat.com>
Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
Message-Id: <20221223055548.27810-2-jasowang@redhat.com>
Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
parent 2f8200ef
Loading
Loading
Loading
Loading
+8 −5
Original line number Diff line number Diff line
@@ -251,6 +251,7 @@ struct vdpasim *vdpasim_create(struct vdpasim_dev_attr *dev_attr,
			       const struct vdpa_dev_set_config *config)
{
	const struct vdpa_config_ops *ops;
	struct vdpa_device *vdpa;
	struct vdpasim *vdpasim;
	struct device *dev;
	int i, ret = -ENOMEM;
@@ -268,14 +269,16 @@ struct vdpasim *vdpasim_create(struct vdpasim_dev_attr *dev_attr,
	else
		ops = &vdpasim_config_ops;

	vdpasim = vdpa_alloc_device(struct vdpasim, vdpa, NULL, ops,
	vdpa = __vdpa_alloc_device(NULL, ops,
				   dev_attr->ngroups, dev_attr->nas,
				   sizeof(struct vdpasim),
				   dev_attr->name, false);
	if (IS_ERR(vdpasim)) {
		ret = PTR_ERR(vdpasim);
	if (IS_ERR(vdpa)) {
		ret = PTR_ERR(vdpa);
		goto err_alloc;
	}

	vdpasim = vdpa_to_sim(vdpa);
	vdpasim->dev_attr = *dev_attr;
	INIT_WORK(&vdpasim->work, dev_attr->work_fn);
	spin_lock_init(&vdpasim->lock);