summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2022-08-31 17:47:56 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-09-15 12:23:52 +0200
commitc9d6f7ce3b13c48d6693055fae996be72a2d71b0 (patch)
treea3bed4c701cbc3e7fa854f28d622f8b67bea95c1
parenta7af71bb5ee6e887d49f098e212ef4f2f7cfbaf6 (diff)
downloadlinux-stable-c9d6f7ce3b13c48d6693055fae996be72a2d71b0.tar.gz
linux-stable-c9d6f7ce3b13c48d6693055fae996be72a2d71b0.tar.bz2
linux-stable-c9d6f7ce3b13c48d6693055fae996be72a2d71b0.zip
tipc: fix shift wrapping bug in map_get()
[ Upstream commit e2b224abd9bf45dcb55750479fc35970725a430b ] There is a shift wrapping bug in this code so anything thing above 31 will return false. Fixes: 35c55c9877f8 ("tipc: add neighbor monitoring framework") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--net/tipc/monitor.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/tipc/monitor.c b/net/tipc/monitor.c
index c6496da9392d..cf6dd3546c53 100644
--- a/net/tipc/monitor.c
+++ b/net/tipc/monitor.c
@@ -130,7 +130,7 @@ static void map_set(u64 *up_map, int i, unsigned int v)
static int map_get(u64 up_map, int i)
{
- return (up_map & (1 << i)) >> i;
+ return (up_map & (1ULL << i)) >> i;
}
static struct tipc_peer *peer_prev(struct tipc_peer *peer)