aboutsummaryrefslogtreecommitdiff
path: root/drivers/vdpa/vdpa_sim/vdpa_sim_blk.c
diff options
context:
space:
mode:
authorStefano Garzarella <sgarzare@redhat.com>2023-04-04 15:17:21 +0200
committerMichael S. Tsirkin <mst@redhat.com>2023-04-21 03:02:33 -0400
commite2a4f808a78646badefcd13a6e995d369898f443 (patch)
tree33037e27fd770d24f3a5866a8a6c05a7adf722bf /drivers/vdpa/vdpa_sim/vdpa_sim_blk.c
parent42823a871fd4e17b34034f43b36ae57bd2ed8a67 (diff)
vdpa_sim: make devices agnostic for work management
Let's move work management inside the vdpa_sim core. This way we can easily change how we manage the works, without having to change the devices each time. Acked-by: Eugenio PĂ©rez Martin <eperezma@redhat.com> Acked-by: Jason Wang <jasowang@redhat.com> Signed-off-by: Stefano Garzarella <sgarzare@redhat.com> Message-Id: <20230404131721.45886-1-sgarzare@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'drivers/vdpa/vdpa_sim/vdpa_sim_blk.c')
-rw-r--r--drivers/vdpa/vdpa_sim/vdpa_sim_blk.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/vdpa/vdpa_sim/vdpa_sim_blk.c b/drivers/vdpa/vdpa_sim/vdpa_sim_blk.c
index 5117959bed8a..eb4897c8541e 100644
--- a/drivers/vdpa/vdpa_sim/vdpa_sim_blk.c
+++ b/drivers/vdpa/vdpa_sim/vdpa_sim_blk.c
@@ -11,7 +11,6 @@
#include <linux/module.h>
#include <linux/device.h>
#include <linux/kernel.h>
-#include <linux/sched.h>
#include <linux/blkdev.h>
#include <linux/vringh.h>
#include <linux/vdpa.h>
@@ -286,9 +285,8 @@ err:
return handled;
}
-static void vdpasim_blk_work(struct work_struct *work)
+static void vdpasim_blk_work(struct vdpasim *vdpasim)
{
- struct vdpasim *vdpasim = container_of(work, struct vdpasim, work);
bool reschedule = false;
int i;
@@ -326,7 +324,7 @@ out:
spin_unlock(&vdpasim->lock);
if (reschedule)
- schedule_work(&vdpasim->work);
+ vdpasim_schedule_work(vdpasim);
}
static void vdpasim_blk_get_config(struct vdpasim *vdpasim, void *config)