vdpa_sim: add work_fn in vdpasim_dev_attr
authorStefano Garzarella <sgarzare@redhat.com>
Tue, 15 Dec 2020 14:42:47 +0000 (15:42 +0100)
committerMichael S. Tsirkin <mst@redhat.com>
Fri, 18 Dec 2020 21:14:29 +0000 (16:14 -0500)
Rename vdpasim_work() in vdpasim_net_work() and add it to
the vdpasim_dev_attr structure.

Co-developed-by: Max Gurtovoy <mgurtovoy@nvidia.com>
Signed-off-by: Max Gurtovoy <mgurtovoy@nvidia.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
Link: https://lore.kernel.org/r/20201215144256.155342-10-sgarzare@redhat.com
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
drivers/vdpa/vdpa_sim/vdpa_sim.c

index 6cf3c78b0e33c09649ae02909cc90b138a74ec34..d356929f9dd3836e3c966b24844c0918aee3177d 100644 (file)
@@ -70,6 +70,8 @@ struct vdpasim_dev_attr {
        u64 supported_features;
        int nvqs;
        u32 id;
+
+       work_func_t work_fn;
 };
 
 /* State of each vdpasim device */
@@ -163,7 +165,7 @@ static void vdpasim_reset(struct vdpasim *vdpasim)
        ++vdpasim->generation;
 }
 
-static void vdpasim_work(struct work_struct *work)
+static void vdpasim_net_work(struct work_struct *work)
 {
        struct vdpasim *vdpasim = container_of(work, struct
                                                 vdpasim, work);
@@ -370,7 +372,7 @@ static struct vdpasim *vdpasim_create(struct vdpasim_dev_attr *dev_attr)
                goto err_alloc;
 
        vdpasim->dev_attr = *dev_attr;
-       INIT_WORK(&vdpasim->work, vdpasim_work);
+       INIT_WORK(&vdpasim->work, dev_attr->work_fn);
        spin_lock_init(&vdpasim->lock);
        spin_lock_init(&vdpasim->iommu_lock);
 
@@ -740,6 +742,7 @@ static int __init vdpasim_dev_init(void)
        dev_attr.id = VIRTIO_ID_NET;
        dev_attr.supported_features = VDPASIM_NET_FEATURES;
        dev_attr.nvqs = VDPASIM_VQ_NUM;
+       dev_attr.work_fn = vdpasim_net_work;
 
        vdpasim_dev = vdpasim_create(&dev_attr);