On Tue, Apr 26, 2022 at 1:10 PM Dave Hansen <dave.hansen@xxxxxxxxx> wrote: [..] > > 3. Memory hotplug > > > > The first generation of TDX architecturally doesn't support memory > > hotplug. And the first generation of TDX-capable platforms don't support > > physical memory hotplug. Since it physically cannot happen, this series > > doesn't add any check in ACPI memory hotplug code path to disable it. > > > > A special case of memory hotplug is adding NVDIMM as system RAM using Saw "NVDIMM" mentioned while browsing this, so stopped to make a comment... > > kmem driver. However the first generation of TDX-capable platforms > > cannot enable TDX and NVDIMM simultaneously, so in practice this cannot > > happen either. > > What prevents this code from today's code being run on tomorrow's > platforms and breaking these assumptions? The assumption is already broken today with NVDIMM-N. The lack of DDR-T support on TDX enabled platforms has zero effect on DDR-based persistent memory solutions. In other words, please describe the actual software and hardware conflicts at play here, and do not make the mistake of assuming that "no DDR-T support on TDX platforms" == "no NVDIMM support". > > Another case is admin can use 'memmap' kernel command line to create > > legacy PMEMs and use them as TD guest memory, or theoretically, can use > > kmem driver to add them as system RAM. To avoid having to change memory > > hotplug code to prevent this from happening, this series always include > > legacy PMEMs when constructing TDMRs so they are also TDX memory. I am not sure what you are trying to say here? > > 4. CPU hotplug > > > > The first generation of TDX architecturally doesn't support ACPI CPU > > hotplug. All logical cpus are enabled by BIOS in MADT table. Also, the > > first generation of TDX-capable platforms don't support ACPI CPU hotplug > > either. Since this physically cannot happen, this series doesn't add any > > check in ACPI CPU hotplug code path to disable it. What are the actual challenges posed to TDX with respect to CPU hotplug? > > Also, only TDX module initialization requires all BIOS-enabled cpus are Please define "BIOS-enabled" cpus. There is no "BIOS-enabled" line in /proc/cpuinfo for example.