Disable notifications right before scheduling, instead of waiting until the work is running. After applying this patch, fio read test goes from 1191MiB/s to 1263.14Mib/s Signed-off-by: Eugenio Pérez <eperezma@xxxxxxxxxx> --- fs/fuse/virtio_fs.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fs/fuse/virtio_fs.c b/fs/fuse/virtio_fs.c index e19c78f2480e..3d6981c0f3c3 100644 --- a/fs/fuse/virtio_fs.c +++ b/fs/fuse/virtio_fs.c @@ -915,6 +915,8 @@ static void virtio_fs_vq_done(struct virtqueue *vq) dev_dbg(&vq->vdev->dev, "%s %s\n", __func__, fsvq->name); + /* Shceduled, don't send more notifications */ + virtqueue_disable_cb(vq); schedule_work(&fsvq->done_work); } -- 2.48.1