Re: [RFC PATCH v2 05/18] sched: add task flag for preempt IRQ tracking
From: Josh Poimboeuf <hidden>
Date: 2016-06-23 18:31:37
Also in:
linux-s390, lkml
From: Josh Poimboeuf <hidden>
Date: 2016-06-23 18:31:37
Also in:
linux-s390, lkml
On Thu, Jun 23, 2016 at 09:35:29AM -0700, Andy Lutomirski wrote:
quoted
So which is the least-bad option? To summarize: 1) task flag(s) for preemption and page faults 2) turn pt_regs into a stack frame 3) annotate all calls from entry code in a table 4) encode rbp on entry They all have their issues, though I'm partial to #2. Any more hare-brained ideas? :-)I'll try to take a closer look at #2 and see just how much I dislike all the stack frame munging.
Ok.
Also, in principle, it's only the sleeping calls and the calls that make it into real (non-entry) kernel code that really want to be unwindable through this mechanism.
Yeah, that's true. We could modify options 2 or 3 to be less absolute. Though I think that makes them more prone to future breakage.
FWIW, I don't care that much about preserving gdb's partial ability to unwind through pt_regs, especially because gdb really ought to be able to use DWARF, too.
Hm, that's a good point. I really don't know if there are any other external tools out there that would care. Maybe we could try option 4 and then see if anybody complains. -- Josh