Revision 6983d1657dc1784288eb299f5f001fb56af705d8 authored by Wei Wang on 05 April 2024, 03:40:56 UTC, committed by Michael Tokarev on 09 April 2024, 17:18:26 UTC
Before loading the guest states, ensure that the preempt channel has been ready to use, as some of the states (e.g. via virtio_load) might trigger page faults that will be handled through the preempt channel. So yield to the main thread in the case that the channel create event hasn't been dispatched. Cc: qemu-stable <qemu-stable@nongnu.org> Fixes: 9358982744 ("migration: Send requested page directly in rp-return thread") Originally-by: Lei Wang <lei4.wang@intel.com> Link: https://lore.kernel.org/all/9aa5d1be-7801-40dd-83fd-f7e041ced249@intel.com/T/ Signed-off-by: Lei Wang <lei4.wang@intel.com> Signed-off-by: Wei Wang <wei.w.wang@intel.com> Link: https://lore.kernel.org/r/20240405034056.23933-1-wei.w.wang@intel.com [peterx: add a todo section, add Fixes and copy stable for 8.0+] Signed-off-by: Peter Xu <peterx@redhat.com> (cherry picked from commit 7afbdada7effbc2b97281bfbce0c6df351a3cf88) Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
1 parent 46f03be
File | Mode | Size |
---|---|---|
acpi.json | -rw-r--r-- | 4.0 KB |
audio.json | -rw-r--r-- | 12.9 KB |
authz.json | -rw-r--r-- | 2.5 KB |
block-core.json | -rw-r--r-- | 182.1 KB |
block-export.json | -rw-r--r-- | 12.9 KB |
block.json | -rw-r--r-- | 16.9 KB |
char.json | -rw-r--r-- | 17.1 KB |
common.json | -rw-r--r-- | 3.6 KB |
compat.json | -rw-r--r-- | 1.6 KB |
control.json | -rw-r--r-- | 4.6 KB |
crypto.json | -rw-r--r-- | 16.7 KB |
cryptodev.json | -rw-r--r-- | 1.9 KB |
cxl.json | -rw-r--r-- | 10.8 KB |
dump.json | -rw-r--r-- | 5.7 KB |
error.json | -rw-r--r-- | 766 bytes |
introspect.json | -rw-r--r-- | 8.4 KB |
job.json | -rw-r--r-- | 7.3 KB |
machine-common.json | -rw-r--r-- | 455 bytes |
machine-target.json | -rw-r--r-- | 16.3 KB |
machine.json | -rw-r--r-- | 41.8 KB |
meson.build | -rw-r--r-- | 3.2 KB |
migration.json | -rw-r--r-- | 84.1 KB |
misc-target.json | -rw-r--r-- | 10.6 KB |
misc.json | -rw-r--r-- | 14.1 KB |
net.json | -rw-r--r-- | 25.8 KB |
opts-visitor.c | -rw-r--r-- | 15.4 KB |
pci.json | -rw-r--r-- | 8.4 KB |
pragma.json | -rw-r--r-- | 2.9 KB |
qapi-clone-visitor.c | -rw-r--r-- | 5.4 KB |
qapi-dealloc-visitor.c | -rw-r--r-- | 3.5 KB |
qapi-forward-visitor.c | -rw-r--r-- | 9.1 KB |
qapi-schema.json | -rw-r--r-- | 2.5 KB |
qapi-type-helpers.c | -rw-r--r-- | 554 bytes |
qapi-util.c | -rw-r--r-- | 4.1 KB |
qapi-visit-core.c | -rw-r--r-- | 11.1 KB |
qdev.json | -rw-r--r-- | 4.4 KB |
qmp-dispatch.c | -rw-r--r-- | 8.3 KB |
qmp-event.c | -rw-r--r-- | 1.0 KB |
qmp-registry.c | -rw-r--r-- | 2.3 KB |
qobject-input-visitor.c | -rw-r--r-- | 21.0 KB |
qobject-output-visitor.c | -rw-r--r-- | 8.3 KB |
qom.json | -rw-r--r-- | 31.0 KB |
rdma.json | -rw-r--r-- | 809 bytes |
replay.json | -rw-r--r-- | 2.8 KB |
rocker.json | -rw-r--r-- | 7.6 KB |
run-state.json | -rw-r--r-- | 16.2 KB |
sockets.json | -rw-r--r-- | 4.5 KB |
stats.json | -rw-r--r-- | 6.4 KB |
string-input-visitor.c | -rw-r--r-- | 10.5 KB |
string-output-visitor.c | -rw-r--r-- | 10.6 KB |
tpm.json | -rw-r--r-- | 3.5 KB |
trace-events | -rw-r--r-- | 2.2 KB |
trace.h | -rw-r--r-- | 30 bytes |
trace.json | -rw-r--r-- | 2.3 KB |
transaction.json | -rw-r--r-- | 7.5 KB |
ui.json | -rw-r--r-- | 40.7 KB |
virtio.json | -rw-r--r-- | 28.9 KB |
yank.json | -rw-r--r-- | 2.5 KB |
Computing file changes ...