qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v4 00/19] Block layer thread safety, part 1
@ 2017-06-05 12:38 Paolo Bonzini
  2017-06-05 12:38 ` [Qemu-devel] [PATCH 01/19] block: access copy_on_read with atomic ops Paolo Bonzini
                   ` (20 more replies)
  0 siblings, 21 replies; 42+ messages in thread
From: Paolo Bonzini @ 2017-06-05 12:38 UTC (permalink / raw)
  To: qemu-devel; +Cc: famz

v3->v4: rebased and included fixes in Fam's v2 pull request
        new patch 18, fixing testsuite failures on OS X

Paolo Bonzini (19):
  block: access copy_on_read with atomic ops
  block: access quiesce_counter with atomic ops
  block: access io_limits_disabled with atomic ops
  block: access serialising_in_flight with atomic ops
  block: access wakeup with atomic ops
  block: access io_plugged with atomic ops
  throttle-groups: only start one coroutine from drained_begin
  throttle-groups: do not use qemu_co_enter_next
  throttle-groups: protect throttled requests with a CoMutex
  util: add stats64 module
  block: use Stat64 for wr_highest_offset
  block: access write_gen with atomics
  block: protect tracked_requests and flush_queue with reqs_lock
  block: introduce dirty_bitmap_mutex
  migration/block: reset dirty bitmap before reading
  block: protect modification of dirty bitmaps with a mutex
  block: introduce block_account_one_io
  block: split BlockAcctStats creation and setup
  block: make accounting thread-safe

 block.c                        |   9 +-
 block/accounting.c             |  78 ++++++++++-------
 block/block-backend.c          |   6 +-
 block/dirty-bitmap.c           | 112 ++++++++++++++++++++++--
 block/io.c                     |  51 ++++++-----
 block/mirror.c                 |  14 ++-
 block/nfs.c                    |   4 +-
 block/qapi.c                   |   2 +-
 block/sheepdog.c               |   3 +-
 block/throttle-groups.c        |  91 ++++++++++++++-----
 blockdev.c                     |  48 ++--------
 include/block/accounting.h     |  11 ++-
 include/block/block.h          |   5 +-
 include/block/block_int.h      |  61 ++++++++-----
 include/block/dirty-bitmap.h   |  25 ++++--
 include/qemu/stats64.h         | 193 +++++++++++++++++++++++++++++++++++++++++
 include/sysemu/block-backend.h |  10 +--
 migration/block.c              |  17 ++--
 util/Makefile.objs             |   1 +
 util/stats64.c                 | 137 +++++++++++++++++++++++++++++
 20 files changed, 693 insertions(+), 185 deletions(-)
 create mode 100644 include/qemu/stats64.h
 create mode 100644 util/stats64.c

-- 
2.13.0

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

end of thread, other threads:[~2018-05-24 13:49 UTC | newest]

Thread overview: 42+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-06-05 12:38 [Qemu-devel] [PATCH v4 00/19] Block layer thread safety, part 1 Paolo Bonzini
2017-06-05 12:38 ` [Qemu-devel] [PATCH 01/19] block: access copy_on_read with atomic ops Paolo Bonzini
2017-06-05 12:38 ` [Qemu-devel] [PATCH 02/19] block: access quiesce_counter " Paolo Bonzini
2017-06-05 12:38 ` [Qemu-devel] [PATCH 03/19] block: access io_limits_disabled " Paolo Bonzini
2017-06-05 12:38 ` [Qemu-devel] [PATCH 04/19] block: access serialising_in_flight " Paolo Bonzini
2017-06-05 12:38 ` [Qemu-devel] [PATCH 05/19] block: access wakeup " Paolo Bonzini
2017-06-05 12:38 ` [Qemu-devel] [PATCH 06/19] block: access io_plugged " Paolo Bonzini
2017-06-05 12:38 ` [Qemu-devel] [PATCH 07/19] throttle-groups: only start one coroutine from drained_begin Paolo Bonzini
2017-06-05 12:38 ` [Qemu-devel] [PATCH 08/19] throttle-groups: do not use qemu_co_enter_next Paolo Bonzini
2017-06-05 12:38 ` [Qemu-devel] [PATCH 09/19] throttle-groups: protect throttled requests with a CoMutex Paolo Bonzini
2017-06-05 12:38 ` [Qemu-devel] [PATCH 10/19] util: add stats64 module Paolo Bonzini
2017-06-05 12:39 ` [Qemu-devel] [PATCH 11/19] block: use Stat64 for wr_highest_offset Paolo Bonzini
2017-06-05 12:39 ` [Qemu-devel] [PATCH 12/19] block: access write_gen with atomics Paolo Bonzini
2017-06-05 12:39 ` [Qemu-devel] [PATCH 13/19] block: protect tracked_requests and flush_queue with reqs_lock Paolo Bonzini
2017-06-05 12:39 ` [Qemu-devel] [PATCH 14/19] block: introduce dirty_bitmap_mutex Paolo Bonzini
2017-06-05 12:39 ` [Qemu-devel] [PATCH 15/19] migration/block: reset dirty bitmap before reading Paolo Bonzini
2017-06-05 12:39 ` [Qemu-devel] [PATCH 16/19] block: protect modification of dirty bitmaps with a mutex Paolo Bonzini
2017-06-26 16:07   ` Vladimir Sementsov-Ogievskiy
2017-06-26 16:54     ` Paolo Bonzini
2017-06-27  9:07       ` Vladimir Sementsov-Ogievskiy
2017-06-27  9:27         ` Paolo Bonzini
2017-06-27  9:47           ` Vladimir Sementsov-Ogievskiy
2017-06-27 12:52             ` Paolo Bonzini
2017-06-27 13:51               ` Vladimir Sementsov-Ogievskiy
2017-06-27 13:58                 ` Paolo Bonzini
2017-06-27 14:20                   ` Vladimir Sementsov-Ogievskiy
2017-06-27 14:26                     ` Paolo Bonzini
2017-06-27 14:43                       ` Vladimir Sementsov-Ogievskiy
2017-06-27 14:48                         ` Paolo Bonzini
2017-06-27 15:31                       ` Vladimir Sementsov-Ogievskiy
2017-06-27 15:32                         ` Vladimir Sementsov-Ogievskiy
2017-06-27 15:42                           ` Paolo Bonzini
2017-06-05 12:39 ` [Qemu-devel] [PATCH 17/19] block: introduce block_account_one_io Paolo Bonzini
2017-06-05 12:39 ` [Qemu-devel] [PATCH 18/19] block: split BlockAcctStats creation and setup Paolo Bonzini
2017-06-06 15:43   ` Alberto Garcia
2017-06-05 12:39 ` [Qemu-devel] [PATCH 19/19] block: make accounting thread-safe Paolo Bonzini
2017-06-06 15:45   ` Alberto Garcia
2018-05-24 13:35   ` Alberto Garcia
2018-05-24 13:49     ` Alberto Garcia
2018-05-24 13:49     ` Paolo Bonzini
2017-06-05 13:18 ` [Qemu-devel] [PATCH v4 00/19] Block layer thread safety, part 1 no-reply
2017-06-07  0:04 ` Fam Zheng

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).