It's in. Serge E. Hallyn wrote: > Sorry, this should have been a part of the analogous sem fix. > > [re commit 615744ad97 ... c/r: support share-memory sysv-ipc] > > Signed-off-by: Serge E. Hallyn <serue@xxxxxxxxxx> > --- > ipc/checkpoint_msg.c | 4 ++-- > ipc/checkpoint_shm.c | 4 ++-- > 2 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/ipc/checkpoint_msg.c b/ipc/checkpoint_msg.c > index a988a9e..fb1a61e 100644 > --- a/ipc/checkpoint_msg.c > +++ b/ipc/checkpoint_msg.c > @@ -348,12 +348,12 @@ int restore_ipc_msg(struct ckpt_ctx *ctx) > msq->q_qnum = h->q_qnum; > > ret = load_ipc_msg_hdr(ctx, h, msq); > - ipc_unlock(perms); > > if (ret < 0) { > ckpt_debug("msq: need to remove (%d)\n", ret); > freeque(current->nsproxy->ipc_ns, perms); > - } > + } else > + ipc_unlock(perms); > up_write(&msg_ids->rw_mutex); > out: > free_msg_list(&messages); /* no-op if all ok, else cleanup msgs */ > diff --git a/ipc/checkpoint_shm.c b/ipc/checkpoint_shm.c > index 713f910..0d8eb14 100644 > --- a/ipc/checkpoint_shm.c > +++ b/ipc/checkpoint_shm.c > @@ -239,7 +239,6 @@ int restore_ipc_shm(struct ckpt_ctx *ctx) > get_file(file); > > ret = load_ipc_shm_hdr(ctx, h, shp); > - ipc_unlock(perms); > if (ret < 0) > goto mutex; > > @@ -253,7 +252,8 @@ int restore_ipc_shm(struct ckpt_ctx *ctx) > if (ret < 0) { > ckpt_debug("shm: need to remove (%d)\n", ret); > do_shm_rmid(current->nsproxy->ipc_ns, perms); > - } > + } else > + ipc_unlock(perms); > up_write(&shm_ids->rw_mutex); > out: > ckpt_hdr_put(ctx, h); _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/containers