Re: [PATCH] lkdtm: avoid printk() in recursive_loop()

From: Kees Cook
Date: Thu Oct 07 2021 - 13:00:17 EST


On Thu, 7 Oct 2021 10:12:35 +0200, Ard Biesheuvel wrote:
> The recursive_loop() function is intended as a diagnostic to ensure that
> exhausting the stack is caught and mitigated. Currently, it uses
> pr_info() to ensure that the function has side effects that the compiler
> cannot simply optimize away, so that the stack footprint does not get
> reduced inadvertently.
>
> The typical mitigation for stack overflow is to kill the task, and this
> overflow may occur inside the call to pr_info(), which means it could be
> holding the console lock when this happens. This means that the console
> lock is never going to be released again, preventing the diagnostic
> prints related to the stack overflow handling from being visible on the
> console.
>
> [...]

Applied to for-next/lkdtm, thanks!

[1/1] lkdtm: avoid printk() in recursive_loop()
https://git.kernel.org/kees/c/700fa7d22233

--
Kees Cook