On Wed, 28 Jan 2026, Jan Beulich wrote:
> On 23.01.2026 02:06, Stefano Stabellini wrote:
> > --- a/xen/common/device-tree/dom0less-build.c
> > +++ b/xen/common/device-tree/dom0less-build.c
> > @@ -829,6 +829,8 @@ static int __init construct_domU(struct kernel_info 
> > *kinfo,
> >  
> >      rangeset_destroy(kinfo->xen_reg_assigned);
> >  
> > +    d->console->input_allowed = true;
> 
> Why for all of the domains? Shouldn't this be a per-domain setting?

For all dom0less domains. No, I don't think it should be a per-domain
setting. If you are running dom0less you only have two options: this
one, or vuart and both of them work the same way and require
input_allowed = true.


> > --- a/xen/drivers/char/console.c
> > +++ b/xen/drivers/char/console.c
> > @@ -612,10 +612,18 @@ static void __serial_rx(char c)
> >      if ( !d )
> >          return;
> >  
> > -    if ( is_hardware_domain(d) )
> 
> This check is fully lost; shouldn't it be replaced by ...
> 
> > +#ifdef CONFIG_SBSA_VUART_CONSOLE
> > +    /* Prioritize vpl011 if enabled for this domain */
> > +    if ( d->arch.vpl011.base_addr )
> > +    {
> > +        /* Deliver input to the emulated UART. */
> > +        rc = vpl011_rx_char_xen(d, c);
> > +    }
> > +    else
> > +#endif
> 
> ...
> 
>     if ( d->input_allowed )
> 
> the latest here (not sure about the vpl011 intentions in this regard)?

No because vuart has already input_allowed


> >      {
> >          /*
> > -         * Deliver input to the hardware domain buffer, unless it is
> > +         * Deliver input to the focus domain buffer, unless it is
> >           * already full.
> >           */
> 
> As said there, imo this change belongs in the earlier patch.

I can move them there

Reply via email to