[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v3 2/5] xen/console: introduce console_get_domid()



On Tue, May 20, 2025 at 08:20:16AM +0200, Jan Beulich wrote:
> On 19.05.2025 22:12, dmkhn@xxxxxxxxx wrote:
> > --- a/xen/arch/arm/vpl011.c
> > +++ b/xen/arch/arm/vpl011.c
> > @@ -78,12 +78,11 @@ static void vpl011_write_data_xen(struct domain *d, 
> > uint8_t data)
> >      unsigned long flags;
> >      struct vpl011 *vpl011 = &d->arch.vpl011;
> >      struct vpl011_xen_backend *intf = vpl011->backend.xen;
> > -    struct domain *input = console_get_domain();
> >
> >      VPL011_LOCK(d, flags);
> >
> >      intf->out[intf->out_prod++] = data;
> > -    if ( d == input )
> > +    if ( d->domain_id == console_get_domid() )
> 
> How do you know d isn't a domain different from the one that was the
> console "owner" prior to being destroyed? Original code guaranteed this
> up to ...
> 
> > @@ -123,8 +122,6 @@ static void vpl011_write_data_xen(struct domain *d, 
> > uint8_t data)
> >      vpl011_update_interrupt_status(d);
> >
> >      VPL011_UNLOCK(d, flags);
> > -
> > -    console_put_domain(input);
> 
> ... here.

Agreed; I will drop the code change in the next iteration.
Thanks.

> 
> Jan




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.