aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2015-04-22 01:37:27 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2015-04-22 01:37:27 -0400
commit8aaa51b63cc3c5f3b2e72d2f0e193d9c2e00fe46 (patch)
tree25d068f3d666791cc1c44ad4c2afe03b24059f53 /include/linux
parentf614c8178b0696d070b23f36a2a27b5128f6c372 (diff)
parentfab9adfb71fc8690e20c3c280d39d49c8f4a3f0a (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Pull networking fixes from David Miller: "Just a few fixes trickling in at this point. 1) If we see an attached socket on an skb in the ipv4 forwarding path, bail. This can happen due to races with FIB rule addition, and deletion, and we should just drop such frames. From Sebastian Pöhn. 2) pppoe receive should only accept packets destined for this hosts's MAC address. From Joakim Tjernlund. 3) Handle checksum unwrapping properly in ppp receive properly when it's encapsulated in UDP in some way, fix from Tom Herbert. 4) Fix some bugs in mv88e6xxx DSA driver resulting from the conversion from register offset constants to mnenomic macros. From Vivien Didelot. 5) Fix handling of HCA max message size in mlx4 adapters, from Eran Ben ELisha" * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: net/mlx4_core: Fix reading HCA max message size in mlx4_QUERY_DEV_CAP tcp: add memory barriers to write space paths altera tse: Error-Bit on tx-avalon-stream always set. net: dsa: mv88e6xxx: use PORT_DEFAULT_VLAN net: dsa: mv88e6xxx: fix setup of port control 1 ppp: call skb_checksum_complete_unset in ppp_receive_frame net: add skb_checksum_complete_unset pppoe: Lacks DST MAC address check ip_forward: Drop frames with attached skb->sk
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/skbuff.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
index 0991259643d6..06793b598f44 100644
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -3016,6 +3016,18 @@ static inline bool __skb_checksum_validate_needed(struct sk_buff *skb,
3016 */ 3016 */
3017#define CHECKSUM_BREAK 76 3017#define CHECKSUM_BREAK 76
3018 3018
3019/* Unset checksum-complete
3020 *
3021 * Unset checksum complete can be done when packet is being modified
3022 * (uncompressed for instance) and checksum-complete value is
3023 * invalidated.
3024 */
3025static inline void skb_checksum_complete_unset(struct sk_buff *skb)
3026{
3027 if (skb->ip_summed == CHECKSUM_COMPLETE)
3028 skb->ip_summed = CHECKSUM_NONE;
3029}
3030
3019/* Validate (init) checksum based on checksum complete. 3031/* Validate (init) checksum based on checksum complete.
3020 * 3032 *
3021 * Return values: 3033 * Return values: