[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 00/10] Resolve isabus global
From: |
Michael S. Tsirkin |
Subject: |
Re: [PATCH v2 00/10] Resolve isabus global |
Date: |
Fri, 24 Feb 2023 11:22:48 -0500 |
On Thu, Jan 26, 2023 at 10:17:30PM +0100, Bernhard Beschow wrote:
> This series resolves the global "isabus" variable and is basically a v2 of
> [1].
> Note that the majority of the work consists of fixing ISA API calls in PIIX
> IDE
> which implicitly rely on the usage of the isabus global.
>
> Rather than adding an ISABus pointer in PCIIDEState as in [1] this series uses
> a qemu_irq array which is roughly the approach outlined in [2]. Moreover, this
> series considers backwards compatibility for user-created PIIX IDE
> "Frankensten" devices by fishing out TYPE_ISA_BUS from the QOM tree inside
> the PIIX IDE device model. This hack can be removed again once a deprecation
> period of user-createable PIIX IDE devices is over. This deprecation wasn't
> announced yet but now might be a good time.
>
> This series is structured as follows: The first three patches massage the ISA
> code for patch 8. Patches 4-8 change the PIIX IDE device models to not use the
> isabus global implicitly. Finally, the last two patches clan up and remove the
> isabus singleton.
I expect there will be a v3 of this, right?
> Based-on: <20230109172347.1830-1-shentey@gmail.com>
> 'Consolidate PIIX south bridges'
>
> v2:
> - Big rework sticking closer to [1], giving it more credit and reusing one
> patch
> - Add io port cleanup
> - Rebase onto [4] so changes to PIIX could be done once and centrally
>
> Testing done:
> * `make check`
> * `./qemu-system-x86_64 -M x-remote -device piix3-ide` still fails gracefully
> with
> `qemu-system-x86_64: -device piix3-ide: No ISA bus found while piix3-ide
> requires one`
> * `qemu-system-x86_64 -M pc -m 2G -cdrom
> manjaro-kde-21.3.2-220704-linux515.iso`
> * `qemu-system-x86_64 -M q35 -m 2G -device piix4-ide -cdrom \
> manjaro-kde-21.3.2-220704-linux515.iso`
> * `qemu-system-mips64el -M malta -kernel vmlinux-3.2.0-4-5kc-malta -hda \
> debian_wheezy_mipsel_standard.qcow2 -append "root=/dev/sda1 console=ttyS0"`
>
> [1] https://patchew.org/QEMU/20210518215545.1793947-1-philmd@redhat.com/
> [2] https://lists.nongnu.org/archive/html/qemu-devel/2020-03/msg01707.html
> [3] https://people.debian.org/~aurel32/qemu/mips/
> [4] https://patchew.org/QEMU/20230109172347.1830-1-shentey@gmail.com/
>
> Bernhard Beschow (9):
> softmmu/ioport: Move portio_list_init() in front of portio_list_add()
> softmmu/ioport: Merge portio_list_add() into portio_list_init()
> softmmu/ioport: Remove unused functions
> hw/ide/piix: Disuse isa_get_irq()
> Revert "hw/ide: Fix crash when plugging a piix3-ide device into the
> x-remote machine"
> hw/ide/pci: Add PCIIDEState::isa_irqs[]
> hw/ide/piix: Require an ISABus only for user-created instances
> hw/ide: Let ide_init_ioport() take a MemoryRegion argument instead of
> ISADevice
> hw/isa/isa-bus: Resolve isabus global
>
> Philippe Mathieu-Daudé (1):
> hw/isa: Remove use of global isa bus
>
> include/exec/ioport.h | 8 ++---
> include/hw/ide/internal.h | 3 +-
> include/hw/ide/pci.h | 2 ++
> include/hw/isa/isa.h | 15 ++++----
> hw/audio/adlib.c | 4 +--
> hw/display/qxl.c | 5 ++-
> hw/display/vga.c | 8 ++---
> hw/dma/i82374.c | 6 ++--
> hw/ide/ioport.c | 19 +++++-----
> hw/ide/isa.c | 4 ++-
> hw/ide/piix.c | 75 +++++++++++++++++++++++++++++++--------
> hw/isa/isa-bus.c | 54 +++++++++++++++-------------
> hw/isa/piix.c | 5 +++
> hw/watchdog/wdt_ib700.c | 4 +--
> softmmu/ioport.c | 70 +++++++++++-------------------------
> 15 files changed, 149 insertions(+), 133 deletions(-)
>
> --
> 2.39.1
>
- Re: [PATCH v2 00/10] Resolve isabus global,
Michael S. Tsirkin <=