On Fri, Oct 20, 2023 at 04:16:16PM +0100, Andrew Cooper wrote:
> On 20/10/2023 3:50 pm, Durrant, Paul wrote:
> > On 20/10/2023 14:37, David Woodhouse wrote:
> > [snip]
> >>>
> >>> [0]
> >>> https://elixir.bootlin.com/linux/latest/source/drivers/tty/hvc/hvc_xen.c#L258
> >>
> >> I'm not convinced I believe what the comment says there about evtchn 0
> >> being theoretically valid. I don't believe zero is a valid evtchn#, is
> >> it?
> >
> > gfn 0 might be valid, but I'm also pretty sure evtchn 0 is not valid.
> 
> GFN 0 very much is valid.
> 
> evtchn 0 OTOH is explicitly not valid.  From evtchn_init():
> 
>     evtchn_from_port(d, 0)->state = ECS_RESERVED;
> 
> 
> However, the fields being 0 doesn't mean not available.  That's the
> signal to saying "not connected yet", because that's what dom0 gets
> before xenconsoled starts up.

Someone asked me the same a while back, and IIRC we don't state
anywhere in the public headers that event channel 0 is reserved,
however that has always? been part of the implementation.

If we intend this to be reliable, we should add a define to the public
headers in order to signal that 0 will always be reserved.

Roger.

Reply via email to