From: "Edgecombe, Rick P" <rick.p.edgecombe@intel.com>
To: "Annapurve, Vishal" <vannapurve@google.com>
Cc: "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
"linux-coco@lists.linux.dev" <linux-coco@lists.linux.dev>,
"Huang, Kai" <kai.huang@intel.com>,
"Hansen, Dave" <dave.hansen@intel.com>,
"Zhao, Yan Y" <yan.y.zhao@intel.com>,
"tony.lindgren@linux.intel.com" <tony.lindgren@linux.intel.com>,
"Wu, Binbin" <binbin.wu@intel.com>,
"kas@kernel.org" <kas@kernel.org>,
"seanjc@google.com" <seanjc@google.com>,
"mingo@redhat.com" <mingo@redhat.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"pbonzini@redhat.com" <pbonzini@redhat.com>,
"nik.borisov@suse.com" <nik.borisov@suse.com>,
"linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>,
"hongyu.ning@linux.intel.com" <hongyu.ning@linux.intel.com>,
"hpa@zytor.com" <hpa@zytor.com>,
"tglx@kernel.org" <tglx@kernel.org>,
"Mehta, Sohil" <sohil.mehta@intel.com>,
"Gao, Chao" <chao.gao@intel.com>, "bp@alien8.de" <bp@alien8.de>,
"binbin.wu@linux.intel.com" <binbin.wu@linux.intel.com>,
"x86@kernel.org" <x86@kernel.org>
Subject: Re: [PATCH v9 07/11] x86/tdx: Add APIs to support Dynamic PAMT ops from KVM's fault path
Date: Fri, 28 Aug 2026 22:40:42 +0000 [thread overview]
Message-ID: <74bc9f2695959f335f2f502ded1ae7c944fae13a.camel@intel.com> (raw)
In-Reply-To: <CAGtprH8XJ+SbxQLTowch3DR6N1NSMUKyVnGf0hv5N+iKWT3q7A@mail.gmail.com>
On Fri, 2026-08-28 at 15:18 -0700, Vishal Annapurve wrote:
> > +
> > +static int alloc_pamt_array(struct page **pamt_pages, struct tdx_pamt_cache
> > *cache)
> > {
> > int i, j;
> >
> > for (i = 0; i < TDX_DPAMT_ENTRY_PAGE_CNT; i++) {
> > - pamt_pages[i] = alloc_page(GFP_KERNEL_ACCOUNT);
> > + pamt_pages[i] = alloc_dpamt_page(cache);
> > if (!pamt_pages[i])
> > goto err;
> > }
>
> If the alloc_dpamt_page() was able to allocate a single page (not
> two), should the partial allocation in the "err" handling return the
> allocated page back to the cache?
I think no? In the case of the cache not having sufficient pages, it is a bug.
And if things go wrong, I don't see a risk of big security issue. So optimizing
for more efficiently handling bug doesn't seem worth it.
>
> We observed similar failures internally with a slightly customized
> setup which had retries for pamt cache allocations in the fault path
> due to SEMCALL failures with older TDX module functionality.
The best course of action is of course to fix the TDX module bug. I assume this
already happened. This is the default upstream approach for that kind of thing
across both subsystems. But it sounds like this case is even more special,
because handling the specific bug would involve other code that is missing.
That said, this code can definitely grow in the future if we seem some user
value for something. But can we please just call this basic version good enough,
and build on it later?
next prev parent reply other threads:[~2026-08-28 22:40 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-06 2:08 [PATCH v9 00/11] Dynamic PAMT Rick Edgecombe
2026-08-06 2:08 ` [PATCH v9 01/11] x86/virt/tdx: Simplify PAMT layout calculation Rick Edgecombe
2026-08-06 20:58 ` Dave Hansen
2026-08-28 19:28 ` Vishal Annapurve
2026-08-06 2:08 ` [PATCH v9 02/11] x86/virt/tdx: Allocate page bitmap for Dynamic PAMT Rick Edgecombe
2026-08-06 20:58 ` Dave Hansen
2026-08-28 19:31 ` Vishal Annapurve
2026-08-06 2:08 ` [PATCH v9 03/11] x86/virt/tdx: Add tdx_alloc/free_control_page() helpers Rick Edgecombe
2026-08-06 17:17 ` Dave Hansen
2026-08-06 17:20 ` Dave Hansen
2026-08-06 22:22 ` Edgecombe, Rick P
2026-08-06 22:42 ` Dave Hansen
2026-08-28 19:50 ` Vishal Annapurve
2026-08-28 22:23 ` Edgecombe, Rick P
2026-08-28 22:54 ` Vishal Annapurve
2026-08-06 2:08 ` [PATCH v9 04/11] x86/virt/tdx: Allocate refcounts for Dynamic PAMT memory Rick Edgecombe
2026-08-06 20:56 ` Dave Hansen
2026-08-06 21:56 ` Edgecombe, Rick P
[not found] ` <20260806022158.586A11F000E9@smtp.kernel.org>
2026-08-06 22:02 ` Edgecombe, Rick P
2026-08-06 22:09 ` Dave Hansen
2026-08-28 20:59 ` Vishal Annapurve
2026-08-06 2:08 ` [PATCH v9 05/11] x86/virt/tdx: Handle multiple callers in tdx_pamt_get/put() Rick Edgecombe
2026-08-06 22:17 ` Dave Hansen
2026-08-28 21:49 ` Vishal Annapurve
2026-08-06 2:08 ` [PATCH v9 06/11] KVM: TDX: Allocate PAMT memory for TD and vCPU control structures Rick Edgecombe
2026-08-06 22:19 ` Dave Hansen
2026-08-28 21:50 ` Vishal Annapurve
2026-08-06 2:08 ` [PATCH v9 07/11] x86/tdx: Add APIs to support Dynamic PAMT ops from KVM's fault path Rick Edgecombe
2026-08-06 22:19 ` Dave Hansen
2026-08-28 22:18 ` Vishal Annapurve
2026-08-28 22:40 ` Edgecombe, Rick P [this message]
2026-08-28 22:52 ` Vishal Annapurve
2026-08-06 2:08 ` [PATCH v9 08/11] KVM: TDX: Get/put PAMT pages when (un)mapping private memory Rick Edgecombe
2026-08-06 23:48 ` Dave Hansen
2026-08-28 22:34 ` Vishal Annapurve
2026-08-06 2:08 ` [PATCH v9 09/11] x86/virt/tdx: Enable Dynamic PAMT Rick Edgecombe
2026-08-10 13:57 ` Dave Hansen
2026-08-10 21:33 ` Edgecombe, Rick P
2026-08-28 22:37 ` Vishal Annapurve
2026-08-06 2:08 ` [PATCH v9 10/11] Documentation/x86: Add documentation for TDX's " Rick Edgecombe
2026-08-10 14:08 ` Dave Hansen
2026-08-06 2:08 ` [PATCH v9 11/11] x86/virt/tdx: Optimize tdx_pamt_get/put() Rick Edgecombe
2026-08-10 14:10 ` Dave Hansen
2026-08-28 23:00 ` Vishal Annapurve
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=74bc9f2695959f335f2f502ded1ae7c944fae13a.camel@intel.com \
--to=rick.p.edgecombe@intel.com \
--cc=binbin.wu@intel.com \
--cc=binbin.wu@linux.intel.com \
--cc=bp@alien8.de \
--cc=chao.gao@intel.com \
--cc=dave.hansen@intel.com \
--cc=hongyu.ning@linux.intel.com \
--cc=hpa@zytor.com \
--cc=kai.huang@intel.com \
--cc=kas@kernel.org \
--cc=kvm@vger.kernel.org \
--cc=linux-coco@lists.linux.dev \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=nik.borisov@suse.com \
--cc=pbonzini@redhat.com \
--cc=seanjc@google.com \
--cc=sohil.mehta@intel.com \
--cc=tglx@kernel.org \
--cc=tony.lindgren@linux.intel.com \
--cc=vannapurve@google.com \
--cc=x86@kernel.org \
--cc=yan.y.zhao@intel.com \
/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
all inboxes | Powered by JetHome®