2022-10-10 03:16:36

by Mark Tomlinson

[permalink] [raw]
Subject: [PATCH] tipc: Fix recognition of trial period

The trial period exists until jiffies is after addr_trial_end. But as
jiffies will eventually overflow, just using time_after will eventually
give incorrect results. As the node address is set once the trial period
ends, this can be used to know that we are not in the trial period.

Fixes: e415577f57f4 ("tipc: correct discovery message handling during address trial period")
Signed-off-by: Mark Tomlinson <[email protected]>
---
net/tipc/discover.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/tipc/discover.c b/net/tipc/discover.c
index da69e1abf68f..e8630707901e 100644
--- a/net/tipc/discover.c
+++ b/net/tipc/discover.c
@@ -148,8 +148,8 @@ static bool tipc_disc_addr_trial_msg(struct tipc_discoverer *d,
{
struct net *net = d->net;
struct tipc_net *tn = tipc_net(net);
- bool trial = time_before(jiffies, tn->addr_trial_end);
u32 self = tipc_own_addr(net);
+ bool trial = time_before(jiffies, tn->addr_trial_end) && !self;

if (mtyp == DSC_TRIAL_FAIL_MSG) {
if (!trial)
--
2.38.0


2022-10-14 08:21:22

by patchwork-bot+netdevbpf

[permalink] [raw]
Subject: Re: [PATCH] tipc: Fix recognition of trial period

Hello:

This patch was applied to netdev/net.git (master)
by David S. Miller <[email protected]>:

On Mon, 10 Oct 2022 15:46:13 +1300 you wrote:
> The trial period exists until jiffies is after addr_trial_end. But as
> jiffies will eventually overflow, just using time_after will eventually
> give incorrect results. As the node address is set once the trial period
> ends, this can be used to know that we are not in the trial period.
>
> Fixes: e415577f57f4 ("tipc: correct discovery message handling during address trial period")
> Signed-off-by: Mark Tomlinson <[email protected]>
>
> [...]

Here is the summary with links:
- tipc: Fix recognition of trial period
https://git.kernel.org/netdev/net/c/28be7ca4fcfd

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html