summaryrefslogtreecommitdiff
path: root/include/net/udp.h
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2014-06-25 05:41:54 (GMT)
committerIngo Molnar <mingo@kernel.org>2014-06-25 05:41:54 (GMT)
commit98d350cf7ae077eb8083ccc7c1bfc838344ac590 (patch)
treedfee7af0eff981b941db6bdbd1d5f039f9f85407 /include/net/udp.h
parenta10d60c08cc3bbea9195e2b36440f557373623eb (diff)
parent0bdb3ccd02509a4380d54efd85effc6a9902d4fd (diff)
downloadlinux-98d350cf7ae077eb8083ccc7c1bfc838344ac590.tar.xz
Merge branch 'perf/urgent' into perf/core, to pick up fixes and refresh the branch
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'include/net/udp.h')
-rw-r--r--include/net/udp.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/net/udp.h b/include/net/udp.h
index 2ecfc6e..68a1fef 100644
--- a/include/net/udp.h
+++ b/include/net/udp.h
@@ -111,7 +111,9 @@ struct sk_buff;
*/
static inline __sum16 __udp_lib_checksum_complete(struct sk_buff *skb)
{
- return __skb_checksum_complete_head(skb, UDP_SKB_CB(skb)->cscov);
+ return (UDP_SKB_CB(skb)->cscov == skb->len ?
+ __skb_checksum_complete(skb) :
+ __skb_checksum_complete_head(skb, UDP_SKB_CB(skb)->cscov));
}
static inline int udp_lib_checksum_complete(struct sk_buff *skb)