Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ipv6: sr: fix useless rol32 call on hash

The rol32 call is currently rotating hash but the rol'd value is
being discarded. I believe the current code is incorrect and hash
should be assigned the rotated value returned from rol32.

Detected by CoverityScan, CID#1468411 ("Useless call")

Fixes: b5facfdba14c ("ipv6: sr: Compute flowlabel for outer IPv6 header of seg6 encap mode")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Acked-by: dlebrun@google.com
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Colin Ian King and committed by
David S. Miller
3ee593ad 9640ccce

+1 -1
+1 -1
net/ipv6/seg6_iptunnel.c
··· 101 101 102 102 if (do_flowlabel > 0) { 103 103 hash = skb_get_hash(skb); 104 - rol32(hash, 16); 104 + hash = rol32(hash, 16); 105 105 flowlabel = (__force __be32)hash & IPV6_FLOWLABEL_MASK; 106 106 } else if (!do_flowlabel && skb->protocol == htons(ETH_P_IPV6)) { 107 107 flowlabel = ip6_flowlabel(inner_hdr);