[PATCH] ipc/mqueue: remove unnecessary rb_init_node calls

From: Michel Lespinasse
Date: Wed Jul 18 2012 - 07:03:26 EST


I previously sent out my rbtree patches against v3.4, however in private
email Andrew notified me that they broke some builds due to some new
rb_init_node calls that have been introduced after v3.4. No big deal
and it's an easy fix, but I forgot to CC the usual lists and now some
people need the fix in order to try out the patches. So here it is :)

----- Forwarded message from Michel Lespinasse <walken@xxxxxxxxxx> -----

Date: Tue, 17 Jul 2012 17:30:35 -0700
From: Michel Lespinasse <walken@xxxxxxxxxx>
To: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Cc: Doug Ledford <dledford@xxxxxxxxxx>
Subject: [PATCH] ipc/mqueue: remove unnecessary rb_init_node calls

Commits d6629859 and ce2d52cc introduced an rbtree of message
priorities, and usage of rb_init_node() to initialize the corresponding
nodes. As it turns out, rb_init_node() is unnecessary here, as the
nodes are fully initialized on insertion by rb_link_node() and the
code doesn't access nodes that aren't inserted on the rbtree.

Removing the rb_init_node() calls as I removed that function during
rbtree API cleanups (the only other use of it was in a place that similarly
didn't require it).

Signed-off-by: Michel Lespinasse <walken@xxxxxxxxxx>
Acked-by: Doug Ledford <dledford@xxxxxxxxxx>
---
ipc/mqueue.c | 3 ---
1 files changed, 0 insertions(+), 3 deletions(-)

diff --git a/ipc/mqueue.c b/ipc/mqueue.c
index 8ce5769..4439c69 100644
--- a/ipc/mqueue.c
+++ b/ipc/mqueue.c
@@ -142,7 +142,6 @@ static int msg_insert(struct msg_msg *msg, struct mqueue_inode_info *info)
leaf = kmalloc(sizeof(*leaf), GFP_ATOMIC);
if (!leaf)
return -ENOMEM;
- rb_init_node(&leaf->rb_node);
INIT_LIST_HEAD(&leaf->msg_list);
info->qsize += sizeof(*leaf);
}
@@ -1041,7 +1040,6 @@ SYSCALL_DEFINE5(mq_timedsend, mqd_t, mqdes, const char __user *, u_msg_ptr,

if (!info->node_cache && new_leaf) {
/* Save our speculative allocation into the cache */
- rb_init_node(&new_leaf->rb_node);
INIT_LIST_HEAD(&new_leaf->msg_list);
info->node_cache = new_leaf;
info->qsize += sizeof(*new_leaf);
@@ -1149,7 +1147,6 @@ SYSCALL_DEFINE5(mq_timedreceive, mqd_t, mqdes, char __user *, u_msg_ptr,

if (!info->node_cache && new_leaf) {
/* Save our speculative allocation into the cache */
- rb_init_node(&new_leaf->rb_node);
INIT_LIST_HEAD(&new_leaf->msg_list);
info->node_cache = new_leaf;
info->qsize += sizeof(*new_leaf);
--
1.7.7.3
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/