vdpa_sim: switch to use __vdpa_alloc_device()
This allows us to control the allocation size of the structure. Reviewed-by: Stefano Garzarella <sgarzare@redhat.com> Acked-by: Eugenio Pérez <eperezma@redhat.com> Signed-off-by: Jason Wang <jasowang@redhat.com> Message-Id: <20221223055548.27810-2-jasowang@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
2f8200efe7
commit
0497f23e73
|
@ -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,
|
||||
dev_attr->ngroups, dev_attr->nas,
|
||||
dev_attr->name, false);
|
||||
if (IS_ERR(vdpasim)) {
|
||||
ret = PTR_ERR(vdpasim);
|
||||
vdpa = __vdpa_alloc_device(NULL, ops,
|
||||
dev_attr->ngroups, dev_attr->nas,
|
||||
sizeof(struct vdpasim),
|
||||
dev_attr->name, false);
|
||||
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);
|
||||
|
|
Loading…
Reference in New Issue