]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
geneve: Fix function matching VNI and tunnel ID on big-endian
authorStefano Brivio <sbrivio@redhat.com>
Thu, 19 Oct 2017 11:31:28 +0000 (13:31 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 18 Nov 2017 10:30:36 +0000 (11:30 +0100)
commitf13444e50126cd722bc720fae32650037ef90189
tree2576d1be8c9f7e62170789a5bb3f2d1b81af67f9
parente186faf27b12f5466e060a5f3ea1a667f1b5bd04
geneve: Fix function matching VNI and tunnel ID on big-endian

[ Upstream commit 772e97b57a4aa00170ad505a40ffad31d987ce1d ]

On big-endian machines, functions converting between tunnel ID
and VNI use the three LSBs of tunnel ID storage to map VNI.

The comparison function eq_tun_id_and_vni(), on the other hand,
attempted to map the VNI from the three MSBs. Fix it by using
the same check implemented on LE, which maps VNI from the three
LSBs of tunnel ID.

Fixes: 2e0b26e10352 ("geneve: Optimize geneve device lookup.")
Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Reviewed-by: Jakub Sitnicki <jkbs@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/geneve.c