From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40427) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a8nYY-0001KV-84 for qemu-devel@nongnu.org; Tue, 15 Dec 2015 06:14:11 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a8nYU-00071d-6b for qemu-devel@nongnu.org; Tue, 15 Dec 2015 06:14:10 -0500 Received: from mail-wm0-x236.google.com ([2a00:1450:400c:c09::236]:37931) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a8nYT-00071U-UB for qemu-devel@nongnu.org; Tue, 15 Dec 2015 06:14:06 -0500 Received: by mail-wm0-x236.google.com with SMTP id p66so20084263wmp.1 for ; Tue, 15 Dec 2015 03:14:05 -0800 (PST) References: <1449859353-1574-1-git-send-email-ehabkost@redhat.com> <1449859353-1574-3-git-send-email-ehabkost@redhat.com> From: Marcel Apfelbaum Message-ID: <566FF5FB.6030600@gmail.com> Date: Tue, 15 Dec 2015 13:14:03 +0200 MIME-Version: 1.0 In-Reply-To: <1449859353-1574-3-git-send-email-ehabkost@redhat.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v2 02/14] pc: Group and document related PCMachineState/PCMachineclass fields Reply-To: marcel@redhat.com List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Eduardo Habkost , qemu-devel@nongnu.org Cc: Igor Mammedov , "Michael S. Tsirkin" , Marcel Apfelbaum On 12/11/2015 08:42 PM, Eduardo Habkost wrote: > Group related PCMachineState and PCMachineClass fields into > sections, and move existing field descriptions to doc comments. > > Signed-off-by: Eduardo Habkost > --- > include/hw/i386/pc.h | 48 ++++++++++++++++++++++++++++++++++++------------ > 1 file changed, 36 insertions(+), 12 deletions(-) > > diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h > index 9811229..9503dbb 100644 > --- a/include/hw/i386/pc.h > +++ b/include/hw/i386/pc.h > @@ -29,16 +29,22 @@ struct PCMachineState { > MachineState parent_obj; > > /* */ > + > + /* State for other subsystems/APIs: */ > MemoryHotplugState hotplug_memory; > > + /* Pointers to devices and objects: */ > HotplugHandler *acpi_dev; > ISADevice *rtc; > + PCIBus *bus; > > + /* Configuration options: */ > uint64_t max_ram_below_4g; > OnOffAuto vmport; > OnOffAuto smm; > + > + /* RAM information (sizes, addresses, configuration): */ > ram_addr_t below_4g_mem_size, above_4g_mem_size; > - PCIBus *bus; > }; > > #define PC_MACHINE_ACPI_DEVICE_PROP "acpi-device" > @@ -49,38 +55,56 @@ struct PCMachineState { > > /** > * PCMachineClass: > + * > + * Methods: > + * > * @get_hotplug_handler: pointer to parent class callback @get_hotplug_handler > + * > + * Compat fields: > + * > * @enforce_aligned_dimm: check that DIMM's address/size is aligned by > * backend's alignment value if provided > + * @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 > + * way we can use 1GByte pages in the host. > + * > */ > struct PCMachineClass { > /*< private >*/ > MachineClass parent_class; > > /*< public >*/ > - bool broken_reserved_end; > + > + /* Methods: */ > HotplugHandler *(*get_hotplug_handler)(MachineState *machine, > DeviceState *dev); > > + /* Device configuration: */ > bool pci_enabled; > + bool kvmclock_enabled; > + > + /* Compat options: */ > + > + /* ACPI compat: */ > bool has_acpi_build; > bool rsdp_in_ram; > + int legacy_acpi_table_size; > + unsigned acpi_data_size; > + > + /* SMBIOS compat: */ > bool smbios_defaults; > bool smbios_legacy_mode; > bool smbios_uuid_encoded; > - /* Make sure that guest addresses aligned at 1Gbyte boundaries get > - * mapped to host addresses aligned at 1Gbyte boundaries. This way > - * we can use 1GByte pages in the host. > - */ > + > + /* RAM / address space compat: */ > bool gigabyte_align; > bool has_reserved_memory; > - bool kvmclock_enabled; > - int legacy_acpi_table_size; > - /* Leave a chunk of memory at the top of RAM for the BIOS ACPI tables > - * and other BIOS datastructures. > - */ > - unsigned acpi_data_size; > bool enforce_aligned_dimm; > + bool broken_reserved_end; > }; > > #define TYPE_PC_MACHINE "generic-pc-machine" > Thanks for this! It will really help to understand the PCMachine components. Reviewed-by: Marcel Apfelbaum