]> www.infradead.org Git - users/jedix/linux-maple.git/commit
sched,livepatch: Untangle cond_resched() and live-patching
authorPeter Zijlstra <peterz@infradead.org>
Fri, 9 May 2025 11:36:59 +0000 (13:36 +0200)
committerPeter Zijlstra <peterz@infradead.org>
Wed, 14 May 2025 11:16:24 +0000 (13:16 +0200)
commit676e8cf70cb0533e1118e29898c9a9c33ae3a10f
treeea7646aca88d44c671755b5d205984ffad12a783
parentb7ca5743a2604156d6083b88cefacef983f3a3a6
sched,livepatch: Untangle cond_resched() and live-patching

With the goal of deprecating / removing VOLUNTARY preempt, live-patch
needs to stop relying on cond_resched() to make forward progress.

Instead, rely on schedule() with TASK_FREEZABLE set. Just like
live-patching, the freezer needs to be able to stop tasks in a safe /
known state.

[bigeasy: use likely() in __klp_sched_try_switch() and update comments]

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Petr Mladek <pmladek@suse.com>
Tested-by: Petr Mladek <pmladek@suse.com>
Tested-by: Miroslav Benes <mbenes@suse.cz>
Acked-by: Miroslav Benes <mbenes@suse.cz>
Acked-by: Josh Poimboeuf <jpoimboe@kernel.org>
Link: https://lore.kernel.org/r/20250509113659.wkP_HJ5z@linutronix.de
include/linux/livepatch_sched.h
include/linux/sched.h
kernel/livepatch/transition.c
kernel/sched/core.c