Mike Krinkin writes: > Hi, > > i'm developing block layer workload simulator/player and need to > generate bios as close as possible to the ones in original workload. > To play workload i employ aio + O_DIRECT, but all IOs end up as bios > with SYNC flag set. So i wonder is there any way to control bios > flags from userspace or, maybe, any other options to generate > workload from userspace except aio + O_DIRECT with more precise > control over bio flags? 100% agree, I've investigated existing io-load replay tools and seems that they all use O_DIRECT(like btreplay) or buffered-aio/{sync_file_range,fadvise} ( like fio). So it looks like they all very inaccurate. Jens, what do to do to replay real load in order to test fs/ioscheduler harness? Are you interested in having such fine-tuning interface (probably guarded by CAP_SYS_ADMIN)? There are several places where we can pass such flag 1) iocb->aio_flag, add IOCB_FLAG_DIRECT_ASYNC 2) add new flag O_DIRECT_ASYNC to file->f_flags