The aim of this serie is to prepare kvm memory listener to support atomic memslots update. In order to do that, QEMU should take care of sending all memslot updates in a single ioctl, so that they can all be processed atomically. In order to do that, implement kml->begin() and kml->commit() callbacks, and change the logic by replacing every ioctl invocation in ->region_* and ->log_* so that the struct kvm_userspace_memory_region are queued in a linked list that is then traversed and processed in ->commit. Patch 1 ensures that ->region_* and ->log_* are always wrapped by ->begin and ->commit. Emanuele Giuseppe Esposito (2): softmmu/memory: add missing begin/commit callback calls kvm/kvm-all.c: listener should delay kvm_vm_ioctl to the commit phase accel/kvm/kvm-all.c | 99 ++++++++++++++++++++++++++++----------- include/sysemu/kvm_int.h | 6 +++ linux-headers/linux/kvm.h | 9 ++++ softmmu/memory.c | 2 + 4 files changed, 89 insertions(+), 27 deletions(-) -- 2.31.1