]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
test_librbd_fsx: fix a bug in docloseopen()
authorIlya Dryomov <ilya.dryomov@inktank.com>
Fri, 2 May 2014 11:13:11 +0000 (15:13 +0400)
committerIlya Dryomov <ilya.dryomov@inktank.com>
Wed, 7 May 2014 13:30:05 +0000 (17:30 +0400)
docloseopen() always opens $iname image.  This is bad, because the
image we had opened could have been something like $iname-clone3.  Fix
it by leveraging the fact that rbd_ctx has an image name field.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
src/test/librbd/fsx.c

index f3291c1a7bcdaa8a281a1fbbf683a6e3d135330f..3cefbc5a1a65c322988a3b76d0011e03914e4079 100644 (file)
@@ -1449,11 +1449,14 @@ do_flatten()
 void
 docloseopen(void)
 {
+       char *name;
        int ret;
 
        if (testcalls <= simulatedopcount)
                return;
 
+       name = strdup(ctx.name);
+
        if (debug)
                prt("%lu close/open\n", testcalls);
 
@@ -1463,11 +1466,13 @@ docloseopen(void)
                report_failure(180);
        }
 
-       ret = ops->open(iname, &ctx);
+       ret = ops->open(name, &ctx);
        if (ret < 0) {
                prterrcode("docloseopen: ops->open", ret);
                report_failure(181);
        }
+
+       free(name);
 }
 
 #define TRIM_OFF_LEN(off, len, size)   \