From de0e5ee2cfedf02b9c72f2991db2a206cc1b5cca Mon Sep 17 00:00:00 2001 From: Kyle McMartin Date: Thu, 4 Dec 2014 12:36:22 -0500 Subject: [PATCH] don't be an idiot kyle --- arm64-vgic-error-to-info.patch | 40 ++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 arm64-vgic-error-to-info.patch diff --git a/arm64-vgic-error-to-info.patch b/arm64-vgic-error-to-info.patch new file mode 100644 index 000000000..4449e3e94 --- /dev/null +++ b/arm64-vgic-error-to-info.patch @@ -0,0 +1,40 @@ +commit 701e24e5a9e59b17bbfc9a3bdbd61f346cd468ea +Author: Donald Dutile +Date: Tue Sep 16 18:53:48 2014 -0400 + + arm64: kvm: Change vgic resource size error to info + + A new check was added to upstream to ensure a full + kernel page was allocated to the vgic. The check failed + kvm configuration if the condition wasn't met. + This 'feature' has been around and there isn't a security + issue in Acadia. Change error to info & continue configuration + for now. + A future patch using ACPI &/or a DT update will make this patch + go away in a future snap release. + + Signed-off-by: Donald Dutile + +diff --git a/virt/kvm/arm/vgic-v2.c b/virt/kvm/arm/vgic-v2.c +index 416baed..f43488c 100644 +--- a/virt/kvm/arm/vgic-v2.c ++++ b/virt/kvm/arm/vgic-v2.c +@@ -240,11 +240,18 @@ int vgic_v2_probe(struct device_node *vgic_node, + } + + if (!PAGE_ALIGNED(resource_size(&vcpu_res))) { ++#ifdef 0 /* not for upstream, firmware fix */ + kvm_err("GICV size 0x%llx not a multiple of page size 0x%lx\n", + (unsigned long long)resource_size(&vcpu_res), + PAGE_SIZE); + ret = -ENXIO; + goto out_unmap; ++#else ++ kvm_info("GICV size 0x%llx not a multiple of page size 0x%lx\n", ++ (unsigned long long)resource_size(&vcpu_res), ++ PAGE_SIZE); ++ kvm_info("Update DT to assign GICV a multiple of kernel page size \n"); ++#endif + } + + vgic->vcpu_base = vcpu_res.start;