gluster: wire up sync/datasync opcodes
authorJens Axboe <axboe@fb.com>
Wed, 10 Dec 2014 15:12:56 +0000 (08:12 -0700)
committerJens Axboe <axboe@fb.com>
Wed, 10 Dec 2014 15:12:56 +0000 (08:12 -0700)
Signed-off-by: Jens Axboe <axboe@fb.com>
engines/glusterfs_async.c
engines/glusterfs_sync.c

index 95ca84ef2def417aefb31ce70ce39d44503271af..8283f8be7f6bee13c253bc84d67f4f49b2e01f5e 100644 (file)
@@ -117,6 +117,8 @@ static int fio_gf_async_queue(struct thread_data fio_unused * td,
                r = glfs_discard_async(g->fd, io_u->offset, io_u->xfer_buflen,
                                       gf_async_cb, io_u);
 #endif
                r = glfs_discard_async(g->fd, io_u->offset, io_u->xfer_buflen,
                                       gf_async_cb, io_u);
 #endif
+       else if (io_u->ddir == DDIR_DATASYNC)
+               r = glfs_fdatasync_async(g->fd, gf_async_cb, io_u);
        else if (io_u->ddir == DDIR_SYNC)
                r = glfs_fsync_async(g->fd, gf_async_cb, io_u);
        else
        else if (io_u->ddir == DDIR_SYNC)
                r = glfs_fsync_async(g->fd, gf_async_cb, io_u);
        else
index 235d74f64e1e3c9cfed9067d4ed75cff608e97eb..6de4ee292eee4e082b3011b544ce1735a8786785 100644 (file)
@@ -41,6 +41,10 @@ static int fio_gf_queue(struct thread_data *td, struct io_u *io_u)
                ret = glfs_read(g->fd, io_u->xfer_buf, io_u->xfer_buflen, 0);
        else if (io_u->ddir == DDIR_WRITE)
                ret = glfs_write(g->fd, io_u->xfer_buf, io_u->xfer_buflen, 0);
                ret = glfs_read(g->fd, io_u->xfer_buf, io_u->xfer_buflen, 0);
        else if (io_u->ddir == DDIR_WRITE)
                ret = glfs_write(g->fd, io_u->xfer_buf, io_u->xfer_buflen, 0);
+       else if (io_u->ddir == DDIR_SYNC)
+               ret = glfs_fsync(g->fd);
+       else if (io_u->ddir == DDIR_DATASYNC)
+               ret = glfs_fdatasync(g->fd);
        else {
                log_err("unsupported operation.\n");
                return -EINVAL;
        else {
                log_err("unsupported operation.\n");
                return -EINVAL;