Re: Guests wont start with 15 pcie-root-port devices

2021-11-16 Thread Igor Mammedov
On Mon, 15 Nov 2021 11:57:43 -0500
Brian Rak  wrote:

> Will this fix make it into 6.2?

yes,
it was just merged 2aa1842d6d79..7e6055c99f2f1f

PS:
Native PCIe hotplug fixes from Gerd were merged as well,
so if you'd like to use native hotplug, use 
  --global ICH9-LPC.acpi-pci-hotplug-with-bridge-support=off
to turn off ACPI hotplug.

> On 11/12/2021 3:51 PM, Igor Mammedov wrote:
> > On Fri, 12 Nov 2021 17:53:42 +
> > Daniel P. Berrangé  wrote:
> >  
> >> On Fri, Nov 12, 2021 at 12:35:07PM -0500, Brian Rak wrote:  
> >>> In 6.1, a guest with 15 empty pcie-root-port devices will not boot 
> >>> properly
> >>> - it just hangs on "Guest has not initialized the display (yet).".  As 
> >>> soon
> >>> as I remove the last pcie-root-port, the guest begins starting up 
> >>> normally.  
> >> Yes, QEMU 6.1 has a regression
> >>
> >>https://gitlab.com/qemu-project/qemu/-/issues/641
> >>
> >>  
> >>> commit e2a6290aab578b2170c1f5909fa556385dc0d820
> >>> Author: Marcel Apfelbaum 
> >>> Date:   Mon Aug 2 12:00:57 2021 +0300
> >>>
> >>>      hw/pcie-root-port: Fix hotplug for PCI devices requiring IO
> >>>
> >>> Although I can't say I really understand why that commit triggered it.  
> >> It caused the firmware to always allocate I/O space for every port
> >> and there's limited total I/O space, so it runs out at 15 devices.  
> > alternatively instead of reverting to native PCIe hotplug as in the issue
> > Daniel's mentioned, you can apply following fix
> >   https://patchew.org/QEMU/2022110857.3116853-1-imamm...@redhat.com/
> >  
> >> Regards,
> >> Daniel  
> 




Re: Guests wont start with 15 pcie-root-port devices

2021-11-15 Thread Brian Rak

Will this fix make it into 6.2?

On 11/12/2021 3:51 PM, Igor Mammedov wrote:

On Fri, 12 Nov 2021 17:53:42 +
Daniel P. Berrangé  wrote:


On Fri, Nov 12, 2021 at 12:35:07PM -0500, Brian Rak wrote:

In 6.1, a guest with 15 empty pcie-root-port devices will not boot properly
- it just hangs on "Guest has not initialized the display (yet).".  As soon
as I remove the last pcie-root-port, the guest begins starting up normally.

Yes, QEMU 6.1 has a regression

   https://gitlab.com/qemu-project/qemu/-/issues/641



commit e2a6290aab578b2170c1f5909fa556385dc0d820
Author: Marcel Apfelbaum 
Date:   Mon Aug 2 12:00:57 2021 +0300

     hw/pcie-root-port: Fix hotplug for PCI devices requiring IO

Although I can't say I really understand why that commit triggered it.

It caused the firmware to always allocate I/O space for every port
and there's limited total I/O space, so it runs out at 15 devices.

alternatively instead of reverting to native PCIe hotplug as in the issue
Daniel's mentioned, you can apply following fix
  https://patchew.org/QEMU/2022110857.3116853-1-imamm...@redhat.com/


Regards,
Daniel




Re: Guests wont start with 15 pcie-root-port devices

2021-11-12 Thread Igor Mammedov
On Fri, 12 Nov 2021 17:53:42 +
Daniel P. Berrangé  wrote:

> On Fri, Nov 12, 2021 at 12:35:07PM -0500, Brian Rak wrote:
> > In 6.1, a guest with 15 empty pcie-root-port devices will not boot properly
> > - it just hangs on "Guest has not initialized the display (yet).".  As soon
> > as I remove the last pcie-root-port, the guest begins starting up normally. 
> >   
> 
> Yes, QEMU 6.1 has a regression
> 
>   https://gitlab.com/qemu-project/qemu/-/issues/641 
> 
> 
> > commit e2a6290aab578b2170c1f5909fa556385dc0d820
> > Author: Marcel Apfelbaum 
> > Date:   Mon Aug 2 12:00:57 2021 +0300
> > 
> >     hw/pcie-root-port: Fix hotplug for PCI devices requiring IO
> > 
> > Although I can't say I really understand why that commit triggered it.  
> 
> It caused the firmware to always allocate I/O space for every port
> and there's limited total I/O space, so it runs out at 15 devices.

alternatively instead of reverting to native PCIe hotplug as in the issue
Daniel's mentioned, you can apply following fix
 https://patchew.org/QEMU/2022110857.3116853-1-imamm...@redhat.com/

> 
> Regards,
> Daniel




Re: Guests wont start with 15 pcie-root-port devices

2021-11-12 Thread Daniel P . Berrangé
On Fri, Nov 12, 2021 at 12:35:07PM -0500, Brian Rak wrote:
> In 6.1, a guest with 15 empty pcie-root-port devices will not boot properly
> - it just hangs on "Guest has not initialized the display (yet).".  As soon
> as I remove the last pcie-root-port, the guest begins starting up normally. 

Yes, QEMU 6.1 has a regression

  https://gitlab.com/qemu-project/qemu/-/issues/641 


> commit e2a6290aab578b2170c1f5909fa556385dc0d820
> Author: Marcel Apfelbaum 
> Date:   Mon Aug 2 12:00:57 2021 +0300
> 
>     hw/pcie-root-port: Fix hotplug for PCI devices requiring IO
> 
> Although I can't say I really understand why that commit triggered it.

It caused the firmware to always allocate I/O space for every port
and there's limited total I/O space, so it runs out at 15 devices.

Regards,
Daniel
-- 
|: https://berrange.com  -o-https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o-https://fstop138.berrange.com :|
|: https://entangle-photo.org-o-https://www.instagram.com/dberrange :|




Guests wont start with 15 pcie-root-port devices

2021-11-12 Thread Brian Rak
In 6.1, a guest with 15 empty pcie-root-port devices will not boot 
properly - it just hangs on "Guest has not initialized the display 
(yet).".  As soon as I remove the last pcie-root-port, the guest begins 
starting up normally.  My qemu command line:


/usr/libexec/qemu-kvm -name guest=xxx,debug-threads=on -S -object 
{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain-29-xxx/master-key.aes"} 
-machine 
pc-q35-6.1,accel=kvm,usb=off,dump-guest-core=off,memory-backend=pc.ram 
-cpu Haswell-noTSX-IBRS -m 4096 -object 
{"qom-type":"memory-backend-ram","id":"pc.ram","size":4294967296} 
-overcommit mem-lock=off -smp 2,sockets=2,cores=1,threads=1 -uuid 
daf2c139-4991-4079-9b8a-b4c98fc675e0 -no-user-config -nodefaults 
-chardev socket,id=charmonitor,fd=31,server=on,wait=off -mon 
chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown 
-boot strict=on -device 
pcie-root-port,port=0x10,chassis=1,id=pci.1,bus=pcie.0,multifunction=on,addr=0x2 
-device 
pcie-root-port,port=0x11,chassis=2,id=pci.2,bus=pcie.0,addr=0x2.0x1 
-device 
pcie-root-port,port=0x12,chassis=3,id=pci.3,bus=pcie.0,addr=0x2.0x2 
-device 
pcie-root-port,port=0x13,chassis=4,id=pci.4,bus=pcie.0,addr=0x2.0x3 
-device 
pcie-root-port,port=0x14,chassis=5,id=pci.5,bus=pcie.0,addr=0x2.0x4 
-device 
pcie-root-port,port=0x15,chassis=6,id=pci.6,bus=pcie.0,addr=0x2.0x5 
-device 
pcie-root-port,port=0x16,chassis=7,id=pci.7,bus=pcie.0,addr=0x2.0x6 
-device 
pcie-root-port,port=0x17,chassis=8,id=pci.8,bus=pcie.0,addr=0x2.0x7 
-device 
pcie-root-port,port=0x18,chassis=9,id=pci.9,bus=pcie.0,multifunction=on,addr=0x3 
-device 
pcie-root-port,port=0x19,chassis=10,id=pci.10,bus=pcie.0,addr=0x3.0x1 
-device 
pcie-root-port,port=0x1a,chassis=11,id=pci.11,bus=pcie.0,addr=0x3.0x2 
-device 
pcie-root-port,port=0x1b,chassis=12,id=pci.12,bus=pcie.0,addr=0x3.0x3 
-device 
pcie-root-port,port=0x1c,chassis=13,id=pci.13,bus=pcie.0,addr=0x3.0x4 
-device 
pcie-root-port,port=0x1d,chassis=14,id=pci.14,bus=pcie.0,addr=0x3.0x5 
-device 
pcie-root-port,port=0x1e,chassis=15,id=pci.15,bus=pcie.0,addr=0x3.0x6 
-device qemu-xhci,id=usb,bus=pci.1,addr=0x0 -audiodev 
id=audio1,driver=none -vnc 
127.0.0.1:5410,websocket=41310,password=on,audiodev=audio1 -device 
cirrus-vga,id=video0,bus=pcie.0,addr=0x1 -device 
virtio-balloon-pci,id=balloon0,bus=pci.2,addr=0x0 -sandbox 
on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny 
-msg timestamp=on


The same guest XML that produced this worked fine in 5.2  I was able to 
bisect this down to this commit:



commit e2a6290aab578b2170c1f5909fa556385dc0d820
Author: Marcel Apfelbaum 
Date:   Mon Aug 2 12:00:57 2021 +0300

    hw/pcie-root-port: Fix hotplug for PCI devices requiring IO

Although I can't say I really understand why that commit triggered it.