Messages in this thread | | | Date | Wed, 3 Apr 2019 21:42:41 +0200 (CEST) | From | Thomas Gleixner <> | Subject | Re: [patch 15/14] x86/dumpstack/64: Speedup in_exception_stack() |
| |
On Wed, 3 Apr 2019, Thomas Gleixner wrote: > On Tue, 2 Apr 2019, Andy Lutomirski wrote: > > > On Apr 2, 2019, at 1:29 PM, Thomas Gleixner <tglx@linutronix.de> wrote: > > >>> How about a much better fix: make the DB stack be the same size as all > > >>> the others and just have 4 of them (DB0, DB1, DB2, and DB3. After all, > > >>> overflowing from one debug stack into another is just as much of a bug as > > >>> overflowing into a different IST stack. > > >> > > >> That makes sense. > > > > > > Except that we just have two not four. > > > > > > It needs some tweaking of the ist_shift stuff in entry_64.S but that's not > > > rocket science. Famous last words.... > > > > > > > The ist_shift mess should probably be in C, but that’s a big can of > > worms. That being said, why do we have it at all? Once upon a time, we’d > > do ICEBP from user mode (or a legit breakpoint), then send a signal and > > hit a data breakpoint, and we’d recurse. But we don’t run user debug > > handlers on the IST stack at all anymore. > > > > Maybe we can convince ourselves it’s safe? > > Maybe. Need to think about it for a while.
What about kprobes. It has nasty reentrancy stuff as well...
Thanks,
tglx | |