qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2 2/2] vga: don't pick cirrus by default


From: Eduardo Habkost
Subject: Re: [Qemu-devel] [PATCH v2 2/2] vga: don't pick cirrus by default
Date: Mon, 9 Jul 2018 18:23:19 -0300
User-agent: Mutt/1.9.2 (2017-12-15)

On Mon, Jul 09, 2018 at 06:08:33PM -0300, Eduardo Habkost wrote:
> On Fri, Jul 06, 2018 at 08:53:42AM +0200, Gerd Hoffmann wrote:
> > On Thu, Jul 05, 2018 at 01:35:01PM -0300, Eduardo Habkost wrote:
> > > Do we have a list of all machine-types with default_display==NULL
> > > that would be affected by this?
> > 
> > There are not many which use the default vga thing in the first place.
> > Workflow is this:
> > 
> >  (1) vl.c calls select_vgahw(vga_model) after setting vga_model.
> >  (2) select_hw() sets vga_interface_type.
> >  (3) isa_vga_init() and pci_vga_init() look at vga_interface_type.
> > 
> > Checking where either vga_interface_type or *_vga_init() is used doesn't
> > yield many places:
> > 
> > # find -name "*.[ch]" | xargs egrep 
> > '((isa|pci)_vga_init|vga_interface_type)'
> > ./hw/alpha/dp264.c:    pci_vga_init(pci_bus);
> > ./hw/i386/pc.c:        PCIDevice *pcidev = pci_vga_init(pci_bus);
> > ./hw/i386/pc.c:        ISADevice *isadev = isa_vga_init(isa_bus);
> > ./hw/isa/isa-bus.c:ISADevice *isa_vga_init(ISABus *bus)
> > ./hw/isa/isa-bus.c:    switch (vga_interface_type) {
> > ./hw/mips/mips_malta.c:    pci_vga_init(pci_bus);
> > ./hw/mips/mips_r4k.c:    isa_vga_init(isa_bus);
> > ./hw/pci/pci.c:PCIDevice *pci_vga_init(PCIBus *bus)
> > ./hw/pci/pci.c:    switch (vga_interface_type) {
> > ./hw/ppc/mac_newworld.c:    pci_vga_init(pci_bus);
> > ./hw/ppc/mac_oldworld.c:    pci_vga_init(pci_bus);
> > ./hw/ppc/spapr.c:    switch (vga_interface_type) {
> > ./hw/ppc/spapr.c:        return pci_vga_init(pci_bus) != NULL;
> > ./hw/ppc/prep.c:    pci_vga_init(pci_bus);
> > ./hw/ppc/prep.c:        pci_vga_init(pci_bus);
> > ./hw/sparc/sun4m.c:        if (vga_interface_type == VGA_CG3) {
> > ./include/hw/isa/isa.h:ISADevice *isa_vga_init(ISABus *bus);
> > ./include/hw/pci/pci.h:PCIDevice *pci_vga_init(PCIBus *bus);
> > ./include/sysemu/sysemu.h:extern int vga_interface_type;
> > ./include/sysemu/sysemu.h:#define xenfb_enabled (vga_interface_type == 
> > VGA_XENFB)
> > ./vl.c:int vga_interface_type = VGA_NONE;
> > ./vl.c:    assert(vga_interface_type == VGA_NONE);
> > ./vl.c:            vga_interface_type = t;
> > ./vl.c:        vga_interface_type = VGA_DEVICE;
> > 
> > So it is alpha, mips, i386, ppc.
> 
> Right, and all of them have both CONFIG_VGA_CIRRUS and
> CONFIG_VGA_PCI enabled.  This means all of them will be affected
> by this patch if they have any machines with
> default_display==NULL.
> 
> At least on x86 we still have a few machines with
> default_display==NULL: isapc, xenpv, xenfv.  We need to fix them
> before we apply this patch.
> 
> I didn't check alpha/mips/ppc yet.

List of machines with default_display==NULL on those
architectures:

alpha:
none                 empty machine

mips:
mipssim              MIPS MIPSsim platform
none                 empty machine

ppc*:
bamboo               bamboo
mpc8544ds            mpc8544ds
none                 empty machine
powernv              IBM PowerNV (Non-Virtualized)
ppce500              generic paravirt e500 platform
ref405ep             ref405ep
sam460ex             aCube Sam460ex
taihu                taihu
virtex-ml507         Xilinx Virtex ML507 reference design

x86_64:
isapc                ISA-only PC
none                 empty machine
xenfv                Xen Fully-virtualized PC
xenpv                Xen Para-virtualized PC

Tested on qemu.git master after applying this series.  List
generated by hacking machine_parse(), so some machines may be
missing if they are disabled at build time.

-- 
Eduardo



reply via email to

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