All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 00/15] RCUification of the memory API, parts 1 and 2
@ 2015-01-22 14:47 Paolo Bonzini
  2015-01-22 14:47 ` [Qemu-devel] [PATCH 01/15] rcu: add rcu library Paolo Bonzini
                   ` (14 more replies)
  0 siblings, 15 replies; 27+ messages in thread
From: Paolo Bonzini @ 2015-01-22 14:47 UTC (permalink / raw)
  To: qemu-devel; +Cc: borntraeger, famz, stefanha

Part 1 is patches 1-7, part 2 is patches 8-15.

Part 1 changes requested by reviewers were minimal, but no one really
provided a Reviewed-by so I'm reposting.  The idea is to send a pull
request for part 1 soon.

These two parts are enough of a base for Stefan's work on thread-safe
migration bitmaps.

Part 3 (in the works) will separate removal and reclamation of device
data.  Part 4 (already done) will switch KVM MMIO and PIO to unlocked
lookup and convert a single device to unlocked access.

Changes in part 1:

- patch 1: left aside for later (Peter)

- patch 2 (now patch 1): two small doc fixes (Fam)

- patch 3 (now patch 2): do not do both short and long tests (Fam)
                         do not drop rcu_register_thread in rcu_init (Fam)

TCG folks, please review patches 8 and 9.  Note that they are not
yet ready for multiple TCG threads.

Paolo


Jan Kiszka (1):
  memory: remove assertion on memory_region_destroy

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 (10):
  rcu: add rcu library
  rcu: add rcutorture
  rcu: allow nesting of rcu_read_lock/rcu_read_unlock
  rcu: add call_rcu
  memory: protect current_map by RCU
  memory: avoid ref/unref in memory_region_find
  exec: introduce cpu_reload_memory_map
  exec: make iotlb RCU-friendly
  exec: RCUify AddressSpaceDispatch
  exec: protect mru_block with RCU

 arch_init.c                  |  66 ++++---
 cpu-exec.c                   |  21 ++
 cpus.c                       |   2 +-
 cputlb.c                     |  13 +-
 docs/rcu.txt                 | 387 ++++++++++++++++++++++++++++++++++++
 exec.c                       | 304 +++++++++++++++++++----------
 hw/9pfs/virtio-9p-synth.c    |   3 +-
 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/exec/memory.h        |   5 +
 include/qemu/atomic.h        |  61 ++++++
 include/qemu/queue.h         |  24 +--
 include/qemu/rcu.h           | 147 ++++++++++++++
 include/qemu/rcu_queue.h     | 134 +++++++++++++
 include/qemu/thread.h        |   3 -
 include/qom/cpu.h            |   1 +
 memory.c                     |  60 +++---
 scripts/dump-guest-memory.py |   8 +-
 softmmu_template.h           |   4 +-
 tests/Makefile               |  10 +-
 tests/rcutorture.c           | 452 +++++++++++++++++++++++++++++++++++++++++++
 tests/test-rcu-list.c        | 326 +++++++++++++++++++++++++++++++
 util/Makefile.objs           |   1 +
 util/rcu.c                   | 291 ++++++++++++++++++++++++++++
 28 files changed, 2148 insertions(+), 200 deletions(-)
 create mode 100644 docs/rcu.txt
 create mode 100644 include/qemu/rcu.h
 create mode 100644 include/qemu/rcu_queue.h
 create mode 100644 tests/rcutorture.c
 create mode 100644 tests/test-rcu-list.c
 create mode 100644 util/rcu.c

-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2015-02-03 10:07 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-22 14:47 [Qemu-devel] [PATCH v2 00/15] RCUification of the memory API, parts 1 and 2 Paolo Bonzini
2015-01-22 14:47 ` [Qemu-devel] [PATCH 01/15] rcu: add rcu library Paolo Bonzini
2015-01-26  3:13   ` Fam Zheng
2015-01-22 14:47 ` [Qemu-devel] [PATCH 02/15] rcu: add rcutorture Paolo Bonzini
2015-01-26  3:31   ` Fam Zheng
2015-01-22 14:47 ` [Qemu-devel] [PATCH 03/15] rcu: allow nesting of rcu_read_lock/rcu_read_unlock Paolo Bonzini
2015-01-26  3:32   ` Fam Zheng
2015-01-22 14:47 ` [Qemu-devel] [PATCH 04/15] rcu: add call_rcu Paolo Bonzini
2015-01-26  6:04   ` Fam Zheng
2015-01-22 14:47 ` [Qemu-devel] [PATCH 05/15] memory: remove assertion on memory_region_destroy Paolo Bonzini
2015-01-26  6:04   ` Fam Zheng
2015-01-22 14:47 ` [Qemu-devel] [PATCH 06/15] memory: protect current_map by RCU Paolo Bonzini
2015-01-26  6:16   ` Fam Zheng
2015-01-22 14:47 ` [Qemu-devel] [PATCH 07/15] memory: avoid ref/unref in memory_region_find Paolo Bonzini
2015-01-26  6:24   ` Fam Zheng
2015-01-26  9:19     ` Paolo Bonzini
2015-01-22 14:47 ` [Qemu-devel] [PATCH 08/15] exec: introduce cpu_reload_memory_map Paolo Bonzini
2015-01-22 14:47 ` [Qemu-devel] [PATCH 09/15] exec: make iotlb RCU-friendly Paolo Bonzini
2015-01-22 14:47 ` [Qemu-devel] [PATCH 10/15] exec: RCUify AddressSpaceDispatch Paolo Bonzini
2015-01-28  5:45   ` Fam Zheng
2015-01-28  9:44     ` Paolo Bonzini
2015-02-03 10:07     ` Paolo Bonzini
2015-01-22 14:47 ` [Qemu-devel] [PATCH 11/15] rcu: introduce RCU-enabled QLIST Paolo Bonzini
2015-01-22 14:47 ` [Qemu-devel] [PATCH 12/15] exec: protect mru_block with RCU Paolo Bonzini
2015-01-22 14:47 ` [Qemu-devel] [PATCH 13/15] cosmetic changes preparing for the following patches Paolo Bonzini
2015-01-22 14:47 ` [Qemu-devel] [PATCH 14/15] exec: convert ram_list to QLIST Paolo Bonzini
2015-01-22 14:47 ` [Qemu-devel] [PATCH 15/15] Convert ram_list to RCU Paolo Bonzini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.