]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
ipc/mqueue: remove unnecessary rb_init_node() calls
authorMichel Lespinasse <walken@google.com>
Tue, 14 Aug 2012 03:22:38 +0000 (13:22 +1000)
committerStephen Rothwell <sfr@canb.auug.org.au>
Fri, 24 Aug 2012 06:43:51 +0000 (16:43 +1000)
d6629859 ("ipc/mqueue: improve performance of send/recv") and ce2d52cc
("ipc/mqueue: add rbtree node caching support") 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@google.com>
Acked-by: Doug Ledford <dledford@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
ipc/mqueue.c

index 9a08acc9e64923ea8af5bb9286d6f2ddd48c052e..a9d679395e9af6da654fc3f59b6b3d9841619f6a 100644 (file)
@@ -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);
        }
@@ -1013,7 +1012,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);
@@ -1121,7 +1119,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);