Message ID | 20230213162004.2797-1-shentey@gmail.com (mailing list archive) |
---|---|
Headers | show |
Series | PC cleanups | expand |
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! > > >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 > > >
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). > Ping > > >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 > > >
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 >> >> >>
On Sun, Mar 05, 2023 at 07:45:55AM +0000, Bernhard Beschow wrote: > > > 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 Philippe objected to patch 1 - he suggested using pci_address_space_io. > > > >> > >> > >>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 > >> > >> > >>
On 5/3/23 11:09, Michael S. Tsirkin wrote: > On Sun, Mar 05, 2023 at 07:45:55AM +0000, Bernhard Beschow wrote: >> >> >> 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). >>> The last two patches still need review. Comments welcome! >> >> Ping >> >> Can we queue the reviewed patches (all but the last two) already? >> >> Thanks, >> Bernhard > > Philippe objected to patch 1 - he suggested using > pci_address_space_io. I was wrong...
Am 5. März 2023 07:45:55 UTC schrieb Bernhard Beschow <shentey@gmail.com>: > > >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? Ping 2 > >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 >>> >>> >>>
On Wed, May 10, 2023 at 06:26:54PM +0000, Bernhard Beschow wrote: > > > Am 5. März 2023 07:45:55 UTC schrieb Bernhard Beschow <shentey@gmail.com>: > > > > > >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? > > Ping 2 queued 1-7 > > > >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 > >>> > >>> > >>>
Am 10. Mai 2023 19:20:59 UTC schrieb "Michael S. Tsirkin" <mst@redhat.com>: >On Wed, May 10, 2023 at 06:26:54PM +0000, Bernhard Beschow wrote: >> >> >> Am 5. März 2023 07:45:55 UTC schrieb Bernhard Beschow <shentey@gmail.com>: >> > >> > >> >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? >> >> Ping 2 > > >queued 1-7 Thanks -- also for the RTC ones! Best regards, Bernhard > >> > >> >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 >> >>> >> >>> >> >>> >