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.
Regards,
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel