On Fri, Mar 07, 2025 at 11:16:29PM +0100, Kevin Wolf wrote: > Write requests in writethrough mode mean that QEMU sends a separate > flush request (i.e. fdatasync) after each completed write request. > This is unnecessary overhead when we can just pass a flag for the write > request that gives us the desired FUA semantics. > > Unfortunately, this made a problem in the adaptive polling algorithm > apparent that would result in a performance regression in some cases > with FUA support in file-posix. Therefore, adaptive polling is changed > in this series, too, to avoid the regression.
Looks good! Stefan > > Kevin Wolf (5): > file-posix: Support FUA writes > block/io: Ignore FUA with cache.no-flush=on > aio: Create AioPolledEvent > aio-posix: Factor out adjust_polling_time() > aio-posix: Separate AioPolledEvent per AioHandler > > include/block/aio.h | 5 ++- > include/block/raw-aio.h | 8 +++- > util/aio-posix.h | 1 + > block/file-posix.c | 26 ++++++++---- > block/io.c | 4 ++ > block/io_uring.c | 13 +++--- > block/linux-aio.c | 24 +++++++++-- > util/aio-posix.c | 94 ++++++++++++++++++++++++++--------------- > util/async.c | 1 - > meson.build | 4 ++ > 10 files changed, 125 insertions(+), 55 deletions(-) > > -- > 2.48.1 >
signature.asc
Description: PGP signature