aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/net/ipv6.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/include/net/ipv6.h b/include/net/ipv6.h
index 9bf85d34c024..6e416f6d3e3c 100644
--- a/include/net/ipv6.h
+++ b/include/net/ipv6.h
@@ -711,7 +711,7 @@ static inline __be32 ip6_make_flowlabel(struct net *net, struct sk_buff *skb,
711 __be32 flowlabel, bool autolabel) 711 __be32 flowlabel, bool autolabel)
712{ 712{
713 if (!flowlabel && (autolabel || net->ipv6.sysctl.auto_flowlabels)) { 713 if (!flowlabel && (autolabel || net->ipv6.sysctl.auto_flowlabels)) {
714 __be32 hash; 714 u32 hash;
715 715
716 hash = skb_get_hash(skb); 716 hash = skb_get_hash(skb);
717 717
@@ -721,7 +721,7 @@ static inline __be32 ip6_make_flowlabel(struct net *net, struct sk_buff *skb,
721 */ 721 */
722 hash ^= hash >> 12; 722 hash ^= hash >> 12;
723 723
724 flowlabel = hash & IPV6_FLOWLABEL_MASK; 724 flowlabel = (__force __be32)hash & IPV6_FLOWLABEL_MASK;
725 } 725 }
726 726
727 return flowlabel; 727 return flowlabel;