[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] xen/arm: Black list everything with a PPI
Hello, Thanks for having a look at it. On Thu, May 16, 2019 at 12:25 AM Oleksandr <olekstysh@xxxxxxxxx> wrote: > > > On 03.05.19 20:02, Amit Singh Tomar wrote: > > Hi, Amit > > > XEN should not forward PPIs to Dom0 as it only support SPIs. > > One of solution to this problem is to skip any device that > > uses PPI source completely while building domain itself. > > > > This patch goes through all the interrupt sources of device and skip it > > if one of interrupt source is PPI. It fixes XEN boot on i.MX8MQ by > > skipping PMU node. > > > > Suggested-by: Julien Grall <julien.grall@xxxxxxx> > > Signed-off-by: Amit Singh Tomar <amittomer25@xxxxxxxxx> > > --- > > * This replaces following patch. > > https://patchwork.kernel.org/patch/10899881/ > > --- > > xen/arch/arm/domain_build.c | 16 +++++++++++++++- > > 1 file changed, 15 insertions(+), 1 deletion(-) > > > > diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c > > index d983677..8f54472 100644 > > --- a/xen/arch/arm/domain_build.c > > +++ b/xen/arch/arm/domain_build.c > > @@ -1353,7 +1353,7 @@ static int __init handle_node(struct domain *d, > > struct kernel_info *kinfo, > > { /* sentinel */ }, > > }; > > struct dt_device_node *child; > > - int res; > > + int res, i, nirq, irq_id; > > const char *name; > > const char *path; > > > > @@ -1399,6 +1399,20 @@ static int __init handle_node(struct domain *d, > > struct kernel_info *kinfo, > > return 0; > > } > > > > + /* Skip the node, using PPI source */ > > + nirq = dt_number_of_irq(node); > > + > > + for ( i = 0 ; i < nirq ; i++ ) > > + { > > + irq_id = platform_get_irq(node, i); > > Do we need to do something here if platform_get_irq() returns -1? Yeah, I should have done it. some think like following: https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/domain_build.c;h=d9836779d17c90e84b94ba32e4a20f028189fc5b;hb=HEAD#l1284 > > + > > + if ( irq_id >= 16 && irq_id < 32 ) > > + { > > + dt_dprintk(" Skip node with (PPI source)\n"); > > + return 0; > > + } > > + } > > + > > /* > > * Xen is using some path for its own purpose. Warn if a node > > * already exists with the same path. > > Patch looks good. Although R-Car H3 seems to not use PPIs for PMU, I > have tested your patch just to be sure it wouldn't skip anything by a > mistake) Ok, Thanks for testing it. I would resend it with error condition check. -Thanks Amit. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |