On Tue, Jul 27, 2021 at 12:29:19AM +0200, Florian Westphal wrote: > Michal Kubecek reports that conntrack gc is responsible for frequent > wakeups (every 125ms) on idle systems. > > On busy systems, timed out entries are evicted during lookup. > The gc worker is only needed to remove entries after system becomes idle > after a busy period. > > To resolve this, always scan the entire table. > If the scan is taking too long, reschedule so other work_structs can run > and resume from next bucket. > > After a completed scan, wait for 2 minutes before the next cycle. > Heuristics for faster re-schedule are removed. > > GC_SCAN_INTERVAL could be exposed as a sysctl in the future to allow > tuning this as-needed or even turn the gc worker off. Applied, thanks.