]> xenbits.xensource.com Git - xen.git/commitdiff
xen/arm: vgic: Check for vgic handler to be initialized before dereferencing it
authorOleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Mon, 28 Aug 2017 17:32:25 +0000 (20:32 +0300)
committerStefano Stabellini <sstabellini@kernel.org>
Fri, 15 Sep 2017 21:21:31 +0000 (14:21 -0700)
Since domain_vgic_free() can be called when the vgic_ops haven't been
initialised yet, always check that d->arch.vgic.handler is not a null.

Signed-off-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
xen/arch/arm/vgic.c

index 7a4e3cdc88504f643a93ec75d97a01d9ed19929c..d8acbbeaaa165a712b1ef1109059ec7f9b44df50 100644 (file)
@@ -187,7 +187,8 @@ void domain_vgic_free(struct domain *d)
         }
     }
 
-    d->arch.vgic.handler->domain_free(d);
+    if ( d->arch.vgic.handler )
+        d->arch.vgic.handler->domain_free(d);
     xfree(d->arch.vgic.shared_irqs);
     xfree(d->arch.vgic.pending_irqs);
     xfree(d->arch.vgic.allocated_irqs);