qemu/docs
Fabiano Rosas 61dec06082 migration/multifd: Don't fsync when closing QIOChannelFile
Commit bc38feddeb ("io: fsync before closing a file channel") added a
fsync/fdatasync at the closing point of the QIOChannelFile to ensure
integrity of the migration stream in case of QEMU crash.

The decision to do the sync at qio_channel_close() was not the best
since that function runs in the main thread and the fsync can cause
QEMU to hang for several minutes, depending on the migration size and
disk speed.

To fix the hang, remove the fsync from qio_channel_file_close().

At this moment, the migration code is the only user of the fsync and
we're taking the tradeoff of not having a sync at all, leaving the
responsibility to the upper layers.

Fixes: bc38feddeb ("io: fsync before closing a file channel")
Reviewed-by: "Daniel P. Berrangé" <berrange@redhat.com>
Signed-off-by: Fabiano Rosas <farosas@suse.de>
Link: https://lore.kernel.org/r/20240305195629.9922-1-farosas@suse.de
Link: https://lore.kernel.org/r/20240305174332.2553-1-farosas@suse.de
[peterx: add more comment to the qio_channel_close()]
Signed-off-by: Peter Xu <peterx@redhat.com>
2024-03-11 14:41:40 -04:00
..
_templates
about hw/core/machine-smp: Deprecate unsupported "parameter=1" SMP configurations 2024-03-09 19:17:01 +01:00
config vl: recognize audiodev groups in configuration files 2023-09-22 17:35:11 +02:00
devel migration/multifd: Don't fsync when closing QIOChannelFile 2024-03-11 14:41:40 -04:00
interop docs/interop/firmware.json: Fix doc for FirmwareFlashMode 2024-03-09 19:17:01 +01:00
specs hw/fsi: Added FSI documentation 2024-02-01 08:33:18 +01:00
sphinx qapi: Rename QAPIDoc.Section.name to .tag 2024-02-26 10:43:56 +01:00
sphinx-static
spin
system hw/gpio: Implement STM32L4x5 GPIO 2024-03-07 12:19:25 +00:00
tools docs/tools/qemu-img.rst: fix typo (sumarizes) 2023-12-23 19:35:47 +03:00
user *-user: Deprecate and disable -p pagesize 2024-02-29 11:35:37 -10:00
block-replication.txt
bypass-iommu.txt
COLO-FT.txt migration: block incoming colo when capability is disabled 2023-05-10 18:48:12 +02:00
colo-proxy.txt colo: examples: remove mentions of script= and (wrong) downscript= 2024-01-30 21:20:20 +03:00
conf.py docs/conf.py: Remove usage of distutils 2024-03-04 15:57:12 +00:00
defs.rst.inc
igd-assign.txt
image-fuzzer.txt
index.rst
memory-hotplug.txt
meson.build configure: bootstrap sphinx with mkvenv 2023-05-18 08:53:51 +02:00
multi-thread-compression.txt docs tests: Fix use of migrate_set_parameter 2023-09-08 13:08:52 +03:00
multiseat.txt
nvdimm.txt
pci_expander_bridge.txt
pcie_pci_bridge.txt
pcie_sriov.txt pcie: Use common ARI next function number 2023-07-10 18:59:32 -04:00
pcie.txt docs/pcie.txt: Replace ioh3420 with pcie-root-port 2023-01-28 06:21:30 -05:00
pvrdma.txt
qcow2-cache.txt
qdev-device-use.txt util: remove support -chardev tty and -chardev parport 2023-01-06 00:51:02 +01:00
qemu-option-trace.rst.inc
qemupciserial.inf
rdma.txt docs tests: Fix use of migrate_set_parameter 2023-09-08 13:08:52 +03:00
requirements.txt readthodocs: fully specify a build environment 2024-01-12 13:23:48 +00:00
spice-port-fqdn.txt
throttle.txt
xbzrle.txt
xen-save-devices-state.txt