diff --git a/net/core/dev.c b/net/core/dev.c index 12a214c4e801..7405b3ffd338 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -1173,6 +1173,7 @@ int __skb_linearize(struct sk_buff *skb, gfp_t gfp_mask) atomic_set(&ninfo->dataref, 1); ninfo->tso_size = skb_shinfo(skb)->tso_size; ninfo->tso_segs = skb_shinfo(skb)->tso_segs; + ninfo->ufo_size = skb_shinfo(skb)->ufo_size; ninfo->nr_frags = 0; ninfo->frag_list = NULL; diff --git a/net/core/skbuff.c b/net/core/skbuff.c index 2144952d1c6c..c0029f93899d 100644 --- a/net/core/skbuff.c +++ b/net/core/skbuff.c @@ -232,6 +232,7 @@ struct sk_buff *alloc_skb_from_cache(kmem_cache_t *cp, skb_shinfo(skb)->nr_frags = 0; skb_shinfo(skb)->tso_size = 0; skb_shinfo(skb)->tso_segs = 0; + skb_shinfo(skb)->ufo_size = 0; skb_shinfo(skb)->frag_list = NULL; out: return skb; @@ -503,6 +504,7 @@ static void copy_skb_header(struct sk_buff *new, const struct sk_buff *old) atomic_set(&new->users, 1); skb_shinfo(new)->tso_size = skb_shinfo(old)->tso_size; skb_shinfo(new)->tso_segs = skb_shinfo(old)->tso_segs; + skb_shinfo(new)->ufo_size = skb_shinfo(old)->ufo_size; } /**