um: virtio_uml: mark device as unregistered when breaking it

Mark the device as not registered anymore when scheduling the work to
remove it. Otherwise we could end up scheduling the work multiple times
in a row, including scheduling it while it is already running.

Fixes: af9fb41ed315 ("um: virtio_uml: Fix broken device handling in time-travel")
Signed-off-by: Benjamin Berg <benjamin.berg@intel.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
This commit is contained in:
Benjamin Berg 2023-02-09 10:00:03 +01:00 committed by Richard Weinberger
parent 8a6ca54364
commit 8e9cd85139

View File

@ -168,6 +168,8 @@ static void vhost_user_check_reset(struct virtio_uml_device *vu_dev,
if (!vu_dev->registered)
return;
vu_dev->registered = 0;
virtio_break_device(&vu_dev->vdev);
schedule_work(&pdata->conn_broken_wk);
}