From: Oleksandr Tyshchenko Date: Mon, 28 Aug 2017 17:32:25 +0000 (+0300) Subject: xen/arm: vgic: Check for vgic handler to be initialized before dereferencing it X-Git-Tag: archive/raspbian/4.11.1-1+rpi1~1^2~66^2~1400 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=b1f1e492cd4231a1e9feedb7a35c62c063f7c510;p=xen.git xen/arm: vgic: Check for vgic handler to be initialized before dereferencing it 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 Signed-off-by: Stefano Stabellini Reviewed-by: Stefano Stabellini --- diff --git a/xen/arch/arm/vgic.c b/xen/arch/arm/vgic.c index 7a4e3cdc88..d8acbbeaaa 100644 --- a/xen/arch/arm/vgic.c +++ b/xen/arch/arm/vgic.c @@ -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);