X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=engines%2Fsg.c;h=790019e1d57fa48e7a635cecdc47dd5b6835cba3;hp=3462688a8d5295980bb6204c56f77581825989ea;hb=7101d9c24abec4be58a086d85d6d92ec6e6492e9;hpb=15ba640a7a17e8efb1b6d73a8edf0ed18d25431b;ds=sidebyside diff --git a/engines/sg.c b/engines/sg.c index 3462688a..790019e1 100644 --- a/engines/sg.c +++ b/engines/sg.c @@ -12,7 +12,6 @@ #include #include "../fio.h" -#include "../os.h" #ifdef FIO_HAVE_SGIO @@ -65,15 +64,11 @@ static int pollin_events(struct pollfd *pfds, int fds) static int fio_sgio_getevents(struct thread_data *td, int min, int max, struct timespec fio_unused *t) { - /* - * normally hard coding &td->files[0] is a bug that needs to be fixed, - * but it's ok here as all files should point to the same device. - */ - struct fio_file *f = &td->files[0]; struct sgio_data *sd = td->io_ops->data; int left = max, ret, r = 0; void *buf = sd->sgbuf; unsigned int i, events; + struct fio_file *f; /* * Fill in the file descriptors @@ -247,6 +242,8 @@ static int fio_sgio_queue(struct thread_data *td, struct io_u *io_u) struct sg_io_hdr *hdr = &io_u->hdr; int ret; + fio_ro_check(td, io_u); + ret = fio_sgio_doio(td, io_u, io_u->ddir == DDIR_SYNC); if (ret < 0)