On 24 May 2018 at 10:04, Auger Eric <eric.au...@redhat.com> wrote: > Now I am unclear about the semantics of the s->gicd_ipriority & friends. > With that change, is it supposed to contain only the states of SPIs or > contain the RAZ states of PPI/SGIs + states of SPIs. The array is > dimensionned to contain states for PPI/SGI+SPIs, right? In other words, > shouldn't we also shift field?
The semantics of the gicd_ipriority and other data structures are set by the TCG GIC implementation, and include blank space at the start where the PPI/SGI bits would live. See this comment from arm_gicv3_common.h: * Each bitmap contains a bit for each interrupt. Although there is * space for the PPIs and SGIs, those bits (the first 32) are never * used as that state lives in the redistributor. The unused bits are * provided purely so that interrupt X's state is always in bit X; this * avoids bugs where we forget to subtract GIC_INTERNAL from an * interrupt number. thanks -- PMM