From 89e7d81d92274ed60b73332e04ceb966e398a0e6 Mon Sep 17 00:00:00 2001 From: Petr Rockai Date: Tue, 7 Jan 2014 03:04:14 +0100 Subject: [PATCH] lvmetad: Fix a corruption-prone race in error path. --- daemons/lvmetad/lvmetad-core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/daemons/lvmetad/lvmetad-core.c b/daemons/lvmetad/lvmetad-core.c index bc306f32b..7409839f2 100644 --- a/daemons/lvmetad/lvmetad-core.c +++ b/daemons/lvmetad/lvmetad-core.c @@ -903,8 +903,8 @@ static response pv_found(lvmetad_state *s, request r) if (!dm_hash_insert(s->pvid_to_pvmeta, pvid, cft) || !dm_hash_insert_binary(s->device_to_pvid, &device, sizeof(device), (void*)pvid_dup)) { - unlock_pvid_to_pvmeta(s); dm_hash_remove(s->pvid_to_pvmeta, pvid); + unlock_pvid_to_pvmeta(s); dm_config_destroy(cft); dm_free(pvid_dup); return reply_fail("out of memory");