Because unittest_librbd links not just with librados_test_stub.a but
also with librados.so (why?), these were sneakily picked up from the
latter. This resulted in get_pool_full_try() reading from invalid
memory and every once in a while returning true, prompting librbd to
write to invalid memory through set_pool_full_try() in create_ioctx()
and cause random crashes.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
return ctx->get_namespace();
}
+void IoCtx::set_pool_full_try() {
+}
+
+bool IoCtx::get_pool_full_try() {
+ return false;
+}
+
static int save_operation_result(int result, int *pval) {
if (pval != NULL) {
*pval = result;