[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 0/9] RCUification of the memory API, part 2
From: |
Paolo Bonzini |
Subject: |
[Qemu-devel] [PATCH v3 0/9] RCUification of the memory API, part 2 |
Date: |
Fri, 6 Feb 2015 17:55:19 +0100 |
Part 2 converts ram_list to RCU. It is enough of a base for Stefan's
work on thread-safe migration bitmaps.
Part 3 (not yet posted because it won't be in 2.3 anyway) will separate
removal and reclamation of device data. Part 4 will switch KVM MMIO
and PIO to unlocked lookup and convert a single device to unlocked access.
Paolo
v1->v2: add comment in cpu_reload_memory_map [Fam]
do not remove ram_list mutex [Fam]
some improvements to test-rcu-list
v2->v3: use explicit memory barriers when accessing ram_list.version [Fam]
clean up some comments [Fam]
add more comments about required locks
Mike Day (4):
rcu: introduce RCU-enabled QLIST
cosmetic changes preparing for the following patches
exec: convert ram_list to QLIST
Convert ram_list to RCU
Paolo Bonzini (5):
exec: introduce cpu_reload_memory_map
exec: make iotlb RCU-friendly
exec: RCUify AddressSpaceDispatch
rcu: prod call_rcu thread when calling synchronize_rcu
exec: protect mru_block with RCU
arch_init.c | 73 +++++++----
cpu-exec.c | 33 +++++
cpus.c | 2 +-
cputlb.c | 13 +-
exec.c | 294 +++++++++++++++++++++++++++++------------
hw/9pfs/virtio-9p-synth.c | 2 +-
hw/i386/intel_iommu.c | 3 +
hw/pci-host/apb.c | 1 +
hw/ppc/spapr_iommu.c | 1 +
include/exec/cpu-all.h | 13 +-
include/exec/cputlb.h | 2 +-
include/exec/exec-all.h | 5 +-
include/qemu/queue.h | 11 --
include/qemu/rcu_queue.h | 134 +++++++++++++++++++
include/qom/cpu.h | 1 +
scripts/dump-guest-memory.py | 8 +-
softmmu_template.h | 4 +-
tests/Makefile | 5 +-
tests/test-rcu-list.c | 306 +++++++++++++++++++++++++++++++++++++++++++
util/rcu.c | 8 +-
20 files changed, 775 insertions(+), 144 deletions(-)
create mode 100644 include/qemu/rcu_queue.h
create mode 100644 tests/test-rcu-list.c
--
1.8.3.1
- [Qemu-devel] [PATCH v3 0/9] RCUification of the memory API, part 2,
Paolo Bonzini <=
- [Qemu-devel] [PATCH 3/9] exec: RCUify AddressSpaceDispatch, Paolo Bonzini, 2015/02/06
- [Qemu-devel] [PATCH 5/9] rcu: introduce RCU-enabled QLIST, Paolo Bonzini, 2015/02/06
- [Qemu-devel] [PATCH 8/9] exec: convert ram_list to QLIST, Paolo Bonzini, 2015/02/06
- [Qemu-devel] [PATCH 1/9] exec: introduce cpu_reload_memory_map, Paolo Bonzini, 2015/02/06
- [Qemu-devel] [PATCH 7/9] cosmetic changes preparing for the following patches, Paolo Bonzini, 2015/02/06
- [Qemu-devel] [PATCH 6/9] exec: protect mru_block with RCU, Paolo Bonzini, 2015/02/06
- [Qemu-devel] [PATCH 2/9] exec: make iotlb RCU-friendly, Paolo Bonzini, 2015/02/06