Re: [patch V9 10/39] x86/entry: Provide helpers for execute on irqstack

From: Qian Cai
Date: Sun Jun 07 2020 - 14:27:57 EST


On Sun, Jun 07, 2020 at 01:59:53PM +0200, Thomas Gleixner wrote:
>
> CC:+ Alexander
>
> Qian Cai <cai@xxxxxx> writes:
> > On Fri, Jun 05, 2020 at 07:36:22PM +0200, Peter Zijlstra wrote:
> >> > [ 9371.959858] asm_call_on_stack+0x12/0x20
> >> > asm_call_on_stack at arch/x86/entry/entry_64.S:710
> >
> > This is one piece of call from the warning call traces that introduced
> > by the patch which leads me to revert the commit in the first place. It
> > may or may not be the real culprit, but just wanted to highlight it in
> > case.
>
> Oh well. The warning is a storage check in the stack depot code,
> i.e. stack depot ran out of storage space.
>
> Even if that commit causes stack traces to be larger that revert does
> not make any sense at all and handwaving about recursions does not help
> either. If that commit introduced a recursion then that would have worse
> effects than triggering this warning.
>
> The difference between the interrupt stack switching introduced by this
> commit is that it generates another entry in the stack trace compared to
> the state before it, which obviously has an effect on the storage
> requirements in the stack depot.

Sorry, not meant to propose the reverting as a final solution to the
problem, but rather a data point. My problem is that I knew so little
about this kernel area, so I was to throw out something where I saw
something similiar while working in other areas over the years. Of
course, my "random" tips could be wrong.

The effect is quite bad for our CI because it will disable lockdep in
the middle of the tests which could miss regression bugs lockdep might
find later. Anyway, I am not motivate enough to measure how much "an
effect" is yet due to this patchset. I'll trim our .config and tests to
hopefully not running out of the storage this early.