[Devel] [PATCH] cr: ipc: don't unlock before calling freeary in error path

Serge E. Hallyn serue at us.ibm.com
Fri May 29 13:23:06 PDT 2009


Else freeary will BUG out.

Signed-off-by: Serge E. Hallyn <serue at us.ibm.com>
---
 ipc/checkpoint_sem.c |    5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/ipc/checkpoint_sem.c b/ipc/checkpoint_sem.c
index 34dea40..e6934dc 100644
--- a/ipc/checkpoint_sem.c
+++ b/ipc/checkpoint_sem.c
@@ -206,12 +206,11 @@ int restore_ipc_sem(struct ckpt_ctx *ctx)
 	memcpy(sem->sem_base, sma, sem->sem_nsems * sizeof(*sma));
 
 	ret = load_ipc_sem_hdr(ctx, h, sem);
-	ipc_unlock(perms);
-
 	if (ret < 0) {
 		ckpt_debug("sem: need to remove (%d)\n", ret);
 		freeary(current->nsproxy->ipc_ns, perms);
-	}
+	} else
+		ipc_unlock(perms);
 	up_write(&sem_ids->rw_mutex);
  out:
 	kfree(sma);
-- 
1.6.1

_______________________________________________
Containers mailing list
Containers at lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/containers




More information about the Devel mailing list