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. Also some hits vl.c, headers and isa/pci code. Xen and sparc check for something which is never picked as default, so no worries here. cheers, Gerd