Am 13. Februar 2023 16:19:55 UTC schrieb Bernhard Beschow <shen...@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!
>
>
>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-phi...@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
>
>
>