qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v4 0/9] PC cleanups


From: Bernhard Beschow
Subject: Re: [PATCH v4 0/9] PC cleanups
Date: Sun, 05 Mar 2023 07:45:55 +0000


Am 13. Februar 2023 16:45:05 UTC schrieb Bernhard Beschow <shentey@gmail.com>:
>
>
>Am 13. Februar 2023 16:19:55 UTC schrieb Bernhard Beschow <shentey@gmail.com>:
>>This series contains some cleanups I came across when working on the PC
>>
>>machines. It consists of reducing the usage of global variables and 
>>eliminating
>>
>>some redundancies.
>>
>>
>>
>>One notable change is that the SMRAM memory region gets moved from the i440fx
>>
>>and q35 host bridges into the x86 machine. This will simplify cleaning up 
>>these
>>
>>host bridges which will be done in a separate series. Note that the movement 
>>of
>>
>>the SMRAM memory region apparently doesn't change migration ABI for the pc and
>>
>>q35 machines (see below).
>>
>>
>>
>>Testing done:
>>
>>* `make check`
>>
>>' `make check-avocado`
>>
>>* `qemu-system-x86_64 -M q35 -m 2G -cdrom \
>>
>>   manjaro-kde-21.3.2-220704-linux515.iso`
>>
>>* `qemu-system-x86_64 -M pc -m 2G -cdrom 
>>manjaro-kde-21.3.2-220704-linux515.iso`
>>
>>* Confirm that JSON representation of migration files (pc & q35) are empty:
>>
>>  1. Create four migration files {pc,q35}-{before,after}.mig by running
>>
>>     `qemu-system-x86_64 -M {pc,q35} -S` with QEMU built from master and from
>>
>>     this series.
>>
>>  2. Run `./scripts/analyze-migration.py -d desc -f *.mig > *.json` on the 
>> four
>>
>>     files
>>
>>  3. Compare the diffs -> both are empty
>>
>>
>>
>>v4:
>>
>>* Remove ram_memory variable in pc_q35 completely (Zoltan)
>>
>
>The last two patches still need review. Comments welcome!

Ping

Can we queue the reviewed patches (all but the last two) already?

Thanks,
Bernhard

>
>>
>>
>>v3:
>>
>>* Add three patches regarding init_pam() and SMRAM.
>>
>>* Drop 'hw/i386/pc_q35: Resolve redundant q35_host variable' since Phil posted
>>
>>  a similar patch in a more comprehensive series:
>>
>>  
>> https://lore.kernel.org/qemu-devel/20230203180914.49112-13-philmd@linaro.org/
>>
>>* Drop 'hw/isa/lpc_ich9: Reuse memory and io address space of PCI bus' since
>>
>>  it inadvertantly changed the memory hierarchy.
>>
>>* Drop ICH9 cleanups again in favor of a separate series.
>>
>>
>>
>>v2:
>>
>>* Factor out 'hw/i386/pc_q35: Reuse machine parameter' from 'hw/i386/pc_q35:
>>
>>  Resolve redundant q35_host variable' (Zoltan)
>>
>>* Lower type of phb to Object in 'hw/i386/pc_q35: Resolve redundant q35_host
>>
>>  variable' (Zoltan)
>>
>>* Add ICH9 cleanups
>>
>>
>>
>>Bernhard Beschow (9):
>>
>>  hw/pci-host/i440fx: Inline sysbus_add_io()
>>
>>  hw/pci-host/q35: Inline sysbus_add_io()
>>
>>  hw/i386/pc_q35: Reuse machine parameter
>>
>>  hw/i386/pc_{q35,piix}: Reuse MachineClass::desc as SMB product name
>>
>>  hw/i386/pc_{q35,piix}: Minimize usage of get_system_memory()
>>
>>  hw/i386/pc: Initialize ram_memory variable directly
>>
>>  hw/pci-host/pam: Make init_pam() usage more readable
>>
>>  hw/i386/x86: Make TYPE_X86_MACHINE the owner of smram
>>
>>  target/i386/tcg/sysemu/tcg-cpu: Avoid own opinion about smram size
>>
>>
>>
>> include/hw/i386/pc.h             |  1 -
>>
>> include/hw/i386/x86.h            |  2 ++
>>
>> include/hw/pci-host/i440fx.h     |  7 ++++---
>>
>> include/hw/pci-host/pam.h        |  5 +++--
>>
>> include/hw/pci-host/q35.h        |  4 +++-
>>
>> hw/i386/pc.c                     |  2 --
>>
>> hw/i386/pc_piix.c                | 10 +++++-----
>>
>> hw/i386/pc_q35.c                 | 17 +++++++++--------
>>
>> hw/i386/x86.c                    |  4 ++++
>>
>> hw/pci-host/i440fx.c             | 28 +++++++++++++---------------
>>
>> hw/pci-host/pam.c                | 12 ++++++------
>>
>> hw/pci-host/q35.c                | 31 ++++++++++++++++---------------
>>
>> target/i386/tcg/sysemu/tcg-cpu.c |  3 +--
>>
>> 13 files changed, 66 insertions(+), 60 deletions(-)
>>
>>
>>
>>-- >
>>2.39.1
>>
>>
>>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]