*/
ret = rbd_aio_get_return_value(fri->completion);
if (ret < 0) {
- io_u->error = ret;
+ io_u->error = -ret;
io_u->resid = io_u->xfer_buflen;
} else
io_u->error = 0;
failed_comp:
rbd_aio_release(fri->completion);
failed:
- io_u->error = r;
+ io_u->error = -r;
td_verror(td, io_u->error, "xfer");
return FIO_Q_COMPLETED;
}
{
int r;
struct rbd_data *rbd = td->io_ops_data;
- if (rbd->connected) {
+
+ if (rbd->connected)
return 0;
- }
r = _fio_rbd_connect(td);
if (r) {
rbd_image_info_t info;
struct fio_file *f;
struct rbd_data *rbd = NULL;
- int major, minor, extra;
int r;
- /* log version of librbd. No cluster connection required. */
- rbd_version(&major, &minor, &extra);
- log_info("rbd engine: RBD version: %d.%d.%d\n", major, minor, extra);
-
/* allocate engine specific structure to deal with librbd. */
r = _fio_setup_rbd_data(td, &rbd);
if (r) {