diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2014-05-20 09:49:41 +0900 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2014-05-20 09:49:41 +0900 |
commit | cea35899a02226b70baeee7e179d7a7c6e814b98 (patch) | |
tree | 19621a7ae67df5f398071791d52489a464b1b30a /drivers/net/macvtap.c | |
parent | 53971a86d2db89f32859dc26bd6594b5bc665d5b (diff) | |
parent | d6d211db37e75de2ddc3a4f979038c40df7cc79c (diff) | |
download | linux-cea35899a02226b70baeee7e179d7a7c6e814b98.tar.gz linux-cea35899a02226b70baeee7e179d7a7c6e814b98.tar.xz |
Merge 3.15-rc5 into usb-next
We need these USB fixes in here as well.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/net/macvtap.c')
-rw-r--r-- | drivers/net/macvtap.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c index ff111a89e17f..3381c4f91a8c 100644 --- a/drivers/net/macvtap.c +++ b/drivers/net/macvtap.c @@ -322,6 +322,15 @@ static rx_handler_result_t macvtap_handle_frame(struct sk_buff **pskb) segs = nskb; } } else { + /* If we receive a partial checksum and the tap side + * doesn't support checksum offload, compute the checksum. + * Note: it doesn't matter which checksum feature to + * check, we either support them all or none. + */ + if (skb->ip_summed == CHECKSUM_PARTIAL && + !(features & NETIF_F_ALL_CSUM) && + skb_checksum_help(skb)) + goto drop; skb_queue_tail(&q->sk.sk_receive_queue, skb); } |