engines/io_uring: don't attempt to set RLIMITs
[fio.git] / engines / rbd.c
index cf7337f00745198f21cd23379ea3362c8e6ee3cd..268b6ebdffad2b71e4da565ed90867e76f90947a 100644 (file)
@@ -200,6 +200,14 @@ static int _fio_rbd_connect(struct thread_data *td)
                log_err("rados_create failed.\n");
                goto failed_early;
        }
+       if (o->pool_name == NULL) {
+               log_err("rbd pool name must be provided.\n");
+               goto failed_early;
+       }
+       if (!o->rbd_name) {
+               log_err("rbdname must be provided.\n");
+               goto failed_early;
+       }
 
        r = rados_conf_read_file(rbd->cluster, NULL);
        if (r < 0) {
@@ -316,12 +324,14 @@ static inline int fri_check_complete(struct rbd_data *rbd, struct io_u *io_u,
        return 0;
 }
 
+#ifndef CONFIG_RBD_POLL
 static inline int rbd_io_u_seen(struct io_u *io_u)
 {
        struct fio_rbd_iou *fri = io_u->engine_data;
 
        return fri->io_seen;
 }
+#endif
 
 static void rbd_io_u_wait_complete(struct io_u *io_u)
 {
@@ -462,8 +472,8 @@ static int fio_rbd_getevents(struct thread_data *td, unsigned int min,
        return events;
 }
 
-static enum fio_q_status
-fio_rbd_queue(struct thread_data *td, struct io_u *io_u)
+static enum fio_q_status fio_rbd_queue(struct thread_data *td,
+                                      struct io_u *io_u)
 {
        struct rbd_data *rbd = td->io_ops_data;
        struct fio_rbd_iou *fri = io_u->engine_data;
@@ -658,7 +668,7 @@ static int fio_rbd_io_u_init(struct thread_data *td, struct io_u *io_u)
        return 0;
 }
 
-static struct ioengine_ops ioengine = {
+FIO_STATIC struct ioengine_ops ioengine = {
        .name                   = "rbd",
        .version                = FIO_IOOPS_VERSION,
        .setup                  = fio_rbd_setup,