]> xenbits.xensource.com Git - people/andrewcoop/xen.git/commitdiff
xen/arm: vgic: Switch emulate_sysreg return from int to bool
authorJulien Grall <julien.grall@arm.com>
Wed, 7 Dec 2016 12:33:46 +0000 (12:33 +0000)
committerStefano Stabellini <sstabellini@kernel.org>
Wed, 7 Dec 2016 22:02:26 +0000 (14:02 -0800)
emulate_sysreg callback can only return 2 values: 0 or 1. Use bool
instead to make clear only two possible values exist.

Signed-off-by: Julien Grall <julien.grall@arm.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
xen/arch/arm/vgic-v3.c
xen/arch/arm/vgic.c
xen/include/asm-arm/vgic.h

index 3617b2b33919a66cebb9aedea190ab2bfd4d5ff9..03ccfb7ad3c1b34eeb0d051da833e5fbbea0eaf1 100644 (file)
@@ -1300,7 +1300,7 @@ static bool vgic_v3_to_sgi(struct vcpu *v, register_t sgir)
     return vgic_to_sgi(v, sgir, sgi_mode, virq, &target);
 }
 
-static int vgic_v3_emulate_sysreg(struct cpu_user_regs *regs, union hsr hsr)
+static bool vgic_v3_emulate_sysreg(struct cpu_user_regs *regs, union hsr hsr)
 {
     struct vcpu *v = current;
     struct hsr_sysreg sysreg = hsr.sysreg;
@@ -1321,10 +1321,10 @@ static int vgic_v3_emulate_sysreg(struct cpu_user_regs *regs, union hsr hsr)
         else
         {
             gprintk(XENLOG_WARNING, "Reading SGI1R_EL1 - WO register\n");
-            return 0;
+            return false;
         }
     default:
-        return 0;
+        return false;
     }
 }
 
index 3e1774d7facdcdf96975aa0bb0cf9346d105be64..196e86bd397453af0acabc025ee9b4073822a1fc 100644 (file)
@@ -546,7 +546,7 @@ void arch_evtchn_inject(struct vcpu *v)
     vgic_vcpu_inject_irq(v, v->domain->arch.evtchn_irq);
 }
 
-int vgic_emulate(struct cpu_user_regs *regs, union hsr hsr)
+bool vgic_emulate(struct cpu_user_regs *regs, union hsr hsr)
 {
     struct vcpu *v = current;
 
index 83843fa781dcb58e3dd12b9e782528c60a912849..fadb1e139fbd71899be73db3281e9d4d43046fd7 100644 (file)
@@ -131,7 +131,7 @@ struct vgic_ops {
     /* Release resources that were allocated by domain_init */
     void (*domain_free)(struct domain *d);
     /* vGIC sysreg emulation */
-    int (*emulate_sysreg)(struct cpu_user_regs *regs, union hsr hsr);
+    bool (*emulate_sysreg)(struct cpu_user_regs *regs, union hsr hsr);
     /* Maximum number of vCPU supported */
     const unsigned int max_vcpus;
 };
@@ -300,7 +300,7 @@ extern struct pending_irq *irq_to_pending(struct vcpu *v, unsigned int irq);
 extern struct pending_irq *spi_to_pending(struct domain *d, unsigned int irq);
 extern struct vgic_irq_rank *vgic_rank_offset(struct vcpu *v, int b, int n, int s);
 extern struct vgic_irq_rank *vgic_rank_irq(struct vcpu *v, unsigned int irq);
-extern int vgic_emulate(struct cpu_user_regs *regs, union hsr hsr);
+extern bool vgic_emulate(struct cpu_user_regs *regs, union hsr hsr);
 extern void vgic_disable_irqs(struct vcpu *v, uint32_t r, int n);
 extern void vgic_enable_irqs(struct vcpu *v, uint32_t r, int n);
 extern void register_vgic_ops(struct domain *d, const struct vgic_ops *ops);