Thread (6 messages) 6 messages, 3 authors, 2023-10-23

Re: [PATCH v2 1/3] hvc/xen: fix event channel handling for secondary consoles

From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Date: 2023-10-21 16:33:02
Also in: linux-serial, lkml, xen-devel

On Fri, Oct 20, 2023 at 05:15:27PM +0100, David Woodhouse wrote:
From: David Woodhouse <redacted>

The xencons_connect_backend() function allocates a local interdomain
event channel with xenbus_alloc_evtchn(), then calls
bind_interdomain_evtchn_to_irq_lateeoi() to bind to that port# on the
*remote* domain.

That doesn't work very well:

(qemu) device_add xen-console,id=con1,chardev=pty0
[   44.323872] xenconsole console-1: 2 xenbus_dev_probe on device/console/1
[   44.323995] xenconsole: probe of console-1 failed with error -2

Fix it to use bind_evtchn_to_irq_lateeoi(), which does the right thing
by just binding that *local* event channel to an irq. The backend will
do the interdomain binding.

This didn't affect the primary console because the setup for that is
special — the toolstack allocates the guest event channel and the guest
discovers it with HVMOP_get_param.

Fixes: fe415186b4 ("xen/console: harden hvc_xen against event channel storms")
Nit, our tools complain that the sha1 isn't big enough, "fe415186b43d"
I'll go fix it up...
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help