diff mbox series

[PATCH-for-9.1,v2,21/21] hw/i386/pc: Replace PCMachineClass::acpi_data_size by PC_ACPI_DATA_SIZE

Message ID 20240327095124.73639-22-philmd@linaro.org
State Superseded
Headers show
Series [PATCH-for-9.1,v2,01/21] hw/i386/pc: Remove deprecated pc-i440fx-2.0 machine | expand

Commit Message

Philippe Mathieu-Daudé March 27, 2024, 9:51 a.m. UTC
PCMachineClass::acpi_data_size was only used by the pc-i440fx-2.0
machine, which got removed. Since it is constant, replace the class
field by a definition.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20240305134221.30924-19-philmd@linaro.org>
---
 include/hw/i386/pc.h |  4 ----
 hw/i386/pc.c         | 19 ++++++++++++-------
 2 files changed, 12 insertions(+), 11 deletions(-)

Comments

Zhao Liu March 28, 2024, 4:10 a.m. UTC | #1
Hi Philippe,

On Wed, Mar 27, 2024 at 10:51:23AM +0100, Philippe Mathieu-Daudé wrote:
> Date: Wed, 27 Mar 2024 10:51:23 +0100
> From: Philippe Mathieu-Daudé <philmd@linaro.org>
> Subject: [PATCH-for-9.1 v2 21/21] hw/i386/pc: Replace
>  PCMachineClass::acpi_data_size by PC_ACPI_DATA_SIZE
> X-Mailer: git-send-email 2.41.0

[snip]

> diff --git a/hw/i386/pc.c b/hw/i386/pc.c
> index 27e04c52f6..f01a30d3d9 100644
> --- a/hw/i386/pc.c
> +++ b/hw/i386/pc.c
> @@ -256,6 +256,16 @@ GlobalProperty pc_compat_2_4[] = {
>  };
>  const size_t pc_compat_2_4_len = G_N_ELEMENTS(pc_compat_2_4);
>  
> +/*
> + * @PC_ACPI_DATA_SIZE:
> + * Size of the chunk of memory at the top of RAM for the BIOS ACPI tables
> + * and other BIOS datastructures.
> + *
> + * BIOS ACPI tables: 128K. Other BIOS datastructures: less than 4K
> + * reported to be used at the moment, 32K should be enough for a while.
> + */
> +#define PC_ACPI_DATA_SIZE (0x20000 + 0x8000)
> +

What about putting this in pc.h? Because it is a general definition for
PC.

Others are good for me,

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Philippe Mathieu-Daudé April 16, 2024, 1:47 p.m. UTC | #2
On 28/3/24 05:10, Zhao Liu wrote:
> Hi Philippe,
> 
> On Wed, Mar 27, 2024 at 10:51:23AM +0100, Philippe Mathieu-Daudé wrote:
>> Date: Wed, 27 Mar 2024 10:51:23 +0100
>> From: Philippe Mathieu-Daudé <philmd@linaro.org>
>> Subject: [PATCH-for-9.1 v2 21/21] hw/i386/pc: Replace
>>   PCMachineClass::acpi_data_size by PC_ACPI_DATA_SIZE
>> X-Mailer: git-send-email 2.41.0
> 
> [snip]
> 
>> diff --git a/hw/i386/pc.c b/hw/i386/pc.c
>> index 27e04c52f6..f01a30d3d9 100644
>> --- a/hw/i386/pc.c
>> +++ b/hw/i386/pc.c
>> @@ -256,6 +256,16 @@ GlobalProperty pc_compat_2_4[] = {
>>   };
>>   const size_t pc_compat_2_4_len = G_N_ELEMENTS(pc_compat_2_4);
>>   
>> +/*
>> + * @PC_ACPI_DATA_SIZE:
>> + * Size of the chunk of memory at the top of RAM for the BIOS ACPI tables
>> + * and other BIOS datastructures.
>> + *
>> + * BIOS ACPI tables: 128K. Other BIOS datastructures: less than 4K
>> + * reported to be used at the moment, 32K should be enough for a while.
>> + */
>> +#define PC_ACPI_DATA_SIZE (0x20000 + 0x8000)
>> +
> 
> What about putting this in pc.h? Because it is a general definition for
> PC.

Since nothing out of hw/i386/pc.c uses this definition,
I rather avoid exposing it.

> 
> Others are good for me,
> 
> Reviewed-by: Zhao Liu <zhao1.liu@intel.com>

Thanks!
diff mbox series

Patch

diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
index 96ccb4583f..0ad971782c 100644
--- a/include/hw/i386/pc.h
+++ b/include/hw/i386/pc.h
@@ -74,9 +74,6 @@  typedef struct PCMachineState {
  *
  * Compat fields:
  *
- * @acpi_data_size: Size of the chunk of memory at the top of RAM
- *                  for the BIOS ACPI tables and other BIOS
- *                  datastructures.
  * @gigabyte_align: Make sure that guest addresses aligned at
  *                  1Gbyte boundaries get mapped to host
  *                  addresses aligned at 1Gbyte boundaries. This
@@ -100,7 +97,6 @@  struct PCMachineClass {
 
     /* ACPI compat: */
     bool has_acpi_build;
-    unsigned acpi_data_size;
     int pci_root_uid;
 
     /* SMBIOS compat: */
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index 27e04c52f6..f01a30d3d9 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -256,6 +256,16 @@  GlobalProperty pc_compat_2_4[] = {
 };
 const size_t pc_compat_2_4_len = G_N_ELEMENTS(pc_compat_2_4);
 
+/*
+ * @PC_ACPI_DATA_SIZE:
+ * Size of the chunk of memory at the top of RAM for the BIOS ACPI tables
+ * and other BIOS datastructures.
+ *
+ * BIOS ACPI tables: 128K. Other BIOS datastructures: less than 4K
+ * reported to be used at the moment, 32K should be enough for a while.
+ */
+#define PC_ACPI_DATA_SIZE (0x20000 + 0x8000)
+
 GSIState *pc_gsi_create(qemu_irq **irqs, bool pci_enabled)
 {
     GSIState *s;
@@ -634,8 +644,7 @@  void xen_load_linux(PCMachineState *pcms)
     fw_cfg_add_i16(fw_cfg, FW_CFG_NB_CPUS, x86ms->boot_cpus);
     rom_set_fw(fw_cfg);
 
-    x86_load_linux(x86ms, fw_cfg, pcmc->acpi_data_size,
-                   pcmc->pvh_enabled);
+    x86_load_linux(x86ms, fw_cfg, PC_ACPI_DATA_SIZE, pcmc->pvh_enabled);
     for (i = 0; i < nb_option_roms; i++) {
         assert(!strcmp(option_rom[i].name, "linuxboot.bin") ||
                !strcmp(option_rom[i].name, "linuxboot_dma.bin") ||
@@ -969,8 +978,7 @@  void pc_memory_init(PCMachineState *pcms,
     }
 
     if (linux_boot) {
-        x86_load_linux(x86ms, fw_cfg, pcmc->acpi_data_size,
-                       pcmc->pvh_enabled);
+        x86_load_linux(x86ms, fw_cfg, PC_ACPI_DATA_SIZE, pcmc->pvh_enabled);
     }
 
     for (i = 0; i < nb_option_roms; i++) {
@@ -1722,9 +1730,6 @@  static void pc_machine_class_init(ObjectClass *oc, void *data)
     pcmc->gigabyte_align = true;
     pcmc->has_reserved_memory = true;
     pcmc->enforce_amd_1tb_hole = true;
-    /* BIOS ACPI tables: 128K. Other BIOS datastructures: less than 4K reported
-     * to be used at the moment, 32K should be enough for a while.  */
-    pcmc->acpi_data_size = 0x20000 + 0x8000;
     pcmc->pvh_enabled = true;
     pcmc->kvmclock_create_always = true;
     x86mc->apic_xrupt_override = true;