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

From: Ard Biesheuvel
Date: Thu Dec 16 2021 - 06:16:37 EST


On Thu, 7 Oct 2021 at 18:59, Kees Cook <keescook@xxxxxxxxxxxx> wrote:
>
> 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
>

Ping?