Messages in this thread | | | Date | Tue, 7 Mar 2017 08:32:03 -0600 | From | Josh Poimboeuf <> | Subject | Re: stack frame unwindind KASAN errors |
| |
On Tue, Mar 07, 2017 at 10:04:11AM +0800, Daniel J Blueman wrote: > On 7 March 2017 at 00:40, Josh Poimboeuf <jpoimboe@redhat.com> wrote: > > On Mon, Mar 06, 2017 at 02:52:01PM +0800, Daniel J Blueman wrote: > >> Thanks Josh! > >> > >> With this patch, the KASAN warning still occurs, but at > >> unwind_get_return_address+0x1d3/0x130 instead; the rest of the trace > >> is identical. > >> > >> (gdb) list *(unwind_get_return_address+0x1d3) > >> 0xffffffff8112bca3 is in unwind_get_return_address > >> (./include/linux/compiler.h:243). > >> 238 }) > >> 239 > >> 240 static __always_inline > >> 241 void __read_once_size(const volatile void *p, void *res, int size) > >> 242 { > >> 243 __READ_ONCE_SIZE; > > > > Looking deeper, I have an idea about what's going on: > > > > https://quora.org/dmesg.txt > > > > Each of the warnings seems to show an interrupt happening during an EFI > > call. I'm guessing EFI modified the frame pointer, at least > > temporarily, which confused the unwinder :-( > > > > Would it be possible for you to test again with 4.10? It has some > > additional unwinder output which should hopefully confirm my suspicions. > > Very good; I don't see the KASAN warnings with 4.10 in the same environment.
To be honest, that's not the result I was expecting :-)
It would be nice to know what fixed it. Any chance you could bisect?
-- Josh
| |