Re: [libvirt] [PATCH] qemu: Support chardevs with ARM virt machines

On Sun, 2017-06-25 at 13:46 +0200, Christoffer Dall wrote:
On Sun, Jun 25, 2017 at 4:07 AM, Andrea Bolognani <abologna redhat com> wrote: On Sat, 2017-06-24 at 16:07 +0200, Christoffer Dall wrote:
The way I see it, the bug is about libvirt being unable to launch guests which use the <console><log> feature, and with that in mind your patch is correct but doesn't solve the issue, because even thought that specific error is gone you immediately run into a different one and your guest is still unable to start.
I didn't experience this, it was actually working on my end. I wonder if it's related to the QEMU version, where I seem to remember we changed what some serial options turned into. But I for sure did not see "-device isa-serial..." on the command line, so maybe not.
That's very different from the behavior I'm seeing, and I can't figure out why that would be the case. That's why having your QEMU command line would be very useful.
As for differences in QEMU binaries, there might be some capability that I haven't considered and influences the generated command line. I'll look into that.
Cool, I'll have a look as well and will document my complete environment, then hopefully we can diff with yours and see where this ISA thing shows up.
It's likely a pci-serial vs. isa-serial device getting created. Something like -device pcie-root-port,port=0xa,chassis=3,id=pci.3,bus=pcie.0,addr=0x1.0x2 \ -chardev stdio,logfile=logfile,id=chardev0,logappend=off \ -device pci-serial,chardev=chardev0,bus=pci.3,addr=0x0 works for me, but only with upstream (not RHEL) qemu, and when adding console=ttyS0 to the guest kernel command line. So far we haven't wanted the pci-serial device in AArch64 RHEL qemu, as we didn't see a need for it. Is there any reason it should be supported other than it allows the logfile feature to work? As Andrea pointed out, in [1], I wrote that I think the logfile feature should work even with the default PL011 serial console. Thanks, drew [1] https://bugzilla.redhat.com/show_bug.cgi?id=1456882#c4

On Mon, 2017-06-26 at 15:06 +0200, Andrew Jones wrote:
Cool, I'll have a look as well and will document my complete environment, then hopefully we can diff with yours and see where this ISA thing shows up. It's likely a pci-serial vs. isa-serial device getting created. Something like -device pcie-root-port,port=0xa,chassis=3,id=pci.3,bus=pcie.0,addr=0x1.0x2 \ -chardev stdio,logfile=logfile,id=chardev0,logappend=off \ -device pci-serial,chardev=chardev0,bus=pci.3,addr=0x0 works for me, but only with upstream (not RHEL) qemu, and when adding console=ttyS0 to the guest kernel command line.
That's using QEMU directly though, right? Because the default for libvirt is to use isa-serial and you would have to tell it explicitly to use pci-serial instead, with <serial type='pty'> <target type='pci-serial' port='0'/> </serial> My point is that you or Christoffer having configured your QEMU binary differently shouldn't be enough to affect the command line generated by libvirt. -- Andrea Bolognani / Red Hat / Virtualization
participants (2)
-
Andrea Bolognani
-
Andrew Jones