From: "Pratik R. Sampat" <prsampat@amd.com>
To: "Reshetova, Elena" <elena.reshetova@intel.com>,
"Edgecombe, Rick P" <rick.p.edgecombe@intel.com>,
"pbonzini@redhat.com" <pbonzini@redhat.com>,
"Duan, Zhenzhong" <zhenzhong.duan@intel.com>
Cc: "x86@kernel.org" <x86@kernel.org>,
"marcandre.lureau@redhat.com" <marcandre.lureau@redhat.com>,
"kas@kernel.org" <kas@kernel.org>,
"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"mingo@redhat.com" <mingo@redhat.com>,
"bp@alien8.de" <bp@alien8.de>,
"Qiang, Chenyi" <chenyi.qiang@intel.com>,
"tglx@kernel.org" <tglx@kernel.org>,
"hpa@zytor.com" <hpa@zytor.com>,
"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
"linux-coco@lists.linux.dev" <linux-coco@lists.linux.dev>
Subject: Re: [PATCH 2/2] x86/tdx: Accept hotplugged memory before online
Date: Wed, 8 Apr 2026 15:55:46 -0400 [thread overview]
Message-ID: <9609980e-9862-4cc6-833c-828db4fddc09@amd.com> (raw)
In-Reply-To: <IA1PR11MB949508D72B9DB570770FF8B8E75BA@IA1PR11MB9495.namprd11.prod.outlook.com>
>>
>> So I'm going to assume you agree that this procedure would not open up any
>> specific new capabilities for the host that don't exist today. And instead you
>> are just saying that the guest should have infrastructure to not double accept
>> memory in the first place.
>
> Yes, exactly this.
Thanks, I was a bit confused by that too. This clears it up.
>
>>
>> But the problem here is not that the guest losing track of the accept state
>> actually. It is that the guest relies on the host to actually zap the S-EPT
>> before re-plugging memory at the same physical address space. So the guest is
>> tracking that the memory is released correctly. Better tracking will not help.
>> It relies on host behavior to not hit a double accept.
>
> I see the problem better now. Then I think the correct behaviour is for the
> guest to keep tracking of accepted and released memory and then allow
> to double accept iff the memory that it has tracked as being accepted and
> explicitly released. This way there should not be a possibility for the host to
> misuse this for an arbitrary memory page.
>
This makes sense to me. For SNP, it is the guest that performs the pvalidate
rescind + RMP state change operation, so having this kind of tracking should
work well for all of us.
That said, adding to the unaccepted bitmap isn't entirely trivial. The bitmap
is allocated as a flexible array rather than a pointer, and changing that could
break kexec [1]. It might be worth maintaining a separate table to track
unaccepted hotplug memory instead.
[1]: https://lore.kernel.org/all/m3l6gcjmbabudtnqwv6w67t7iz2mpmbjyrpnmiq5k2iyargn5d@nyf2zzxx7yme/
Thanks,
Pratik
next prev parent reply other threads:[~2026-04-08 19:55 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-24 15:21 [PATCH 0/2] x86/tdx: Fix memory hotplug in TDX guests Marc-André Lureau
2026-03-24 15:21 ` [PATCH 1/2] x86/tdx: Handle TDG.MEM.PAGE.ACCEPT success-with-warning returns Marc-André Lureau
2026-03-24 22:02 ` Edgecombe, Rick P
2026-03-24 15:21 ` [PATCH 2/2] x86/tdx: Accept hotplugged memory before online Marc-André Lureau
2026-03-24 22:03 ` Edgecombe, Rick P
2026-03-25 10:29 ` Marc-André Lureau
2026-03-25 17:21 ` Edgecombe, Rick P
2026-03-26 18:25 ` Paolo Bonzini
2026-03-26 20:40 ` Edgecombe, Rick P
2026-03-30 12:29 ` Kiryl Shutsemau
2026-03-30 15:10 ` Pratik R. Sampat
2026-04-01 15:37 ` Edgecombe, Rick P
2026-04-01 15:49 ` Edgecombe, Rick P
2026-04-02 8:18 ` Reshetova, Elena
2026-04-02 17:06 ` Edgecombe, Rick P
2026-04-03 10:37 ` Reshetova, Elena
2026-04-03 19:41 ` Edgecombe, Rick P
2026-04-08 8:22 ` Reshetova, Elena
2026-04-08 19:55 ` Pratik R. Sampat [this message]
2026-04-09 1:35 ` Duan, Zhenzhong
2026-03-27 3:05 ` Chenyi Qiang
2026-03-27 8:49 ` David Hildenbrand (Arm)
2026-03-27 8:28 ` Yan Zhao
2026-03-30 12:17 ` Marc-André Lureau
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=9609980e-9862-4cc6-833c-828db4fddc09@amd.com \
--to=prsampat@amd.com \
--cc=bp@alien8.de \
--cc=chenyi.qiang@intel.com \
--cc=dave.hansen@linux.intel.com \
--cc=elena.reshetova@intel.com \
--cc=hpa@zytor.com \
--cc=kas@kernel.org \
--cc=kvm@vger.kernel.org \
--cc=linux-coco@lists.linux.dev \
--cc=linux-kernel@vger.kernel.org \
--cc=marcandre.lureau@redhat.com \
--cc=mingo@redhat.com \
--cc=pbonzini@redhat.com \
--cc=rick.p.edgecombe@intel.com \
--cc=tglx@kernel.org \
--cc=x86@kernel.org \
--cc=zhenzhong.duan@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