On Fri, 2015-06-05 at 19:25 +0100, Julien Grall wrote: > > On 05/06/2015 17:09, Ian Campbell wrote: > >> + * injection, ignoring level 2 & 3. > >> + */ > >> + if ( gicv3_sgir_to_cpumask(&vcpu_mask, sgir) ) > >> + { > >> + gprintk(XENLOG_WARNING, "Wrong affinity in SGI1R_EL > >> register\n"); > > > > I don't think we need to log this. The guest has asked to send an SGI to > > a VCPU which we know can't possibly exist. I'm not sure what real h/w > > would do, but if it is e.g. UNPREDICTABLE then we should consider > > killing the guest here. I suspect it's actually just ignored, in which > > case we can silently do the same. > > From the spec: > > "Note: if a bit is one and the bit does not correspond to a valid target > processor, the bit must be ignored by the Distributor. In such cases, a > Distributor may optionally generate an SEI." > > The implementation of SEI is implementation defined. I'm not sure what > would be the right behavior to adopt here.
In general I'm in favour of being as harsh as allowed by default (i.e. without a good reason to do otherwise), to avoid guests coming to rely on lenient behaviour which we might find we want to change in the future. Ian _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel