On Thu, 2023-11-09 at 19:34 +0800, Stefan Hajnoczi wrote: > On Thu, 9 Nov 2023 at 19:10, David Woodhouse <dw...@infradead.org> wrote: > > > > On Tue, 2023-11-07 at 14:15 +0400, marcandre.lur...@redhat.com wrote: > > > From: Marc-André Lureau <marcandre.lur...@redhat.com> > > > > > > If a display is backed by a specialized VC, allow to override the > > > default "vc:80Cx24C". > > > > > > As suggested by Paolo, if the display doesn't implement a VC (get_vc() > > > returns NULL), use a fallback that will use a muxed console on stdio. > > > > > > This changes the behaviour of "qemu -display none", to create a muxed > > > serial/monitor by default (on TTY & not daemonized). > > > > > > Signed-off-by: Marc-André Lureau <marcandre.lur...@redhat.com> > > > Reviewed-by: Thomas Huth <th...@redhat.com> > > > > Hrm. This breaks the command line documented at > > https://qemu-project.gitlab.io/qemu/system/i386/xen.html > > > > $ ./qemu-system-x86_64 --accel > > kvm,xen-version=0x40011,kernel-irqchip=split \ > > -display none -chardev stdio,mux=on,id=char0,signal=off -mon char0 \ > > -device xen-console,chardev=char0 -drive file=${GUEST_IMAGE},if=xen > > > > qemu-system-x86_64: cannot use stdio by multiple character devices > > qemu-system-x86_64: could not connect serial device to character backend > > 'stdio' > > > > Can we make it create a Xen console by default, instead of a serial > > port? And/or make it *not* use stdio if something else on the command > > line already does? > > I have filed this in QEMU's bug tracker so it's not forgotten: > https://gitlab.com/qemu-project/qemu/-/issues/1974 > > Here is the list of open 8.2 bugs: > https://gitlab.com/qemu-project/qemu/-/milestones/10 > > Stefan
Thanks. Added a link there to the patch I just sent, along with a note suggesting that perhaps we should go a bit further. We're changing the QEMU behaviour in 8.2 to add these new devices using stdio, and *failing* if something else on the command line already used stdio. My patch avoids adding a serial port if there's already a xen-console, which is all well and good. But surely we shouldn't *fail* if something else is already using stdio; we should just *not* add the new default serial port? This might break other command lines which use stdio but *not* for a serial port? This breaks too: $ ./qemu-system-x86_64 -display none -chardev stdio,id=char0 qemu-system-x86_64: cannot use stdio by multiple character devices qemu-system-x86_64: could not connect serial device to character backend 'mon:stdio'
smime.p7s
Description: S/MIME cryptographic signature