From: Kees Cook <keescook@chromium.org>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Nick Desaulniers <ndesaulniers@google.com>,
Bill Wendling <morbo@google.com>, Juergen Gross <jgross@suse.com>,
"Srivatsa S. Bhat (VMware)" <srivatsa@csail.mit.edu>,
Alexey Makhalov <amakhalov@vmware.com>,
VMware PV-Drivers Reviewers <pv-drivers@vmware.com>,
Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
Dave Hansen <dave.hansen@linux.intel.com>,
"maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)"
<x86@kernel.org>, "H. Peter Anvin" <hpa@zytor.com>,
virtualization@lists.linux-foundation.org,
LKML <linux-kernel@vger.kernel.org>,
Nathan Chancellor <nathan@kernel.org>,
clang-built-linux <llvm@lists.linux.dev>,
linux-hardening@vger.kernel.org
Subject: Re: [PATCH 2/2] x86/paravirt: add extra clobbers with ZERO_CALL_USED_REGS enabled
Date: Wed, 7 Sep 2022 16:10:43 -0700 [thread overview]
Message-ID: <202209071609.BE5BF18D6@keescook> (raw)
In-Reply-To: <YxhbO1YZPMHutw48@hirez.programming.kicks-ass.net>
On Wed, Sep 07, 2022 at 10:50:03AM +0200, Peter Zijlstra wrote:
> On Tue, Sep 06, 2022 at 11:00:07PM -0700, Nick Desaulniers wrote:
> > On Sun, Sep 4, 2022 at 11:02 PM Bill Wendling <morbo@google.com> wrote:
> > >
> > > On Sat, Sep 3, 2022 at 12:18 AM Kees Cook <keescook@chromium.org> wrote:
> > > >
> > > > On Fri, Sep 02, 2022 at 09:37:50PM +0000, Bill Wendling wrote:
> > > > > [...]
> > > > > callq *pv_ops+536(%rip)
> > > >
> > > > Do you know which pv_ops function is this? I can't figure out where
> > > > pte_offset_kernel() gets converted into a pv_ops call....
> > > >
> > > This one is _paravirt_ident_64, I believe. I think that the original
> > > issue Nathan was seeing was with another seemingly innocuous function.
> >
> > _paravirt_ident_64 is marked noinstr, which makes me suspect that it
> > really needs to not be touched at all by the compiler for
> > these...special features.
>
> My source tree sayeth:
>
> u64 notrace _paravirt_ident_64(u64 x)
I don't see noinstr either. But it seems a reasonable thing to do?
Bill, does fixing up the noinstr macro and adding it here fix the
problem?
--
Kees Cook
WARNING: multiple messages have this Message-ID (diff)
From: Kees Cook <keescook@chromium.org>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Juergen Gross <jgross@suse.com>,
"maintainer:X86 ARCHITECTURE \(32-BIT AND 64-BIT\)"
<x86@kernel.org>, "H. Peter Anvin" <hpa@zytor.com>,
VMware PV-Drivers Reviewers <pv-drivers@vmware.com>,
Dave Hansen <dave.hansen@linux.intel.com>,
Nick Desaulniers <ndesaulniers@google.com>,
LKML <linux-kernel@vger.kernel.org>,
virtualization@lists.linux-foundation.org,
Nathan Chancellor <nathan@kernel.org>,
Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
Bill Wendling <morbo@google.com>,
clang-built-linux <llvm@lists.linux.dev>,
Alexey Makhalov <amakhalov@vmware.com>,
Thomas Gleixner <tglx@linutronix.de>,
linux-hardening@vger.kernel.org
Subject: Re: [PATCH 2/2] x86/paravirt: add extra clobbers with ZERO_CALL_USED_REGS enabled
Date: Wed, 7 Sep 2022 16:10:43 -0700 [thread overview]
Message-ID: <202209071609.BE5BF18D6@keescook> (raw)
In-Reply-To: <YxhbO1YZPMHutw48@hirez.programming.kicks-ass.net>
On Wed, Sep 07, 2022 at 10:50:03AM +0200, Peter Zijlstra wrote:
> On Tue, Sep 06, 2022 at 11:00:07PM -0700, Nick Desaulniers wrote:
> > On Sun, Sep 4, 2022 at 11:02 PM Bill Wendling <morbo@google.com> wrote:
> > >
> > > On Sat, Sep 3, 2022 at 12:18 AM Kees Cook <keescook@chromium.org> wrote:
> > > >
> > > > On Fri, Sep 02, 2022 at 09:37:50PM +0000, Bill Wendling wrote:
> > > > > [...]
> > > > > callq *pv_ops+536(%rip)
> > > >
> > > > Do you know which pv_ops function is this? I can't figure out where
> > > > pte_offset_kernel() gets converted into a pv_ops call....
> > > >
> > > This one is _paravirt_ident_64, I believe. I think that the original
> > > issue Nathan was seeing was with another seemingly innocuous function.
> >
> > _paravirt_ident_64 is marked noinstr, which makes me suspect that it
> > really needs to not be touched at all by the compiler for
> > these...special features.
>
> My source tree sayeth:
>
> u64 notrace _paravirt_ident_64(u64 x)
I don't see noinstr either. But it seems a reasonable thing to do?
Bill, does fixing up the noinstr macro and adding it here fix the
problem?
--
Kees Cook
_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization
next prev parent reply other threads:[~2022-09-07 23:10 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-02 21:37 [PATCH 0/2] fix clobbers list with ZERO_CALL_USED_REGS feature Bill Wendling
2022-09-02 21:37 ` [PATCH 1/2] x86/paravirt: clean up typos and grammaros Bill Wendling
2022-09-03 4:28 ` Borislav Petkov
2022-09-03 4:28 ` Borislav Petkov
2022-09-04 2:13 ` Bill Wendling
2022-09-02 21:37 ` [PATCH 2/2] x86/paravirt: add extra clobbers with ZERO_CALL_USED_REGS enabled Bill Wendling
2022-09-03 7:18 ` Kees Cook
2022-09-03 7:18 ` Kees Cook
2022-09-05 6:02 ` Bill Wendling
2022-09-07 6:00 ` Nick Desaulniers
2022-09-07 6:00 ` Nick Desaulniers via Virtualization
2022-09-07 8:50 ` Peter Zijlstra
2022-09-07 8:50 ` Peter Zijlstra
2022-09-07 23:10 ` Kees Cook [this message]
2022-09-07 23:10 ` Kees Cook
2022-09-08 21:16 ` Bill Wendling
2022-09-14 14:40 ` Nathan Chancellor
2022-09-14 15:49 ` Bill Wendling
[not found] ` <20220914162149.71271-1-morbo@google.com>
2022-09-15 6:59 ` [PATCH v2 1/1] x86/paravirt: write paravirt ident function in assembly Juergen Gross
2022-09-15 6:59 ` Juergen Gross via Virtualization
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202209071609.BE5BF18D6@keescook \
--to=keescook@chromium.org \
--cc=amakhalov@vmware.com \
--cc=bp@alien8.de \
--cc=dave.hansen@linux.intel.com \
--cc=hpa@zytor.com \
--cc=jgross@suse.com \
--cc=linux-hardening@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=llvm@lists.linux.dev \
--cc=mingo@redhat.com \
--cc=morbo@google.com \
--cc=nathan@kernel.org \
--cc=ndesaulniers@google.com \
--cc=peterz@infradead.org \
--cc=pv-drivers@vmware.com \
--cc=srivatsa@csail.mit.edu \
--cc=tglx@linutronix.de \
--cc=virtualization@lists.linux-foundation.org \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.