diff options
Diffstat (limited to 'kernel/livepatch/transition.c')
-rw-r--r-- | kernel/livepatch/transition.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/kernel/livepatch/transition.c b/kernel/livepatch/transition.c index 0a3889c4f617..cb85dae09ce5 100644 --- a/kernel/livepatch/transition.c +++ b/kernel/livepatch/transition.c | |||
@@ -306,6 +306,13 @@ static bool klp_try_switch_task(struct task_struct *task) | |||
306 | return true; | 306 | return true; |
307 | 307 | ||
308 | /* | 308 | /* |
309 | * For arches which don't have reliable stack traces, we have to rely | ||
310 | * on other methods (e.g., switching tasks at kernel exit). | ||
311 | */ | ||
312 | if (!klp_have_reliable_stack()) | ||
313 | return false; | ||
314 | |||
315 | /* | ||
309 | * Now try to check the stack for any to-be-patched or to-be-unpatched | 316 | * Now try to check the stack for any to-be-patched or to-be-unpatched |
310 | * functions. If all goes well, switch the task to the target patch | 317 | * functions. If all goes well, switch the task to the target patch |
311 | * state. | 318 | * state. |