From: Bernhard Beschow <shentey@gmail.com>
To: qemu-devel@nongnu.org
Cc: Paolo Bonzini <pbonzini@redhat.com>,
Sunil Muthuswamy <sunilmut@microsoft.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
qemu-trivial@nongnu.org,
Richard Henderson <richard.henderson@linaro.org>,
Juan Quintela <quintela@redhat.com>,
Eduardo Habkost <eduardo@habkost.net>,
Thomas Huth <thuth@redhat.com>,
Igor Mammedov <imammedo@redhat.com>,
BALATON Zoltan <balaton@eik.bme.hu>, Ani Sinha <ani@anisinha.ca>,
Laurent Vivier <lvivier@redhat.com>,
Bernhard Beschow <shentey@gmail.com>
Subject: [PATCH v4 0/9] PC cleanups
Date: Mon, 13 Feb 2023 17:19:55 +0100 [thread overview]
Message-ID: <20230213162004.2797-1-shentey@gmail.com> (raw)
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)
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
next reply other threads:[~2023-02-13 16:21 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-13 16:19 Bernhard Beschow [this message]
2023-02-13 16:19 ` [PATCH v4 1/9] hw/pci-host/i440fx: Inline sysbus_add_io() Bernhard Beschow
2023-02-22 10:58 ` Philippe Mathieu-Daudé
2023-02-22 18:05 ` Bernhard Beschow
2023-03-06 6:57 ` Bernhard Beschow
2023-03-07 22:32 ` Philippe Mathieu-Daudé
2023-02-13 16:19 ` [PATCH v4 2/9] hw/pci-host/q35: " Bernhard Beschow
2023-02-13 16:19 ` [PATCH v4 3/9] hw/i386/pc_q35: Reuse machine parameter Bernhard Beschow
2023-02-22 11:03 ` Philippe Mathieu-Daudé
2023-02-22 17:52 ` Bernhard Beschow
2023-02-22 20:24 ` Michael S. Tsirkin
2023-02-13 16:19 ` [PATCH v4 4/9] hw/i386/pc_{q35, piix}: Reuse MachineClass::desc as SMB product name Bernhard Beschow
2023-02-13 16:20 ` [PATCH v4 5/9] hw/i386/pc_{q35, piix}: Minimize usage of get_system_memory() Bernhard Beschow
2023-02-22 11:05 ` Philippe Mathieu-Daudé
2023-02-13 16:20 ` [PATCH v4 6/9] hw/i386/pc: Initialize ram_memory variable directly Bernhard Beschow
2023-02-22 2:38 ` Xiaoyao Li
2023-02-22 8:21 ` Bernhard Beschow
2023-02-13 16:20 ` [PATCH v4 7/9] hw/pci-host/pam: Make init_pam() usage more readable Bernhard Beschow
2023-02-13 16:20 ` [PATCH v4 8/9] hw/i386/x86: Make TYPE_X86_MACHINE the owner of smram Bernhard Beschow
2023-02-13 16:20 ` [PATCH v4 9/9] target/i386/tcg/sysemu/tcg-cpu: Avoid own opinion about smram size Bernhard Beschow
2023-02-13 16:45 ` [PATCH v4 0/9] PC cleanups Bernhard Beschow
2023-03-05 7:45 ` Bernhard Beschow
2023-03-05 10:09 ` Michael S. Tsirkin
2023-03-07 22:34 ` Philippe Mathieu-Daudé
2023-05-10 18:26 ` Bernhard Beschow
2023-05-10 19:20 ` Michael S. Tsirkin
2023-05-10 21:19 ` Bernhard Beschow
2023-02-21 15:40 ` Bernhard Beschow
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=20230213162004.2797-1-shentey@gmail.com \
--to=shentey@gmail.com \
--cc=ani@anisinha.ca \
--cc=balaton@eik.bme.hu \
--cc=dgilbert@redhat.com \
--cc=eduardo@habkost.net \
--cc=imammedo@redhat.com \
--cc=lvivier@redhat.com \
--cc=marcel.apfelbaum@gmail.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-trivial@nongnu.org \
--cc=quintela@redhat.com \
--cc=richard.henderson@linaro.org \
--cc=sunilmut@microsoft.com \
--cc=thuth@redhat.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).