tipc: Reduce footprint by un-inlining buf_acquire routine
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>
This commit is contained in:
parent
b274f4ab8e
commit
3032cca4d5
|
@ -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
|
||||
*/
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue