diff mbox

[v2,12/17] accel: Move accel init/allowed code to separate function

Message ID 1409344310-5441-13-git-send-email-ehabkost@redhat.com
State New
Headers show

Commit Message

Eduardo Habkost Aug. 29, 2014, 8:31 p.m. UTC
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
 hw/core/accel.c | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

Comments

Paolo Bonzini Sept. 26, 2014, 3:05 p.m. UTC | #1
Il 29/08/2014 22:31, Eduardo Habkost ha scritto:
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
> ---
>  hw/core/accel.c | 15 ++++++++++++---
>  1 file changed, 12 insertions(+), 3 deletions(-)
> 
> diff --git a/hw/core/accel.c b/hw/core/accel.c
> index aeb779a..5817c3c 100644
> --- a/hw/core/accel.c
> +++ b/hw/core/accel.c
> @@ -57,6 +57,17 @@ static AccelClass *accel_find(const char *opt_name)
>      return ac;
>  }
>  
> +static int accel_init(AccelClass *acc, MachineClass *mc)
> +{
> +    int ret;
> +    *(acc->allowed) = true;
> +    ret = acc->init(mc);
> +    if (ret < 0) {
> +        *(acc->allowed) = false;
> +    }
> +    return ret;
> +}
> +
>  int configure_accelerator(MachineClass *mc)
>  {
>      const char *p;
> @@ -87,14 +98,12 @@ int configure_accelerator(MachineClass *mc)
>                     acc->name);
>              continue;
>          }
> -        *(acc->allowed) = true;
> -        ret = acc->init(mc);
> +        ret = accel_init(acc, mc);
>          if (ret < 0) {
>              init_failed = true;
>              fprintf(stderr, "failed to initialize %s: %s\n",
>                      acc->name,
>                      strerror(-ret));
> -            *(acc->allowed) = false;
>          } else {
>              accel_initialised = true;
>          }
> 

Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
diff mbox

Patch

diff --git a/hw/core/accel.c b/hw/core/accel.c
index aeb779a..5817c3c 100644
--- a/hw/core/accel.c
+++ b/hw/core/accel.c
@@ -57,6 +57,17 @@  static AccelClass *accel_find(const char *opt_name)
     return ac;
 }
 
+static int accel_init(AccelClass *acc, MachineClass *mc)
+{
+    int ret;
+    *(acc->allowed) = true;
+    ret = acc->init(mc);
+    if (ret < 0) {
+        *(acc->allowed) = false;
+    }
+    return ret;
+}
+
 int configure_accelerator(MachineClass *mc)
 {
     const char *p;
@@ -87,14 +98,12 @@  int configure_accelerator(MachineClass *mc)
                    acc->name);
             continue;
         }
-        *(acc->allowed) = true;
-        ret = acc->init(mc);
+        ret = accel_init(acc, mc);
         if (ret < 0) {
             init_failed = true;
             fprintf(stderr, "failed to initialize %s: %s\n",
                     acc->name,
                     strerror(-ret));
-            *(acc->allowed) = false;
         } else {
             accel_initialised = true;
         }