pve-qemu-qoup/debian
Thomas Lamprecht b36e8acc31 alloc track: acquire BS AIO context during dropping
ran into this when live-restoring a backup configured for IO-threads,
got the good ol':
> qemu: qemu_mutex_unlock_impl: Operation not permitted
error.

Checking out the history of the related bdrv_backup_top_drop(*bs)
method, we can see that it used to do the AIO context acquiring too,
but in the backup path this was problematic and was changed to be
higher up in the call path in a upstream series from Stefan[0].

That said, this is a completely different code path and it is safe to
do so here. We always run from the main threads's AIO context here
and we call it only indirectly once, guarded by checking for
`s->drop_state == DropNone` and set `s->drop_state = DropRequested`
shortly before we schedule the track_drop() in a bh.

[0]: https://lists.gnu.org/archive/html/qemu-devel/2020-03/msg09139.html

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-06 16:27:48 +02:00
..
patches alloc track: acquire BS AIO context during dropping 2021-04-06 16:27:48 +02:00
source build: use 3.0 source format 2018-03-14 14:18:17 +01:00
changelog bump version to 5.2.0-5 2021-03-30 18:19:47 +02:00
compat Bump dephelper compatibility level to 10 2017-10-16 14:05:22 +02:00
control d/control: drop unused python from dependencies 2021-03-18 14:15:31 +01:00
copyright import stable-4 build files 2017-04-05 11:39:09 +02:00
docs import stable-4 build files 2017-04-05 11:39:09 +02:00
kvm-ifdown import stable-4 build files 2017-04-05 11:39:09 +02:00
kvm-ifup update to 2.9.0-rc2 build files 2017-04-05 11:40:20 +02:00
Logo.bmp import stable-4 build files 2017-04-05 11:39:09 +02:00
OVMF_CODE-pure-efi.fd import stable-4 build files 2017-04-05 11:39:09 +02:00
OVMF_README.txt import stable-4 build files 2017-04-05 11:39:09 +02:00
OVMF_VARS-pure-efi.fd import stable-4 build files 2017-04-05 11:39:09 +02:00
parse-cpu-flags.pl Write recognized CPUID flags into static file 2019-10-17 13:39:21 +02:00
parse-machines.pl machine list: save as JSON 2021-03-05 16:21:30 +01:00
pve-qemu-kvm.install Update to QEMU 5.2 2021-02-12 10:20:01 +01:00
pve-qemu-kvm.links build and include qemu-system-aarch64 2019-04-19 09:53:44 +02:00
pve-qemu-kvm.lintian-overrides add lintian overrides for shipped strange BLOBs 2019-05-22 17:59:27 +02:00
rules machine list: save as JSON 2021-03-05 16:21:30 +01:00