fio: fix aio trim completion latencies
[fio.git] / engines / dev-dax.c
index caae1e09b5f8112d1725a5300b43ed4d1a9a56da..422ea634ff1d2530b6dae4ba40747417281ee27c 100644 (file)
@@ -182,7 +182,8 @@ done:
        return 0;
 }
 
-static int fio_devdax_queue(struct thread_data *td, struct io_u *io_u)
+static enum fio_q_status fio_devdax_queue(struct thread_data *td,
+                                         struct io_u *io_u)
 {
        fio_ro_check(td, io_u);
        io_u->error = 0;
@@ -258,7 +259,7 @@ fio_devdax_get_file_size(struct thread_data *td, struct fio_file *f)
 {
        char spath[PATH_MAX];
        char npath[PATH_MAX];
-       char *rpath;
+       char *rpath, *basename;
        FILE *sfile;
        uint64_t size;
        struct stat st;
@@ -288,7 +289,8 @@ fio_devdax_get_file_size(struct thread_data *td, struct fio_file *f)
        }
 
        /* check if DAX device */
-       if (strcmp("/sys/class/dax", rpath)) {
+       basename = strrchr(rpath, '/');
+       if (!basename || strcmp("dax", basename+1)) {
                log_err("%s: %s not a DAX device!\n",
                        td->o.name, f->file_name);
        }