tipc: Reduce footprint by un-inlining buf_acquire routine
authorAllan Stephens <allan.stephens@windriver.com>
Tue, 11 May 2010 14:30:17 +0000 (14:30 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 13 May 2010 06:02:28 +0000 (23:02 -0700)
Convert buf_acquire inline routine that is more than one line into
a standard function, thereby eliminating some repeated code.

Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/tipc/core.c
net/tipc/core.h

index b47d1842a970da69605c9c2e1922d119e2de973e..69646811798542cb29b37e66dd424679464a30a9 100644 (file)
@@ -101,6 +101,30 @@ int tipc_get_mode(void)
        return tipc_mode;
 }
 
+/**
+ * buf_acquire - creates a TIPC message buffer
+ * @size: message size (including TIPC header)
+ *
+ * Returns a new buffer with data pointers set to the specified size.
+ *
+ * NOTE: Headroom is reserved to allow prepending of a data link header.
+ *       There may also be unrequested tailroom present at the buffer's end.
+ */
+
+struct sk_buff *buf_acquire(u32 size)
+{
+       struct sk_buff *skb;
+       unsigned int buf_size = (BUF_HEADROOM + size + 3) & ~3u;
+
+       skb = alloc_skb_fclone(buf_size, GFP_ATOMIC);
+       if (skb) {
+               skb_reserve(skb, BUF_HEADROOM);
+               skb_put(skb, size);
+               skb->next = NULL;
+       }
+       return skb;
+}
+
 /**
  * tipc_core_stop_net - shut down TIPC networking sub-systems
  */
index 1e149f55f3e2fe5e8dab73ce1c8106720ad0d251..188799017abdb35aa5416862539395dbb412974b 100644 (file)
@@ -328,29 +328,7 @@ static inline struct tipc_msg *buf_msg(struct sk_buff *skb)
        return (struct tipc_msg *)skb->data;
 }
 
-/**
- * buf_acquire - creates a TIPC message buffer
- * @size: message size (including TIPC header)
- *
- * Returns a new buffer with data pointers set to the specified size.
- *
- * NOTE: Headroom is reserved to allow prepending of a data link header.
- *       There may also be unrequested tailroom present at the buffer's end.
- */
-
-static inline struct sk_buff *buf_acquire(u32 size)
-{
-       struct sk_buff *skb;
-       unsigned int buf_size = (BUF_HEADROOM + size + 3) & ~3u;
-
-       skb = alloc_skb_fclone(buf_size, GFP_ATOMIC);
-       if (skb) {
-               skb_reserve(skb, BUF_HEADROOM);
-               skb_put(skb, size);
-               skb->next = NULL;
-       }
-       return skb;
-}
+extern struct sk_buff *buf_acquire(u32 size);
 
 /**
  * buf_discard - frees a TIPC message buffer