[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2419532.1649871672@warthog.procyon.org.uk>
Date: Wed, 13 Apr 2022 18:41:12 +0100
From: David Howells <dhowells@...hat.com>
To: Eric Dumazet <edumazet@...gle.com>
Cc: dhowells@...hat.com, netdev@...r.kernel.org,
Marc Dionne <marc.dionne@...istor.com>,
linux-afs@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH net] rxrpc: Restore removed timer deletion
Eric Dumazet <edumazet@...gle.com> wrote:
> ok... so we have a timer and a work queue, both activating each other
> in kind of a ping pong ?
Yes. I want to emit regular keepalive pokes.
> Any particular reason not using delayed works ?
Because there's a race between starting the keepalive timer when a new peer is
added and when the keepalive worker is resetting the timer for the next peer
in the list. This is why I'm using timer_reduce(). delayed_work doesn't
currently have such a facility. It's not simple to add because
try_to_grab_pending() as called from mod_delayed_work_on() cancels the timer -
which is not what I want it to do.
David
Powered by blists - more mailing lists