[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL v2 32/45] pc: Remove compat fields from PcGuestInfo
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] [PULL v2 32/45] pc: Remove compat fields from PcGuestInfo |
Date: |
Sat, 6 Feb 2016 21:14:16 +0200 |
From: Eduardo Habkost <address@hidden>
Remove the fields: legacy_acpi_table_size, has_acpi_build,
has_reserved_memory, and rsdp_in_ram from PcGuestInfo, and let
the existing code use the PCMachineClass fields directly.
Signed-off-by: Eduardo Habkost <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
---
hw/i386/acpi-build.h | 2 +-
include/hw/i386/pc.h | 4 ----
hw/i386/acpi-build.c | 10 ++++++----
hw/i386/pc.c | 8 ++++----
hw/i386/pc_piix.c | 5 -----
hw/i386/pc_q35.c | 8 --------
6 files changed, 11 insertions(+), 26 deletions(-)
diff --git a/hw/i386/acpi-build.h b/hw/i386/acpi-build.h
index e57b1aa..148c0f9 100644
--- a/hw/i386/acpi-build.h
+++ b/hw/i386/acpi-build.h
@@ -4,6 +4,6 @@
#include "qemu/typedefs.h"
-void acpi_setup(PcGuestInfo *);
+void acpi_setup(void);
#endif
diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
index 223621a..4480409 100644
--- a/include/hw/i386/pc.h
+++ b/include/hw/i386/pc.h
@@ -43,10 +43,6 @@ struct PcGuestInfo {
uint64_t *node_mem;
uint64_t *node_cpu;
FWCfgState *fw_cfg;
- int legacy_acpi_table_size;
- bool has_acpi_build;
- bool has_reserved_memory;
- bool rsdp_in_ram;
};
/**
diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c
index 45c07ca..7f574f2 100644
--- a/hw/i386/acpi-build.c
+++ b/hw/i386/acpi-build.c
@@ -2593,6 +2593,7 @@ static
void acpi_build(AcpiBuildTables *tables)
{
PCMachineState *pcms = PC_MACHINE(qdev_get_machine());
+ PCMachineClass *pcmc = PC_MACHINE_GET_CLASS(pcms);
PcGuestInfo *guest_info = &pcms->acpi_guest_info;
GArray *table_offsets;
unsigned facs, dsdt, rsdt, fadt;
@@ -2706,12 +2707,12 @@ void acpi_build(AcpiBuildTables *tables)
*
* All this is for PIIX4, since QEMU 2.0 didn't support Q35 migration.
*/
- if (guest_info->legacy_acpi_table_size) {
+ if (pcmc->legacy_acpi_table_size) {
/* Subtracting aml_len gives the size of fixed tables. Then add the
* size of the PIIX4 DSDT/SSDT in QEMU 2.0.
*/
int legacy_aml_len =
- guest_info->legacy_acpi_table_size +
+ pcmc->legacy_acpi_table_size +
ACPI_BUILD_LEGACY_CPU_AML_SIZE * max_cpus;
int legacy_table_size =
ROUND_UP(tables_blob->len - aml_len + legacy_aml_len,
@@ -2804,6 +2805,7 @@ static const VMStateDescription vmstate_acpi_build = {
void acpi_setup(void)
{
PCMachineState *pcms = PC_MACHINE(qdev_get_machine());
+ PCMachineClass *pcmc = PC_MACHINE_GET_CLASS(pcms);
PcGuestInfo *guest_info = &pcms->acpi_guest_info;
AcpiBuildTables tables;
AcpiBuildState *build_state;
@@ -2813,7 +2815,7 @@ void acpi_setup(void)
return;
}
- if (!guest_info->has_acpi_build) {
+ if (!pcmc->has_acpi_build) {
ACPI_BUILD_DPRINTF("ACPI build disabled. Bailing out.\n");
return;
}
@@ -2842,7 +2844,7 @@ void acpi_setup(void)
fw_cfg_add_file(guest_info->fw_cfg, ACPI_BUILD_TPMLOG_FILE,
tables.tcpalog->data, acpi_data_len(tables.tcpalog));
- if (!guest_info->rsdp_in_ram) {
+ if (!pcmc->rsdp_in_ram) {
/*
* Keep for compatibility with old machine types.
* Though RSDP is small, its contents isn't immutable, so
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index 9745dca..3c59500 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -1180,7 +1180,7 @@ void pc_machine_done(Notifier *notifier, void *data)
}
}
- acpi_setup(&pcms->acpi_guest_info);
+ acpi_setup();
}
PcGuestInfo *pc_guest_info_init(PCMachineState *pcms)
@@ -1316,7 +1316,7 @@ void pc_memory_init(PCMachineState *pcms,
e820_add_entry(0x100000000ULL, pcms->above_4g_mem_size, E820_RAM);
}
- if (!guest_info->has_reserved_memory &&
+ if (!pcmc->has_reserved_memory &&
(machine->ram_slots ||
(machine->maxram_size > machine->ram_size))) {
MachineClass *mc = MACHINE_GET_CLASS(machine);
@@ -1327,7 +1327,7 @@ void pc_memory_init(PCMachineState *pcms,
}
/* initialize hotplug memory address space */
- if (guest_info->has_reserved_memory &&
+ if (pcmc->has_reserved_memory &&
(machine->ram_size < machine->maxram_size)) {
ram_addr_t hotplug_mem_size =
machine->maxram_size - machine->ram_size;
@@ -1382,7 +1382,7 @@ void pc_memory_init(PCMachineState *pcms,
rom_set_fw(fw_cfg);
- if (guest_info->has_reserved_memory && pcms->hotplug_memory.base) {
+ if (pcmc->has_reserved_memory && pcms->hotplug_memory.base) {
uint64_t *val = g_malloc(sizeof(*val));
PCMachineClass *pcmc = PC_MACHINE_GET_CLASS(pcms);
uint64_t res_mem_end = pcms->hotplug_memory.base;
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index 4262c32..584441a 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -143,12 +143,7 @@ static void pc_init1(MachineState *machine,
guest_info = pc_guest_info_init(pcms);
- guest_info->has_acpi_build = pcmc->has_acpi_build;
- guest_info->legacy_acpi_table_size = pcmc->legacy_acpi_table_size;
-
guest_info->isapc_ram_fw = !pcmc->pci_enabled;
- guest_info->has_reserved_memory = pcmc->has_reserved_memory;
- guest_info->rsdp_in_ram = pcmc->rsdp_in_ram;
if (pcmc->smbios_defaults) {
MachineClass *mc = MACHINE_GET_CLASS(machine);
diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
index 0c156e2..45e05f4 100644
--- a/hw/i386/pc_q35.c
+++ b/hw/i386/pc_q35.c
@@ -136,14 +136,6 @@ static void pc_q35_init(MachineState *machine)
guest_info = pc_guest_info_init(pcms);
guest_info->isapc_ram_fw = false;
- guest_info->has_acpi_build = pcmc->has_acpi_build;
- guest_info->has_reserved_memory = pcmc->has_reserved_memory;
- guest_info->rsdp_in_ram = pcmc->rsdp_in_ram;
-
- /* Migration was not supported in 2.0 for Q35, so do not bother
- * with this hack (see hw/i386/acpi-build.c).
- */
- guest_info->legacy_acpi_table_size = 0;
if (pcmc->smbios_defaults) {
/* These values are guest ABI, do not change */
--
MST
- Re: [Qemu-devel] [PULL v2 22/45] ipmi: introduce a struct ipmi_sdr_compact, (continued)
- [Qemu-devel] [PULL v2 23/45] ipmi: add get and set SENSOR_TYPE commands, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 24/45] ipmi: add GET_SYS_RESTART_CAUSE chassis command, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 25/45] ipmi: add ACPI power and GUID commands, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 27/45] pc: Eliminate struct PcGuestInfoState, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 26/45] pc: Move PcGuestInfo declaration to top of file, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 28/45] pc: Simplify pc_memory_init() signature, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 29/45] pc: Simplify xen_load_linux() signature, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 30/45] acpi: Remove guest_info parameters from functions, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 31/45] acpi: Don't save PcGuestInfo on AcpiBuildState, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 32/45] pc: Remove compat fields from PcGuestInfo,
Michael S. Tsirkin <=
- [Qemu-devel] [PULL v2 33/45] pc: Remove RAM size fields from PcGuestInfo, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 34/45] pc: Remove PcGuestInfo.isapc_ram_fw field, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 35/45] pc: Move PcGuestInfo.fw_cfg to PCMachineState, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 36/45] pc: Move APIC and NUMA data from PcGuestInfo to PCMachineState, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 37/45] pc: Eliminate PcGuestInfo struct, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 38/45] acpi: take oem_id in build_header(), optionally, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 39/45] acpi: expose oem_id and oem_table_id in build_rsdt(), Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 40/45] acpi: add function to extract oem_id and oem_table_id from the user's SLIC, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 41/45] pc: set the OEM fields in the RSDT and the FADT from the SLIC, Michael S. Tsirkin, 2016/02/06
- [Qemu-devel] [PULL v2 42/45] dimm: Correct type of MemoryHotplugState->base, Michael S. Tsirkin, 2016/02/06