linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sean Christopherson <seanjc@google.com>
To: Elena Reshetova <elena.reshetova@intel.com>
Cc: "jarkko@kernel.org" <jarkko@kernel.org>,
	Kai Huang <kai.huang@intel.com>,
	 Dave Hansen <dave.hansen@intel.com>,
	 "linux-sgx@vger.kernel.org" <linux-sgx@vger.kernel.org>,
	 Vincent R Scarlata <vincent.r.scarlata@intel.com>,
	"x86@kernel.org" <x86@kernel.org>,
	 Vishal Annapurve <vannapurve@google.com>,
	Chong Cai <chongc@google.com>,
	 Asit K Mallick <asit.k.mallick@intel.com>,
	Erdem Aktas <erdemaktas@google.com>,
	 "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"bondarn@google.com" <bondarn@google.com>,
	 "dionnaglaze@google.com" <dionnaglaze@google.com>,
	Scott Raynor <scott.raynor@intel.com>
Subject: Re: [PATCH v3 2/2] x86/sgx: Implement EUPDATESVN and opportunistically call it during first EPC page alloc
Date: Thu, 24 Apr 2025 10:19:47 -0700	[thread overview]
Message-ID: <aApgOqHvsYNd-yht@google.com> (raw)
In-Reply-To: <DM8PR11MB5750D373790399E324B98A18E7852@DM8PR11MB5750.namprd11.prod.outlook.com>

On Thu, Apr 24, 2025, Elena Reshetova wrote:
> > On Thu, Apr 24, 2025, Elena Reshetova wrote:
> > +void sgx_dec_usage_count(void)
> > +{
> > +	if (atomic_dec_return(&sgx_usage_count))
> > +		return;
> > +
> > +	guard(mutex)(&sgx_svn_lock);
> > +
> > +	if (atomic_read(&sgx_usage_count))
> > +		return;
> > +
> > +	sgx_update_svn();
> 
> Why do we want to try to execute this on release also?  I would think that
> doing this in sgx_inc_usage_count() is enough.

I assume an actual SVN update takes some amount of time?

If that's correct, then doing the work upon destroying the last enclave is desirable,
as it's less likely to introduce delay that negatively affects userspace.  Userspace
generally won't care about a 10us delay when destroying a process, but a 10us delay
to launch an enclave could be quite problematic, e.g. in the TDX use case where
enclaves may be launched on-demand in response to a guest attestation request.

If the update time is tiny, then I agree that hooking release would probably do
more harm than good.

  reply	other threads:[~2025-04-24 17:19 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-15 11:51 [PATCH v3 0/2] Enable automatic SVN updates for SGX enclaves Elena Reshetova
2025-04-15 11:51 ` [PATCH v3 1/2] x86/sgx: Use sgx_nr_used_pages for EPC page count instead of sgx_nr_free_pages Elena Reshetova
2025-04-16 10:33   ` Huang, Kai
2025-04-16 11:50     ` Reshetova, Elena
2025-04-16 18:50   ` Jarkko Sakkinen
2025-04-16 19:12     ` Jarkko Sakkinen
2025-04-15 11:51 ` [PATCH v3 2/2] x86/sgx: Implement EUPDATESVN and opportunistically call it during first EPC page alloc Elena Reshetova
2025-04-16  7:36   ` Huang, Kai
2025-04-16 12:06     ` Reshetova, Elena
2025-04-17 11:12       ` Huang, Kai
2025-04-18 14:18         ` Sean Christopherson
2025-04-22  6:58           ` Huang, Kai
2025-04-16 19:01   ` Jarkko Sakkinen
2025-04-18 14:55   ` Sean Christopherson
2025-04-22  7:23     ` Huang, Kai
2025-04-22 13:54       ` Sean Christopherson
2025-04-22 21:57         ` Huang, Kai
2025-04-24  8:34         ` Reshetova, Elena
2025-04-24 13:42           ` Sean Christopherson
2025-04-24 14:16             ` Reshetova, Elena
2025-04-24 17:19               ` Sean Christopherson [this message]
2025-04-25  6:52                 ` Reshetova, Elena
2025-04-25 17:40                   ` Sean Christopherson
2025-04-25 18:04                     ` Dave Hansen
2025-04-25 19:29                       ` Sean Christopherson
2025-04-25 20:11                         ` Dave Hansen
2025-04-25 21:04                           ` Sean Christopherson
2025-04-25 21:23                             ` Dave Hansen
2025-04-25 21:58                               ` Sean Christopherson
2025-04-25 22:07                                 ` Dave Hansen
2025-04-29 11:44                                   ` Reshetova, Elena
2025-04-29 14:46                                     ` Dave Hansen
2025-04-30  6:53                                       ` Reshetova, Elena
2025-04-30 15:16                                         ` Jarkko Sakkinen
2025-05-02  7:22                                           ` Reshetova, Elena
2025-05-02  8:56                                             ` Jarkko Sakkinen
2025-05-06 20:32                                               ` Nataliia Bondarevska
2025-04-28  6:25                     ` Reshetova, Elena

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=aApgOqHvsYNd-yht@google.com \
    --to=seanjc@google.com \
    --cc=asit.k.mallick@intel.com \
    --cc=bondarn@google.com \
    --cc=chongc@google.com \
    --cc=dave.hansen@intel.com \
    --cc=dionnaglaze@google.com \
    --cc=elena.reshetova@intel.com \
    --cc=erdemaktas@google.com \
    --cc=jarkko@kernel.org \
    --cc=kai.huang@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sgx@vger.kernel.org \
    --cc=scott.raynor@intel.com \
    --cc=vannapurve@google.com \
    --cc=vincent.r.scarlata@intel.com \
    --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).