[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20201111203941.GP2628@hirez.programming.kicks-ass.net>
Date: Wed, 11 Nov 2020 21:39:41 +0100
From: Peter Zijlstra <peterz@...radead.org>
To: Andrew Cooper <andrew.cooper3@...rix.com>
Cc: Josh Poimboeuf <jpoimboe@...hat.com>,
Shinichiro Kawasaki <shinichiro.kawasaki@....com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Nicholas Piggin <npiggin@...il.com>,
Damien Le Moal <Damien.LeMoal@....com>, jgross@...e.com,
x86@...nel.org
Subject: Re: WARNING: can't access registers at asm_common_interrupt
On Wed, Nov 11, 2020 at 08:25:36PM +0000, Andrew Cooper wrote:
> > Right, it makes objtool's job a _little_ easier, since it already knows
> > how to read alternatives. But it still has to learn to deal with the
> > conflicting stack layouts.
>
> I suppose the needed abstraction is "these blocks will start and end
> with the same stack layout", while allowing the internals to diverge.
It's a little more complicated than that due to the fact that there is
only a single ORC table.
So something like:
alt0 alt1
0x00 push 0x00 nop
0x01 nop 0x01 push
is impossible to correctly unwind.
Powered by blists - more mailing lists