On 12/16/2025 4:52 AM, Peter Xu wrote:
Differenciate it from fully shared guest-memfd use cases.

When at it, add proper brackets in kvm_handle_hc_map_gpa_range() otherwise
checkpatch may complain.

Suggested-by: Xiaoyao Li <[email protected]>
Signed-off-by: Peter Xu <[email protected]>

Reviewed-by: Xiaoyao Li <[email protected]>

---
  include/hw/boards.h   | 2 +-
  backends/hostmem.c    | 2 +-
  hw/core/machine.c     | 2 +-
  hw/i386/pc.c          | 2 +-
  hw/i386/pc_sysfw.c    | 4 ++--
  hw/i386/x86-common.c  | 4 ++--
  target/i386/kvm/kvm.c | 3 ++-
  7 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/include/hw/boards.h b/include/hw/boards.h
index a48ed4f86a..3a0a051d19 100644
--- a/include/hw/boards.h
+++ b/include/hw/boards.h
@@ -42,7 +42,7 @@ bool machine_usb(MachineState *machine);
  int machine_phandle_start(MachineState *machine);
  bool machine_dump_guest_core(MachineState *machine);
  bool machine_mem_merge(MachineState *machine);
-bool machine_require_guest_memfd(MachineState *machine);
+bool machine_require_guest_memfd_private(MachineState *machine);
  HotpluggableCPUList *machine_query_hotpluggable_cpus(MachineState *machine);
  void machine_set_cpu_numa_node(MachineState *machine,
                                 const CpuInstanceProperties *props,
diff --git a/backends/hostmem.c b/backends/hostmem.c
index 70450733db..e2dcae50c4 100644
--- a/backends/hostmem.c
+++ b/backends/hostmem.c
@@ -288,7 +288,7 @@ static void host_memory_backend_init(Object *obj)
      /* TODO: convert access to globals to compat properties */
      backend->merge = machine_mem_merge(machine);
      backend->dump = machine_dump_guest_core(machine);
-    backend->guest_memfd_private = machine_require_guest_memfd(machine);
+    backend->guest_memfd_private = 
machine_require_guest_memfd_private(machine);
      backend->reserve = true;
      backend->prealloc_threads = machine->smp.cpus;
  }
diff --git a/hw/core/machine.c b/hw/core/machine.c
index 27372bb01e..3bdce197f7 100644
--- a/hw/core/machine.c
+++ b/hw/core/machine.c
@@ -1376,7 +1376,7 @@ bool machine_mem_merge(MachineState *machine)
      return machine->mem_merge;
  }
-bool machine_require_guest_memfd(MachineState *machine)
+bool machine_require_guest_memfd_private(MachineState *machine)
  {
      return machine->cgs && machine->cgs->require_guest_memfd;
  }
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index f8b919cb6c..b2d55ceb5e 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -962,7 +962,7 @@ void pc_memory_init(PCMachineState *pcms,
if (!is_tdx_vm()) {
          option_rom_mr = g_malloc(sizeof(*option_rom_mr));
-        if (machine_require_guest_memfd(machine)) {
+        if (machine_require_guest_memfd_private(machine)) {
              memory_region_init_ram_guest_memfd(option_rom_mr, NULL, "pc.rom",
                                              PC_ROM_SIZE, &error_fatal);
          } else {
diff --git a/hw/i386/pc_sysfw.c b/hw/i386/pc_sysfw.c
index 1a12b635ad..1c37258654 100644
--- a/hw/i386/pc_sysfw.c
+++ b/hw/i386/pc_sysfw.c
@@ -52,7 +52,7 @@ static void pc_isa_bios_init(PCMachineState *pcms, 
MemoryRegion *isa_bios,
/* map the last 128KB of the BIOS in ISA space */
      isa_bios_size = MIN(flash_size, 128 * KiB);
-    if (machine_require_guest_memfd(MACHINE(pcms))) {
+    if (machine_require_guest_memfd_private(MACHINE(pcms))) {
          memory_region_init_ram_guest_memfd(isa_bios, NULL, "isa-bios",
                                             isa_bios_size, &error_fatal);
      } else {
@@ -71,7 +71,7 @@ static void pc_isa_bios_init(PCMachineState *pcms, 
MemoryRegion *isa_bios,
             ((uint8_t*)flash_ptr) + (flash_size - isa_bios_size),
             isa_bios_size);
- if (!machine_require_guest_memfd(current_machine)) {
+    if (!machine_require_guest_memfd_private(current_machine)) {
          memory_region_set_readonly(isa_bios, true);
      }
  }
diff --git a/hw/i386/x86-common.c b/hw/i386/x86-common.c
index c844749900..33ac7fb6e9 100644
--- a/hw/i386/x86-common.c
+++ b/hw/i386/x86-common.c
@@ -1044,7 +1044,7 @@ void x86_bios_rom_init(X86MachineState *x86ms, const char 
*default_firmware,
          (bios_size % 65536) != 0) {
          goto bios_error;
      }
-    if (machine_require_guest_memfd(MACHINE(x86ms))) {
+    if (machine_require_guest_memfd_private(MACHINE(x86ms))) {
          memory_region_init_ram_guest_memfd(&x86ms->bios, NULL, "pc.bios",
                                             bios_size, &error_fatal);
          if (is_tdx_vm()) {
@@ -1074,7 +1074,7 @@ void x86_bios_rom_init(X86MachineState *x86ms, const char 
*default_firmware,
      }
      g_free(filename);
- if (!machine_require_guest_memfd(MACHINE(x86ms))) {
+    if (!machine_require_guest_memfd_private(MACHINE(x86ms))) {
          /* map the last 128KB of the BIOS in ISA space */
          x86_isa_bios_init(&x86ms->isa_bios, rom_memory, &x86ms->bios,
                            !isapc_ram_fw);
diff --git a/target/i386/kvm/kvm.c b/target/i386/kvm/kvm.c
index 60c7981138..5d0d02bcaf 100644
--- a/target/i386/kvm/kvm.c
+++ b/target/i386/kvm/kvm.c
@@ -6050,8 +6050,9 @@ static int kvm_handle_hc_map_gpa_range(X86CPU *cpu, 
struct kvm_run *run)
      uint64_t gpa, size, attributes;
      int ret;
- if (!machine_require_guest_memfd(current_machine))
+    if (!machine_require_guest_memfd_private(current_machine)) {
          return -EINVAL;
+    }
gpa = run->hypercall.args[0];
      size = run->hypercall.args[1] * TARGET_PAGE_SIZE;


Reply via email to