diff options
author | Joerg Roedel <joerg.roedel@amd.com> | 2009-06-09 10:50:57 +0200 |
---|---|---|
committer | Joerg Roedel <joerg.roedel@amd.com> | 2009-06-09 10:50:57 +0200 |
commit | d2dd01de9924ae24afeba5aa5bc2e08287701df6 (patch) | |
tree | 3021bf496579a48984666355b59df5e44b42dd32 /net/core/skbuff.c | |
parent | 367d04c4ec02dad34d80452e32e3370db7fb6fee (diff) | |
parent | 62a6f465f6572e1f28765c583c12753bb3e23715 (diff) |
Merge commit 'tip/core/iommu' into amd-iommu/fixes
Diffstat (limited to 'net/core/skbuff.c')
-rw-r--r-- | net/core/skbuff.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/core/skbuff.c b/net/core/skbuff.c index f091a5a845c..e505b5392e1 100644 --- a/net/core/skbuff.c +++ b/net/core/skbuff.c @@ -502,7 +502,9 @@ int skb_recycle_check(struct sk_buff *skb, int skb_size) shinfo->gso_segs = 0; shinfo->gso_type = 0; shinfo->ip6_frag_id = 0; + shinfo->tx_flags.flags = 0; shinfo->frag_list = NULL; + memset(&shinfo->hwtstamps, 0, sizeof(shinfo->hwtstamps)); memset(skb, 0, offsetof(struct sk_buff, tail)); skb->data = skb->head + NET_SKB_PAD; @@ -2286,7 +2288,7 @@ unsigned int skb_seq_read(unsigned int consumed, const u8 **data, next_skb: block_limit = skb_headlen(st->cur_skb) + st->stepped_offset; - if (abs_offset < block_limit) { + if (abs_offset < block_limit && !st->frag_data) { *data = st->cur_skb->data + (abs_offset - st->stepped_offset); return block_limit - abs_offset; } |