diff options
author | David S. Miller <davem@davemloft.net> | 2015-10-02 16:21:25 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-10-02 16:21:25 +0200 |
commit | f6d3125fa3c2f55ddf7cf69365c41089de6cfae6 (patch) | |
tree | ff2bcb135ebf090d7b383d55123b621f4590632c /ipc/msg.c | |
parent | Merge branch 'bridge_vlan_cleanups_fixes' (diff) | |
parent | Merge tag 'mmc-v4.3-rc3' of git://git.linaro.org/people/ulf.hansson/mmc (diff) | |
download | linux-f6d3125fa3c2f55ddf7cf69365c41089de6cfae6.tar.xz linux-f6d3125fa3c2f55ddf7cf69365c41089de6cfae6.zip |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts:
net/dsa/slave.c
net/dsa/slave.c simply had overlapping changes.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'ipc/msg.c')
-rw-r--r-- | ipc/msg.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/ipc/msg.c b/ipc/msg.c index 66c4f567eb73..1471db9a7e61 100644 --- a/ipc/msg.c +++ b/ipc/msg.c @@ -137,13 +137,6 @@ static int newque(struct ipc_namespace *ns, struct ipc_params *params) return retval; } - /* ipc_addid() locks msq upon success. */ - id = ipc_addid(&msg_ids(ns), &msq->q_perm, ns->msg_ctlmni); - if (id < 0) { - ipc_rcu_putref(msq, msg_rcu_free); - return id; - } - msq->q_stime = msq->q_rtime = 0; msq->q_ctime = get_seconds(); msq->q_cbytes = msq->q_qnum = 0; @@ -153,6 +146,13 @@ static int newque(struct ipc_namespace *ns, struct ipc_params *params) INIT_LIST_HEAD(&msq->q_receivers); INIT_LIST_HEAD(&msq->q_senders); + /* ipc_addid() locks msq upon success. */ + id = ipc_addid(&msg_ids(ns), &msq->q_perm, ns->msg_ctlmni); + if (id < 0) { + ipc_rcu_putref(msq, msg_rcu_free); + return id; + } + ipc_unlock_object(&msq->q_perm); rcu_read_unlock(); |