From: Marcel Apfelbaum <marcel@redhat.com>
To: Eduardo Habkost <ehabkost@redhat.com>, qemu-devel@nongnu.org
Cc: Igor Mammedov <imammedo@redhat.com>,
Marcel Apfelbaum <marcel.a@redhat.com>,
"Michael S. Tsirkin" <mst@redhat.com>
Subject: Re: [Qemu-devel] [PATCH v2 09/14] pc: Remove compat fields from PcGuestInfo
Date: Tue, 15 Dec 2015 16:03:55 +0200 [thread overview]
Message-ID: <56701DCB.9000803@redhat.com> (raw)
In-Reply-To: <1449859353-1574-10-git-send-email-ehabkost@redhat.com>
On 12/11/2015 08:42 PM, Eduardo Habkost wrote:
> 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 <ehabkost@redhat.com>
> ---
> hw/i386/acpi-build.c | 10 ++++++----
> hw/i386/pc.c | 6 +++---
> hw/i386/pc_piix.c | 5 -----
> hw/i386/pc_q35.c | 8 --------
> include/hw/i386/pc.h | 4 ----
> 5 files changed, 9 insertions(+), 24 deletions(-)
>
> diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c
> index 82d55bb..46b83ad 100644
> --- a/hw/i386/acpi-build.c
> +++ b/hw/i386/acpi-build.c
> @@ -1689,6 +1689,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, ssdt, dsdt, rsdt;
> @@ -1802,12 +1803,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,
> @@ -1900,6 +1901,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;
> @@ -1909,7 +1911,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;
> }
> @@ -1938,7 +1940,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 14c0116..f8d4531 100644
> --- a/hw/i386/pc.c
> +++ b/hw/i386/pc.c
> @@ -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 f39c086..fe00086 100644
> --- a/hw/i386/pc_piix.c
> +++ b/hw/i386/pc_piix.c
> @@ -142,12 +142,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 bb1436e..1f29943 100644
> --- a/hw/i386/pc_q35.c
> +++ b/hw/i386/pc_q35.c
> @@ -133,14 +133,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 */
> diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
> index 24362ef..d24682f 100644
> --- a/include/hw/i386/pc.h
> +++ b/include/hw/i386/pc.h
> @@ -30,10 +30,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;
> };
>
> /**
>
Looks OK to me
Reviewed-by: Marcel Apfelbaum <marcel@redhat.com>
next prev parent reply other threads:[~2015-12-15 14:04 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-11 18:42 [Qemu-devel] [PATCH v2 00/14] pc: Eliminate struct PcGuestInfo Eduardo Habkost
2015-12-11 18:42 ` [Qemu-devel] [PATCH v2 01/14] q35: Remove MCHPCIState.guest_info field Eduardo Habkost
2015-12-15 11:10 ` Marcel Apfelbaum
2015-12-11 18:42 ` [Qemu-devel] [PATCH v2 02/14] pc: Group and document related PCMachineState/PCMachineclass fields Eduardo Habkost
2015-12-15 11:14 ` Marcel Apfelbaum
2015-12-11 18:42 ` [Qemu-devel] [PATCH v2 03/14] pc: Move PcGuestInfo declaration to top of file Eduardo Habkost
2015-12-15 11:19 ` Marcel Apfelbaum
2015-12-11 18:42 ` [Qemu-devel] [PATCH v2 04/14] pc: Eliminate struct PcGuestInfoState Eduardo Habkost
2015-12-15 11:37 ` Marcel Apfelbaum
2015-12-11 18:42 ` [Qemu-devel] [PATCH v2 05/14] pc: Simplify pc_memory_init() signature Eduardo Habkost
2015-12-15 11:39 ` Marcel Apfelbaum
2015-12-11 18:42 ` [Qemu-devel] [PATCH v2 06/14] pc: Simplify xen_load_linux() signature Eduardo Habkost
2015-12-15 11:45 ` Marcel Apfelbaum
2015-12-11 18:42 ` [Qemu-devel] [PATCH v2 07/14] acpi: Remove guest_info parameters from functions Eduardo Habkost
2015-12-15 12:36 ` Marcel Apfelbaum
2015-12-18 18:08 ` Eduardo Habkost
2015-12-18 18:51 ` Marcel Apfelbaum
2015-12-11 18:42 ` [Qemu-devel] [PATCH v2 08/14] acpi: Don't save PcGuestInfo on AcpiBuildState Eduardo Habkost
2015-12-15 13:06 ` Marcel Apfelbaum
2015-12-11 18:42 ` [Qemu-devel] [PATCH v2 09/14] pc: Remove compat fields from PcGuestInfo Eduardo Habkost
2015-12-15 14:03 ` Marcel Apfelbaum [this message]
2015-12-11 18:42 ` [Qemu-devel] [PATCH v2 10/14] pc: Remove RAM size " Eduardo Habkost
2015-12-15 14:15 ` Marcel Apfelbaum
2015-12-11 18:42 ` [Qemu-devel] [PATCH v2 11/14] pc: Remove PcGuestInfo.isapc_ram_fw field Eduardo Habkost
2015-12-15 14:27 ` Marcel Apfelbaum
2015-12-16 19:48 ` Eduardo Habkost
2015-12-17 9:40 ` Marcel Apfelbaum
2015-12-17 16:04 ` Eduardo Habkost
2015-12-11 18:42 ` [Qemu-devel] [PATCH v2 12/14] pc: Move PcGuestInfo.fw_cfg to PCMachineState Eduardo Habkost
2015-12-15 14:28 ` Marcel Apfelbaum
2015-12-11 18:42 ` [Qemu-devel] [PATCH v2 13/14] pc: Move APIC and NUMA data from PcGuestInfo " Eduardo Habkost
2015-12-15 14:33 ` Marcel Apfelbaum
2015-12-11 18:42 ` [Qemu-devel] [PATCH v2 14/14] pc: Eliminate PcGuestInfo struct Eduardo Habkost
2015-12-15 14:37 ` Marcel Apfelbaum
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=56701DCB.9000803@redhat.com \
--to=marcel@redhat.com \
--cc=ehabkost@redhat.com \
--cc=imammedo@redhat.com \
--cc=marcel.a@redhat.com \
--cc=mst@redhat.com \
--cc=qemu-devel@nongnu.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.