linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jarkko Sakkinen <jarkko@kernel.org>
To: Thomas Gleixner <tglx@linutronix.de>,
	Sean Christopherson <seanjc@google.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	Al Viro <viro@zeniv.linux.org.uk>,
	Dan Williams <dan.j.williams@intel.com>,
	Borislav Petkov <bp@alien8.de>,
	LKML <linux-kernel@vger.kernel.org>,
	the arch/x86 maintainers <x86@kernel.org>,
	Dave Hansen <dave.hansen@linux.intel.com>
Subject: Re: [patch 01/10] x86/fpu/signal: Clarify exception handling in restore_fpregs_from_user()
Date: Fri, 03 Sep 2021 09:05:51 +0300	[thread overview]
Message-ID: <6781e62221ecd5a61ef4982c191cbf9ea97f59ac.camel@kernel.org> (raw)
In-Reply-To: <23bd92e159dba35f74fc3d3a8186dfbb3ff84f66.camel@kernel.org>

On Fri, 2021-09-03 at 09:00 +0300, Jarkko Sakkinen wrote:
> On Thu, 2021-09-02 at 16:08 +0200, Thomas Gleixner wrote:
> > On Thu, Sep 02 2021 at 16:08, Jarkko Sakkinen wrote:
> > > On Wed, 2021-09-01 at 16:47 +0000, Sean Christopherson wrote:
> > > > As for SGX consuming the trap number in general, it's correct.  For non-KVM usage,
> > > > it's nice to have but not strictly necessary.  Any fault except #PF on ENCLS is
> > > > guaranteed to be a kernel or hardware bug; SGX uses the trap number to WARN on a
> > > > !#PF exception, e.g. on #GP or #UD.  Not having the trap number would mean losing
> > > > those sanity checks, which have been useful in the past.
> > > 
> > > AFAIK, we do not consider #UD as a bug. Agree with the conclusion that SGX
> > > should never #MC, I just did not get this part. #UD is something that is
> > > useful for SGX run-time.
> > 
> > I understood that storing the trap number is useful. I was just
> > questioning the #MC angle. I.e. pretending that the #MC caused by ENCLS
> > is recoverable.
> 
> Absolutely not. 
> 
> I mixed up #UD caused by CPU executing inside enclave and ENCLS causing
> #UD. Sorry about that.
> 
> Because of KVM we have to catch #PF's, given that a new power cycle
> in the host resets the state of SGX protected memory in the guest.

.. catching #PF's makes also quite a lot of sense for the bare
metal case because otherwise we would have to have hook for
power state change that would have invalidate all enclaves
running in the system.

/Jarkko

  reply	other threads:[~2021-09-03  6:05 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-30 16:27 [patch 00/10] x86/fpu: Clean up error handling in sigframe related code Thomas Gleixner
2021-08-30 16:27 ` [patch 01/10] x86/fpu/signal: Clarify exception handling in restore_fpregs_from_user() Thomas Gleixner
2021-08-30 19:33   ` Borislav Petkov
2021-08-30 20:07     ` Borislav Petkov
2021-08-30 20:09     ` Thomas Gleixner
2021-08-30 21:02       ` Al Viro
2021-08-30 21:26         ` Linus Torvalds
2021-08-30 21:30           ` Al Viro
2021-08-30 22:00             ` Linus Torvalds
2021-08-30 22:12               ` Thomas Gleixner
2021-08-30 22:26                 ` Linus Torvalds
2021-08-31  0:06               ` Al Viro
2021-08-31  0:34               ` Thomas Gleixner
2021-08-31  7:39                 ` Borislav Petkov
2021-08-31 18:39                   ` Luck, Tony
2021-09-01  7:27                     ` Borislav Petkov
2021-08-30 22:01           ` Thomas Gleixner
2021-08-30 22:11             ` Linus Torvalds
2021-09-01 12:00           ` Thomas Gleixner
2021-09-01 15:52             ` Thomas Gleixner
2021-09-01 16:47               ` Sean Christopherson
2021-09-01 19:22                 ` Thomas Gleixner
2021-09-01 19:22                 ` Dave Hansen
2021-09-02 13:08                 ` Jarkko Sakkinen
2021-09-02 14:08                   ` Thomas Gleixner
2021-09-03  6:00                     ` Jarkko Sakkinen
2021-09-03  6:05                       ` Jarkko Sakkinen [this message]
2021-08-30 16:27 ` [patch 02/10] x86/fpu/signal: Move header zeroing out of xsave_to_user_sigframe() Thomas Gleixner
2021-08-30 16:27 ` [patch 03/10] x86/fpu/signal: Move xstate clearing out of copy_fpregs_to_sigframe() Thomas Gleixner
2021-08-30 16:27 ` [patch 04/10] x86/fpu/signal: Change return type of copy_fpstate_to_sigframe() to boolean Thomas Gleixner
2021-08-30 16:27 ` [patch 05/10] x86/fpu/signal: Change return type of copy_fpregs_to_sigframe() helpers " Thomas Gleixner
2021-08-30 16:27 ` [patch 06/10] x86/signal: Change return type of restore_sigcontext() " Thomas Gleixner
2021-08-30 16:27 ` [patch 07/10] x86/fpu/signal: Change return type of fpu__restore_sig() " Thomas Gleixner
2021-08-30 16:27 ` [patch 08/10] x86/fpu/signal: Change return type of __fpu_restore_sig() " Thomas Gleixner
2021-08-30 16:27 ` [patch 09/10] x86/fpu/signal: Change return code of check_xstate_in_sigframe() " Thomas Gleixner
2021-08-30 16:27 ` [patch 10/10] x86/fpu/signal: Change return code of restore_fpregs_from_user() " Thomas Gleixner
2021-08-30 17:39 ` [patch 00/10] x86/fpu: Clean up error handling in sigframe related code Linus Torvalds
2021-08-30 18:51   ` Thomas Gleixner

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=6781e62221ecd5a61ef4982c191cbf9ea97f59ac.camel@kernel.org \
    --to=jarkko@kernel.org \
    --cc=bp@alien8.de \
    --cc=dan.j.williams@intel.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=seanjc@google.com \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    --cc=viro@zeniv.linux.org.uk \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).