First cut at supporting IO offload
[fio.git] / ioengine.h
index a55290d47f55eaac7d034e4246ee5ac44ad7b924..3d49993699294c2148f8601e884169ab7ab0a0fe 100644 (file)
@@ -119,6 +119,7 @@ struct io_u {
                struct ibv_mr *mr;
 #endif
                void *mmap_data;
+               uint64_t null;
        };
 };
 
@@ -251,4 +252,14 @@ static inline enum fio_ddir acct_ddir(struct io_u *io_u)
        return io_u->ddir;
 }
 
+static inline void io_u_clear(struct io_u *io_u, unsigned int flags)
+{
+       __sync_fetch_and_and(&io_u->flags, ~flags);
+}
+
+static inline void io_u_set(struct io_u *io_u, unsigned int flags)
+{
+       __sync_fetch_and_or(&io_u->flags, flags);
+}
+
 #endif