[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
- [PATCH v3 0/6] qcow2: compressed write cache,
Vladimir Sementsov-Ogievskiy <=
- [PATCH v3 1/6] block-jobs: flush target at the end of .run(), Vladimir Sementsov-Ogievskiy, 2021/03/05
- [PATCH v3 6/6] block/qcow2: use seqcache for compressed writes, Vladimir Sementsov-Ogievskiy, 2021/03/05
- Re: [PATCH v3 6/6] block/qcow2: use seqcache for compressed writes, Max Reitz, 2021/03/12
- Re: [PATCH v3 6/6] block/qcow2: use seqcache for compressed writes, Vladimir Sementsov-Ogievskiy, 2021/03/12
- Re: [PATCH v3 6/6] block/qcow2: use seqcache for compressed writes, Max Reitz, 2021/03/15
- Re: [PATCH v3 6/6] block/qcow2: use seqcache for compressed writes, Vladimir Sementsov-Ogievskiy, 2021/03/15
- Re: [PATCH v3 6/6] block/qcow2: use seqcache for compressed writes, Max Reitz, 2021/03/16
- Re: [PATCH v3 6/6] block/qcow2: use seqcache for compressed writes, Vladimir Sementsov-Ogievskiy, 2021/03/16
- Re: [PATCH v3 6/6] block/qcow2: use seqcache for compressed writes, Max Reitz, 2021/03/17