[Devel] [PATCH VZ9 v2 0/6] ploop BAT optimizations
Andrey Zhadchenko
andrey.zhadchenko at virtuozzo.com
Wed Oct 9 15:17:20 MSK 2024
With this patchset, we start to check if the upcoming requests for ploop
have REQ_FUA flag.
If the flag is present:
- IO submits immediately, completion waits for BAT update
- BAT updates submit immediately
- set IOCB_DSYNC for writes and BAT updates
- BAT update does not trigger flush
If the flag is absent:
- IO completion does not wait for BAT update
- all BAT updates are periodically submitted in a batch
- BAT update does not trigger flush
New parameter with metadata submit delay can be specified when setting
up ploop table
v2 changes:
- drop flush after BAT updates even for FUA requests
- set IOCB_DSYNC flag on writes triggered by FUA
- complete all accumulated metadata on FLUSH requests
- support REQ_PREFLUSH flag
Andrey Zhadchenko (3):
dm-ploop: do not flush BAT writes if request was not FUA
dm-ploop: do not wait for BAT update for non-FUA requests
dm-ploop: add delay for metadata writeback
*** BLURB HERE ***
Andrey Zhadchenko (6):
dm-ploop: do not flush after metadata writes
dm-ploop: set IOCB_DSYNC on all FUA requests
dm-ploop: do not wait for BAT update for non-FUA requests
dm-ploop: add delay for metadata writeback
dm-ploop: submit all postponed metadata on REQ_OP_FLUSH
dm-ploop: handle REQ_PREFLUSH
drivers/md/dm-ploop-bat.c | 1 +
drivers/md/dm-ploop-map.c | 154 +++++++++++++++++++++++++++--------
drivers/md/dm-ploop-target.c | 13 +++
drivers/md/dm-ploop.h | 9 ++
4 files changed, 143 insertions(+), 34 deletions(-)
--
2.39.3
More information about the Devel
mailing list