On Sat, Nov 26, 2022 at 11:55:50AM +0900, Damien Le Moal wrote: > Taking a blktrace of a simple fio run on a block device file using > libaio and iodepth > 1 reveals that asynchronous writes are executed as > sync writes, that is, REQ_SYNC is set for the write BIOs. > > Fix this by modifying dio_bio_write_op() to set REQ_SYNC only for IOs > that are indeed synchronous ones and set REQ_IDLE only for asynchronous > IOs. Well, REQ_SYNC is used for I/O that some is actively waiting for, which includs aio/io_uring I/O unlike buffered writback. So I don't think this should be changed.