Re: [PATCH net] ipvs: shut down destination trash timer on netns cleanup

From: Runyu Xiao

Date: Tue Sep 08 2026 - 11:53:04 EST


Hi Julian,

Thanks for reviewing this.

On Fri, 4 Sep 2026, Julian Anastasov wrote:
> timer_delete_sync() can safely stop timer if it
> is rearmed by its callback: __timer_delete_sync() waits
> the callback to finish (the callback can rearm it) and
> then detach it if pending. There must be another call flow
> that can rearm it later, otherwise this patch is not needed.
>
> During cleanup, we do not start the timer from
> ip_vs_trash_put_dest(). May be I'm missing something?

You are right. I missed that the netns cleanup path passes cleanup=true
through ip_vs_flush() and __ip_vs_del_dest() to ip_vs_trash_put_dest().
The !cleanup guard therefore prevents that path from rearming
dest_trash_timer. If the timer callback is already running,
timer_delete_sync() waits for it to finish and removes any timer that the
callback rearmed before returning.

There is therefore no reachable post-cleanup rearm in this path, and the
proposed timer_shutdown_sync() change is unnecessary. Please consider the
v1 patch withdrawn; I will not send a v2.

Sorry for the noise, and thanks for pointing this out.

Regards,
Runyu