History

timers/nohz: Update NOHZ load in remote tick

The way loadavg is tracked during nohz only pays attention to the load upon entering nohz. This can be particularly noticeable if full nohz is entered while non-idle, and then the cpu goes idle and stays that way for a long time. Use the remote tick to ensure that full nohz cpus report their deltas within a reasonable time. [ swood: Added changelog and removed recheck of stopped tick. ]

Peter Zijlstra (Intel) committed 6 years ago

Commit ebc0f831 parent 488603b3 files · +28 −11Browse files

Showing the changes to include/linux (1 of 3 files). Show all

Unified · Split

include/linux/sched/nohz.h+2−0
@@ -15,9 +15,11 @@ static inline void nohz_balance_enter_idle(int cpu) { } · 14 unmodified lines
15 15
16#ifdef CONFIG_NO_HZ_COMMON16#ifdef CONFIG_NO_HZ_COMMON
17void calc_load_nohz_start(void);17void calc_load_nohz_start(void);
18void calc_load_nohz_remote(struct rq *rq);
18void calc_load_nohz_stop(void);19void calc_load_nohz_stop(void);
19#else20#else
20static inline void calc_load_nohz_start(void) { }21static inline void calc_load_nohz_start(void) { }
22static inline void calc_load_nohz_remote(struct rq *rq) { }
21static inline void calc_load_nohz_stop(void) { }23static inline void calc_load_nohz_stop(void) { }
22#endif /* CONFIG_NO_HZ_COMMON */24#endif /* CONFIG_NO_HZ_COMMON */
23 25