[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200820034636.tl4nq5aiitpfvx62@treble>
Date: Wed, 19 Aug 2020 22:46:36 -0500
From: Josh Poimboeuf <jpoimboe@...hat.com>
To: Andy Lutomirski <luto@...nel.org>
Cc: Peter Zijlstra <peterz@...radead.org>, Kyle Huey <me@...ehuey.com>,
Thomas Gleixner <tglx@...utronix.de>,
Alexandre Chartre <alexandre.chartre@...cle.com>,
Robert O'Callahan <rocallahan@...il.com>,
LKML <linux-kernel@...r.kernel.org>,
"maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" <x86@...nel.org>,
"Paul E. McKenney" <paulmck@...nel.org>,
Frederic Weisbecker <frederic@...nel.org>,
Paolo Bonzini <pbonzini@...hat.com>,
Sean Christopherson <sean.j.christopherson@...el.com>,
Masami Hiramatsu <mhiramat@...nel.org>,
Petr Mladek <pmladek@...e.com>,
Steven Rostedt <rostedt@...dmis.org>,
Joel Fernandes <joel@...lfernandes.org>,
Boris Ostrovsky <boris.ostrovsky@...cle.com>,
Juergen Gross <jgross@...e.com>,
Brian Gerst <brgerst@...il.com>,
Mathieu Desnoyers <mathieu.desnoyers@...icios.com>,
Will Deacon <will@...nel.org>
Subject: Re: [REGRESSION 5.8] x86/entry: DR0 break-on-write not working
On Wed, Aug 19, 2020 at 05:14:18PM -0700, Andy Lutomirski wrote:
> On Wed, Aug 19, 2020 at 3:47 PM Josh Poimboeuf <jpoimboe@...hat.com> wrote:
> > What amazes me is that it successfully schedules back to the end of the
> > #DB handler finish and everything keeps working.
> >
> > Do we not have assertions in the scheduler to catch this?
>
> You almost nailed it.
>
> I'm pretty sure you have the buggy sequence of events right, but for
> the wrong reason. There's nothing wrong with scheduling when
> delivering SIGTRAP, but it's definitely wrong to blindly save and
> restore DR7 around scheduling and around ptrace invocations. Remember
> this is an entry from user mode, so it runs on the user stack.
Wow, I had no idea user #DB's run on the task stack. The scheduling
from #DB blew my mind :-) What's the purpose of that?
--
Josh
Powered by blists - more mailing lists