[Xen-devel,05/13] xen/arm: vgic: Switch vgic_to_sgi return from int to bool and progate up to...

Message ID 1481114033-11024-6-git-send-email-julien.grall@arm.com
State New
Headers show

Commit Message

Julien Grall Dec. 7, 2016, 12:33 p.m.
vgic_v{2,3}_to_sgi.

vgic_*to_sgi functions 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>
---
 xen/arch/arm/vgic-v2.c     | 4 ++--
 xen/arch/arm/vgic-v3.c     | 2 +-
 xen/arch/arm/vgic.c        | 8 ++++----
 xen/include/asm-arm/vgic.h | 6 +++---
 4 files changed, 10 insertions(+), 10 deletions(-)

Comments

Stefano Stabellini Dec. 7, 2016, 9:55 p.m. | #1
On Wed, 7 Dec 2016, Julien Grall wrote:
> vgic_v{2,3}_to_sgi.
> 
> vgic_*to_sgi functions 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-v2.c     | 4 ++--
>  xen/arch/arm/vgic-v3.c     | 2 +-
>  xen/arch/arm/vgic.c        | 8 ++++----
>  xen/include/asm-arm/vgic.h | 6 +++---
>  4 files changed, 10 insertions(+), 10 deletions(-)
> 
> diff --git a/xen/arch/arm/vgic-v2.c b/xen/arch/arm/vgic-v2.c
> index c6d280e..3dbcfe8 100644
> --- a/xen/arch/arm/vgic-v2.c
> +++ b/xen/arch/arm/vgic-v2.c
> @@ -374,7 +374,7 @@ read_reserved:
>      return 1;
>  }
>  
> -static int vgic_v2_to_sgi(struct vcpu *v, register_t sgir)
> +static bool vgic_v2_to_sgi(struct vcpu *v, register_t sgir)
>  {
>  
>      int virq;
> @@ -403,7 +403,7 @@ static int vgic_v2_to_sgi(struct vcpu *v, register_t sgir)
>          printk(XENLOG_G_DEBUG
>                 "%pv: vGICD: unhandled GICD_SGIR write %"PRIregister" with wrong mode\n",
>                 v, sgir);
> -        return 0;
> +        return false;
>      }
>  
>      return vgic_to_sgi(v, sgir, sgi_mode, virq, &target);
> diff --git a/xen/arch/arm/vgic-v3.c b/xen/arch/arm/vgic-v3.c
> index ec038a3..17c3000 100644
> --- a/xen/arch/arm/vgic-v3.c
> +++ b/xen/arch/arm/vgic-v3.c
> @@ -1269,7 +1269,7 @@ write_reserved:
>      return 1;
>  }
>  
> -static int vgic_v3_to_sgi(struct vcpu *v, register_t sgir)
> +static bool vgic_v3_to_sgi(struct vcpu *v, register_t sgir)
>  {
>      int virq;
>      int irqmode;
> diff --git a/xen/arch/arm/vgic.c b/xen/arch/arm/vgic.c
> index 84735a9..3e1774d 100644
> --- a/xen/arch/arm/vgic.c
> +++ b/xen/arch/arm/vgic.c
> @@ -393,8 +393,8 @@ void vgic_enable_irqs(struct vcpu *v, uint32_t r, int n)
>      }
>  }
>  
> -int vgic_to_sgi(struct vcpu *v, register_t sgir, enum gic_sgi_mode irqmode, int virq,
> -                const struct sgi_target *target)
> +bool vgic_to_sgi(struct vcpu *v, register_t sgir, enum gic_sgi_mode irqmode,
> +                 int virq, const struct sgi_target *target)
>  {
>      struct domain *d = v->domain;
>      int vcpuid;
> @@ -440,10 +440,10 @@ int vgic_to_sgi(struct vcpu *v, register_t sgir, enum gic_sgi_mode irqmode, int
>          gprintk(XENLOG_WARNING,
>                  "vGICD:unhandled GICD_SGIR write %"PRIregister" \
>                   with wrong mode\n", sgir);
> -        return 0;
> +        return false;
>      }
>  
> -    return 1;
> +    return true;
>  }
>  
>  struct pending_irq *irq_to_pending(struct vcpu *v, unsigned int irq)
> diff --git a/xen/include/asm-arm/vgic.h b/xen/include/asm-arm/vgic.h
> index 1f371c8..83843fa 100644
> --- a/xen/include/asm-arm/vgic.h
> +++ b/xen/include/asm-arm/vgic.h
> @@ -309,9 +309,9 @@ int vgic_v3_init(struct domain *d, int *mmio_count);
>  
>  extern int domain_vgic_register(struct domain *d, int *mmio_count);
>  extern int vcpu_vgic_free(struct vcpu *v);
> -extern int vgic_to_sgi(struct vcpu *v, register_t sgir,
> -                       enum gic_sgi_mode irqmode, int virq,
> -                       const struct sgi_target *target);
> +extern bool vgic_to_sgi(struct vcpu *v, register_t sgir,
> +                        enum gic_sgi_mode irqmode, int virq,
> +                        const struct sgi_target *target);
>  extern void vgic_migrate_irq(struct vcpu *old, struct vcpu *new, unsigned int irq);
>  
>  /* Reserve a specific guest vIRQ */
> -- 
> 1.9.1
>
Stefano Stabellini Dec. 7, 2016, 10:02 p.m. | #2
On Wed, 7 Dec 2016, Stefano Stabellini wrote:
> On Wed, 7 Dec 2016, Julien Grall wrote:
> > vgic_v{2,3}_to_sgi.
> > 
> > vgic_*to_sgi functions 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>

Actually, you missed one see below.


> > ---
> >  xen/arch/arm/vgic-v2.c     | 4 ++--
> >  xen/arch/arm/vgic-v3.c     | 2 +-
> >  xen/arch/arm/vgic.c        | 8 ++++----
> >  xen/include/asm-arm/vgic.h | 6 +++---
> >  4 files changed, 10 insertions(+), 10 deletions(-)
> > 
> > diff --git a/xen/arch/arm/vgic-v2.c b/xen/arch/arm/vgic-v2.c
> > index c6d280e..3dbcfe8 100644
> > --- a/xen/arch/arm/vgic-v2.c
> > +++ b/xen/arch/arm/vgic-v2.c
> > @@ -374,7 +374,7 @@ read_reserved:
> >      return 1;
> >  }
> >  
> > -static int vgic_v2_to_sgi(struct vcpu *v, register_t sgir)
> > +static bool vgic_v2_to_sgi(struct vcpu *v, register_t sgir)
> >  {
> >  
> >      int virq;
> > @@ -403,7 +403,7 @@ static int vgic_v2_to_sgi(struct vcpu *v, register_t sgir)
> >          printk(XENLOG_G_DEBUG
> >                 "%pv: vGICD: unhandled GICD_SGIR write %"PRIregister" with wrong mode\n",
> >                 v, sgir);
> > -        return 0;
> > +        return false;
> >      }
> >  
> >      return vgic_to_sgi(v, sgir, sgi_mode, virq, &target);
> > diff --git a/xen/arch/arm/vgic-v3.c b/xen/arch/arm/vgic-v3.c
> > index ec038a3..17c3000 100644
> > --- a/xen/arch/arm/vgic-v3.c
> > +++ b/xen/arch/arm/vgic-v3.c
> > @@ -1269,7 +1269,7 @@ write_reserved:
> >      return 1;
> >  }
> >  
> > -static int vgic_v3_to_sgi(struct vcpu *v, register_t sgir)
> > +static bool vgic_v3_to_sgi(struct vcpu *v, register_t sgir)
> >  {
> >      int virq;
> >      int irqmode;

You missed a 0 to false change here, if you don't mind, I'll do it.


> > diff --git a/xen/arch/arm/vgic.c b/xen/arch/arm/vgic.c
> > index 84735a9..3e1774d 100644
> > --- a/xen/arch/arm/vgic.c
> > +++ b/xen/arch/arm/vgic.c
> > @@ -393,8 +393,8 @@ void vgic_enable_irqs(struct vcpu *v, uint32_t r, int n)
> >      }
> >  }
> >  
> > -int vgic_to_sgi(struct vcpu *v, register_t sgir, enum gic_sgi_mode irqmode, int virq,
> > -                const struct sgi_target *target)
> > +bool vgic_to_sgi(struct vcpu *v, register_t sgir, enum gic_sgi_mode irqmode,
> > +                 int virq, const struct sgi_target *target)
> >  {
> >      struct domain *d = v->domain;
> >      int vcpuid;
> > @@ -440,10 +440,10 @@ int vgic_to_sgi(struct vcpu *v, register_t sgir, enum gic_sgi_mode irqmode, int
> >          gprintk(XENLOG_WARNING,
> >                  "vGICD:unhandled GICD_SGIR write %"PRIregister" \
> >                   with wrong mode\n", sgir);
> > -        return 0;
> > +        return false;
> >      }
> >  
> > -    return 1;
> > +    return true;
> >  }
> >  
> >  struct pending_irq *irq_to_pending(struct vcpu *v, unsigned int irq)
> > diff --git a/xen/include/asm-arm/vgic.h b/xen/include/asm-arm/vgic.h
> > index 1f371c8..83843fa 100644
> > --- a/xen/include/asm-arm/vgic.h
> > +++ b/xen/include/asm-arm/vgic.h
> > @@ -309,9 +309,9 @@ int vgic_v3_init(struct domain *d, int *mmio_count);
> >  
> >  extern int domain_vgic_register(struct domain *d, int *mmio_count);
> >  extern int vcpu_vgic_free(struct vcpu *v);
> > -extern int vgic_to_sgi(struct vcpu *v, register_t sgir,
> > -                       enum gic_sgi_mode irqmode, int virq,
> > -                       const struct sgi_target *target);
> > +extern bool vgic_to_sgi(struct vcpu *v, register_t sgir,
> > +                        enum gic_sgi_mode irqmode, int virq,
> > +                        const struct sgi_target *target);
> >  extern void vgic_migrate_irq(struct vcpu *old, struct vcpu *new, unsigned int irq);
> >  
> >  /* Reserve a specific guest vIRQ */
> > -- 
> > 1.9.1
> > 
>

Patch hide | download patch | download mbox

diff --git a/xen/arch/arm/vgic-v2.c b/xen/arch/arm/vgic-v2.c
index c6d280e..3dbcfe8 100644
--- a/xen/arch/arm/vgic-v2.c
+++ b/xen/arch/arm/vgic-v2.c
@@ -374,7 +374,7 @@  read_reserved:
     return 1;
 }
 
-static int vgic_v2_to_sgi(struct vcpu *v, register_t sgir)
+static bool vgic_v2_to_sgi(struct vcpu *v, register_t sgir)
 {
 
     int virq;
@@ -403,7 +403,7 @@  static int vgic_v2_to_sgi(struct vcpu *v, register_t sgir)
         printk(XENLOG_G_DEBUG
                "%pv: vGICD: unhandled GICD_SGIR write %"PRIregister" with wrong mode\n",
                v, sgir);
-        return 0;
+        return false;
     }
 
     return vgic_to_sgi(v, sgir, sgi_mode, virq, &target);
diff --git a/xen/arch/arm/vgic-v3.c b/xen/arch/arm/vgic-v3.c
index ec038a3..17c3000 100644
--- a/xen/arch/arm/vgic-v3.c
+++ b/xen/arch/arm/vgic-v3.c
@@ -1269,7 +1269,7 @@  write_reserved:
     return 1;
 }
 
-static int vgic_v3_to_sgi(struct vcpu *v, register_t sgir)
+static bool vgic_v3_to_sgi(struct vcpu *v, register_t sgir)
 {
     int virq;
     int irqmode;
diff --git a/xen/arch/arm/vgic.c b/xen/arch/arm/vgic.c
index 84735a9..3e1774d 100644
--- a/xen/arch/arm/vgic.c
+++ b/xen/arch/arm/vgic.c
@@ -393,8 +393,8 @@  void vgic_enable_irqs(struct vcpu *v, uint32_t r, int n)
     }
 }
 
-int vgic_to_sgi(struct vcpu *v, register_t sgir, enum gic_sgi_mode irqmode, int virq,
-                const struct sgi_target *target)
+bool vgic_to_sgi(struct vcpu *v, register_t sgir, enum gic_sgi_mode irqmode,
+                 int virq, const struct sgi_target *target)
 {
     struct domain *d = v->domain;
     int vcpuid;
@@ -440,10 +440,10 @@  int vgic_to_sgi(struct vcpu *v, register_t sgir, enum gic_sgi_mode irqmode, int
         gprintk(XENLOG_WARNING,
                 "vGICD:unhandled GICD_SGIR write %"PRIregister" \
                  with wrong mode\n", sgir);
-        return 0;
+        return false;
     }
 
-    return 1;
+    return true;
 }
 
 struct pending_irq *irq_to_pending(struct vcpu *v, unsigned int irq)
diff --git a/xen/include/asm-arm/vgic.h b/xen/include/asm-arm/vgic.h
index 1f371c8..83843fa 100644
--- a/xen/include/asm-arm/vgic.h
+++ b/xen/include/asm-arm/vgic.h
@@ -309,9 +309,9 @@  int vgic_v3_init(struct domain *d, int *mmio_count);
 
 extern int domain_vgic_register(struct domain *d, int *mmio_count);
 extern int vcpu_vgic_free(struct vcpu *v);
-extern int vgic_to_sgi(struct vcpu *v, register_t sgir,
-                       enum gic_sgi_mode irqmode, int virq,
-                       const struct sgi_target *target);
+extern bool vgic_to_sgi(struct vcpu *v, register_t sgir,
+                        enum gic_sgi_mode irqmode, int virq,
+                        const struct sgi_target *target);
 extern void vgic_migrate_irq(struct vcpu *old, struct vcpu *new, unsigned int irq);
 
 /* Reserve a specific guest vIRQ */