mirror of https://github.com/xemu-project/xemu.git
intc/arm_gic: Fix gic_irq_signaling_enabled() for vCPUs
Correct the indexing into s->cpu_ctlr for vCPUs. Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Luc Michel <luc.michel@greensocs.com> Message-id: 20201214222154.3480243-2-edgar.iglesias@gmail.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
e79de63ab1
commit
4663b72a48
|
@ -141,6 +141,8 @@ static inline void gic_get_best_virq(GICState *s, int cpu,
|
||||||
static inline bool gic_irq_signaling_enabled(GICState *s, int cpu, bool virt,
|
static inline bool gic_irq_signaling_enabled(GICState *s, int cpu, bool virt,
|
||||||
int group_mask)
|
int group_mask)
|
||||||
{
|
{
|
||||||
|
int cpu_iface = virt ? (cpu + GIC_NCPU) : cpu;
|
||||||
|
|
||||||
if (!virt && !(s->ctlr & group_mask)) {
|
if (!virt && !(s->ctlr & group_mask)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -149,7 +151,7 @@ static inline bool gic_irq_signaling_enabled(GICState *s, int cpu, bool virt,
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(s->cpu_ctlr[cpu] & group_mask)) {
|
if (!(s->cpu_ctlr[cpu_iface] & group_mask)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue