summaryrefslogtreecommitdiffstats
path: root/virt
diff options
context:
space:
mode:
authorMarc Zyngier <marc.zyngier@arm.com>2017-11-16 17:58:18 +0000
committerChristoffer Dall <christoffer.dall@linaro.org>2017-11-29 16:46:15 +0100
commit686f294f2f1ae40705283dd413ca1e4c14f20f93 (patch)
tree6b81fe604cd84c8c4dbe6cc9f5c2fef6bdf3ffdd /virt
parent64afe6e9eb4841f35317da4393de21a047a883b3 (diff)
downloadlinux-stable-686f294f2f1ae40705283dd413ca1e4c14f20f93.tar.gz
linux-stable-686f294f2f1ae40705283dd413ca1e4c14f20f93.tar.bz2
linux-stable-686f294f2f1ae40705283dd413ca1e4c14f20f93.zip
KVM: arm/arm64: vgic-its: Check result of allocation before use
We miss a test against NULL after allocation. Fixes: 6d03a68f8054 ("KVM: arm64: vgic-its: Turn device_id validation into generic ID validation") Cc: stable@vger.kernel.org # 4.8 Reported-by: AKASHI Takahiro <takahiro.akashi@linaro.org> Acked-by: Christoffer Dall <christoffer.dall@linaro.org> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Diffstat (limited to 'virt')
-rw-r--r--virt/kvm/arm/vgic/vgic-its.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/virt/kvm/arm/vgic/vgic-its.c b/virt/kvm/arm/vgic/vgic-its.c
index cb2d0a2dbe5a..8e633bd9cc1e 100644
--- a/virt/kvm/arm/vgic/vgic-its.c
+++ b/virt/kvm/arm/vgic/vgic-its.c
@@ -821,6 +821,8 @@ static int vgic_its_alloc_collection(struct vgic_its *its,
return E_ITS_MAPC_COLLECTION_OOR;
collection = kzalloc(sizeof(*collection), GFP_KERNEL);
+ if (!collection)
+ return -ENOMEM;
collection->collection_id = coll_id;
collection->target_addr = COLLECTION_NOT_MAPPED;