Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

timers/migration: Remove dead code handling idle CPU checking for remote timers

Idle migrators don't walk the whole tree in order to find out if there
are timers to migrate because they recorded the next deadline to be
verified within a single check in tmigr_requires_handle_remote().

Remove the related dead code and data.

Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://patch.msgid.link/20251024132536.39841-7-frederic@kernel.org

authored by

Frederic Weisbecker and committed by
Thomas Gleixner
ba14500e 93643b90

-16
-16
kernel/time/timer_migration.c
··· 504 504 * @now: timer base monotonic 505 505 * @check: is set if there is the need to handle remote timers; 506 506 * required in tmigr_requires_handle_remote() only 507 - * @tmc_active: this flag indicates, whether the CPU which triggers 508 - * the hierarchy walk is !idle in the timer migration 509 - * hierarchy. When the CPU is idle and the whole hierarchy is 510 - * idle, only the first event of the top level has to be 511 - * considered. 512 507 */ 513 508 struct tmigr_walk { 514 509 u64 nextexp; ··· 514 519 unsigned long basej; 515 520 u64 now; 516 521 bool check; 517 - bool tmc_active; 518 522 }; 519 523 520 524 typedef bool (*up_f)(struct tmigr_group *, struct tmigr_group *, struct tmigr_walk *); ··· 1113 1119 */ 1114 1120 if (!tmigr_check_migrator(group, childmask)) 1115 1121 return true; 1116 - 1117 - /* 1118 - * When there is a parent group and the CPU which triggered the 1119 - * hierarchy walk is not active, proceed the walk to reach the top level 1120 - * group before reading the next_expiry value. 1121 - */ 1122 - if (group->parent && !data->tmc_active) 1123 - return false; 1124 - 1125 1122 /* 1126 1123 * The lock is required on 32bit architectures to read the variable 1127 1124 * consistently with a concurrent writer. On 64bit the lock is not ··· 1157 1172 data.now = get_jiffies_update(&jif); 1158 1173 data.childmask = tmc->groupmask; 1159 1174 data.firstexp = KTIME_MAX; 1160 - data.tmc_active = !tmc->idle; 1161 1175 data.check = false; 1162 1176 1163 1177 /*