From: Colin Xu <colin...@intel.com> If object-del input-linux object on-the-fly, instance finalize will close evdev fd without resetting it. However the main thread is still trying to lock_acquire/lock_release during ppoll, which leads to a very high CPU utilization.
Signed-off-by: Colin Xu <colin...@intel.com> Reviewed-by: Li Qiang <liq...@gmail.com> Message-id: 20200925021808.26471-1-colin...@intel.com Signed-off-by: Gerd Hoffmann <kra...@redhat.com> --- ui/input-linux.c | 1 + 1 file changed, 1 insertion(+) diff --git a/ui/input-linux.c b/ui/input-linux.c index ab351a418701..34cc531190f9 100644 --- a/ui/input-linux.c +++ b/ui/input-linux.c @@ -418,6 +418,7 @@ static void input_linux_instance_finalize(Object *obj) if (il->initialized) { QTAILQ_REMOVE(&inputs, il, next); + qemu_set_fd_handler(il->fd, NULL, NULL, NULL); close(il->fd); } g_free(il->evdev); -- 2.27.0