qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v1 1/1] intc/arm_gic: Fix gic_irq_signaling_enabled() for vCP


From: Luc Michel
Subject: Re: [PATCH v1 1/1] intc/arm_gic: Fix gic_irq_signaling_enabled() for vCPUs
Date: Tue, 15 Dec 2020 11:28:40 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.4.3

On 12/14/20 11:21 PM, Edgar E. Iglesias wrote:
From: "Edgar E. Iglesias" <edgar.iglesias@xilinx.com>

Correct the indexing into s->cpu_ctlr for vCPUs.

Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>

Hi Edgar,
Nice catch! Thanks.

Reviewed-by: Luc Michel <luc.michel@greensocs.com>

--
Luc

---
  hw/intc/arm_gic.c | 4 +++-
  1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/hw/intc/arm_gic.c b/hw/intc/arm_gic.c
index c60dc6b5e6..af41e2fb44 100644
--- a/hw/intc/arm_gic.c
+++ b/hw/intc/arm_gic.c
@@ -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,
                                      int group_mask)
  {
+    int cpu_iface = virt ? (cpu + GIC_NCPU) : cpu;
+
      if (!virt && !(s->ctlr & group_mask)) {
          return false;
      }
@@ -149,7 +151,7 @@ static inline bool gic_irq_signaling_enabled(GICState *s, 
int cpu, bool virt,
          return false;
      }
- if (!(s->cpu_ctlr[cpu] & group_mask)) {
+    if (!(s->cpu_ctlr[cpu_iface] & group_mask)) {
          return false;
      }



reply via email to

[Prev in Thread] Current Thread [Next in Thread]