[PATCH] Support residual io counts from io engines
[fio.git] / engines / mmap.c
index 20dcfd2264cb3afc981e371c9c89aa2c28c1a447..dc1fd33a2927fc8163140875ee12dbd0e6f22684 100644 (file)
@@ -48,9 +48,9 @@ static int fio_mmapio_queue(struct thread_data *td, struct io_u *io_u)
        struct mmapio_data *sd = td->io_ops->data;
 
        if (io_u->ddir == DDIR_READ)
-               memcpy(io_u->buf, f->mmap + real_off, io_u->buflen);
+               memcpy(io_u->xfer_buf, f->mmap + real_off, io_u->xfer_buflen);
        else if (io_u->ddir == DDIR_WRITE)
-               memcpy(f->mmap + real_off, io_u->buf, io_u->buflen);
+               memcpy(f->mmap + real_off, io_u->xfer_buf, io_u->xfer_buflen);
        else if (io_u->ddir == DDIR_SYNC) {
                if (msync(f->mmap, f->file_size, MS_SYNC))
                        io_u->error = errno;
@@ -60,9 +60,9 @@ static int fio_mmapio_queue(struct thread_data *td, struct io_u *io_u)
         * not really direct, but should drop the pages from the cache
         */
        if (td->odirect && io_u->ddir != DDIR_SYNC) {
-               if (msync(f->mmap + real_off, io_u->buflen, MS_SYNC) < 0)
+               if (msync(f->mmap + real_off, io_u->xfer_buflen, MS_SYNC) < 0)
                        io_u->error = errno;
-               if (madvise(f->mmap + real_off, io_u->buflen,  MADV_DONTNEED) < 0)
+               if (madvise(f->mmap + real_off, io_u->xfer_buflen,  MADV_DONTNEED) < 0)
                        io_u->error = errno;
        }