qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH v3 0/6] qcow2: compressed write cache


From: Vladimir Sementsov-Ogievskiy
Subject: [PATCH v3 0/6] qcow2: compressed write cache
Date: Fri, 5 Mar 2021 20:35:01 +0300

The series inherits "[PATCH 0/7] qcow2: compressed write cache"
(changed a lot, the cache is rewritten), and
"[PATCH v2(RFC) 0/3] qcow2: fix parallel rewrite and "
(the fix solution is taken from v1 instead, as the are problems with v2,
 described in cover letter)

Core changes in v3:

 - cache is rewritten and now is separated even from block-layer
 - I'm tired of trying to catch degradation when use both pagecache and
   my new cache.. So, I decided that using both caches is just a bad
   idea and in v3 cache is enabled only when qcow2 file child opened in
   O_DIRECT

Vladimir Sementsov-Ogievskiy (6):
  block-jobs: flush target at the end of .run()
  iotests: add qcow2-discard-during-rewrite
  block/qcow2: introduce inflight writes counters: fix discard
  util: implement seqcache
  block-coroutine-wrapper: allow non bdrv_ prefix
  block/qcow2: use seqcache for compressed writes

 block/coroutines.h                            |   3 +
 block/qcow2.h                                 |  13 +
 include/block/blockjob_int.h                  |  18 +
 include/qemu/seqcache.h                       |  42 ++
 block/backup.c                                |   8 +-
 block/commit.c                                |   2 +
 block/mirror.c                                |   2 +
 block/qcow2-refcount.c                        | 159 +++++++-
 block/qcow2.c                                 | 178 ++++++++-
 block/stream.c                                |   2 +
 blockjob.c                                    |  16 +
 util/seqcache.c                               | 361 ++++++++++++++++++
 MAINTAINERS                                   |   6 +
 scripts/block-coroutine-wrapper.py            |   7 +-
 .../tests/qcow2-discard-during-rewrite        |  72 ++++
 .../tests/qcow2-discard-during-rewrite.out    |  21 +
 util/meson.build                              |   1 +
 17 files changed, 893 insertions(+), 18 deletions(-)
 create mode 100644 include/qemu/seqcache.h
 create mode 100644 util/seqcache.c
 create mode 100755 tests/qemu-iotests/tests/qcow2-discard-during-rewrite
 create mode 100644 tests/qemu-iotests/tests/qcow2-discard-during-rewrite.out

-- 
2.29.2




reply via email to

[Prev in Thread] Current Thread [Next in Thread]