When running fio with rbd engine and specifying clustername, a piece of
memory will be allocated in _fio_rbd_connect(), but it never gets freed.
Signed-off-by: Jevon Qiao <scaleqiao@gmail.com>
client_name = calloc(1, strlen("client.") +
strlen(o->client_name) + 1);
strcat(client_name, "client.");
- o->client_name = strcat(client_name,
- o->client_name);
+ strcat(client_name, o->client_name);
+ } else {
+ client_name = o->client_name;
}
}
+
r = rados_create2(&rbd->cluster, o->cluster_name,
- o->client_name, 0);
+ client_name, 0);
+
+ if (client_name && !index(o->client_name, '.'))
+ free(client_name);
} else
r = rados_create(&rbd->cluster, o->client_name);