qemu-devel
[Top][All Lists]
Advanced

[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
> 




reply via email to

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