Hello everyone, Sorry for spamming, but according to the comments on the 8th patch of the series: https://patchew.org/Xen/cover.1756317702.git.leonid._5fkomarians...@epam.com/9e8a11b024833c1b91b8806e7708bf35b04a8f6e.1756317702.git.leonid._5fkomarians...@epam.com/
As has_espi field will be removed, the following: On 27.08.25 21:24, Leonid Komarianskyi wrote: > @@ -1184,6 +1396,21 @@ static int vgic_v3_distr_mmio_read(struct vcpu *v, > mmio_info_t *info, > case VRANGE32(0x005C, 0x007C): > goto read_reserved; > > +#ifdef CONFIG_GICV3_ESPI > + case VRANGE32(GICD_IGROUPRnE, GICD_IGROUPRnEN): > + case VRANGE32(GICD_ISENABLERnE, GICD_ISENABLERnEN): > + case VRANGE32(GICD_ICENABLERnE, GICD_ICENABLERnEN): > + case VRANGE32(GICD_ISPENDRnE, GICD_ISPENDRnEN): > + case VRANGE32(GICD_ICPENDRnE, GICD_ICPENDRnEN): > + case VRANGE32(GICD_ISACTIVERnE, GICD_ISACTIVERnEN): > + case VRANGE32(GICD_ICACTIVERnE, GICD_ICACTIVERnEN): > + case VRANGE32(GICD_IPRIORITYRnE, GICD_IPRIORITYRnEN): > + case VRANGE32(GICD_ICFGRnE, GICD_ICFGRnEN): > + case VRANGE32(GICD_IGRPMODRnE, GICD_IGRPMODRnEN): > + if ( !v->domain->arch.vgic.has_espi ) ...and similar code will be changed to the macro: #define has_espi(v) ((v)->domain->arch.vgic.nr_espis != 0) It will behave in a similar way, without any functional changes, assuming this solution is acceptable. Best regards, Leonid