diff options
Diffstat (limited to 'net/tipc/msg.c')
-rw-r--r-- | net/tipc/msg.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/net/tipc/msg.c b/net/tipc/msg.c index 121e59a1d0e7..17146c16ee2d 100644 --- a/net/tipc/msg.c +++ b/net/tipc/msg.c | |||
@@ -568,6 +568,14 @@ bool tipc_msg_lookup_dest(struct net *net, struct sk_buff *skb, int *err) | |||
568 | msg_set_destnode(msg, dnode); | 568 | msg_set_destnode(msg, dnode); |
569 | msg_set_destport(msg, dport); | 569 | msg_set_destport(msg, dport); |
570 | *err = TIPC_OK; | 570 | *err = TIPC_OK; |
571 | |||
572 | if (!skb_cloned(skb)) | ||
573 | return true; | ||
574 | |||
575 | /* Unclone buffer in case it was bundled */ | ||
576 | if (pskb_expand_head(skb, BUF_HEADROOM, BUF_TAILROOM, GFP_ATOMIC)) | ||
577 | return false; | ||
578 | |||
571 | return true; | 579 | return true; |
572 | } | 580 | } |
573 | 581 | ||