Unbreak the pmemblk engine
authorBart Van Assche <bvanassche@acm.org>
Sat, 27 Jun 2020 14:26:24 +0000 (07:26 -0700)
committerBart Van Assche <bvanassche@acm.org>
Sat, 27 Jun 2020 15:58:58 +0000 (08:58 -0700)
Reported-by: Yi Zhang <yi.zhang@redhat.com>
Tested-by: Yi Zhang <yi.zhang@redhat.com>
Fixes: e9c7be0e32e6 ("pmemblk: Fix a memory leak")
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
engines/pmemblk.c

index 730f4d776f1eb46d8bbfc792ed87b103c078641b..e2eaa15ea1b4df58a5f4c065edf64ea6a26afd4d 100644 (file)
@@ -220,14 +220,14 @@ static fio_pmemblk_file_t pmb_open(const char *pathspec, int flags)
                pmb->pmb_nblocks = pmemblk_nblock(pmb->pmb_pool);
 
                fio_pmemblk_cache_insert(pmb);
+       } else {
+               free(path);
        }
 
        pmb->pmb_refcnt += 1;
 
        pthread_mutex_unlock(&CacheLock);
 
-       free(path);
-
        return pmb;
 
 error: