From: Greg Kroah-Hartman Date: Mon, 14 Jun 2021 08:41:56 +0000 (+0200) Subject: 4.9-stable patches X-Git-Tag: v4.4.273~29 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f3da36ffe63b472924ce2aad2b11d9ef1914f880;p=thirdparty%2Fkernel%2Fstable-queue.git 4.9-stable patches added patches: kvm-fix-previous-commit-for-32-bit-builds.patch --- diff --git a/queue-4.9/kvm-fix-previous-commit-for-32-bit-builds.patch b/queue-4.9/kvm-fix-previous-commit-for-32-bit-builds.patch new file mode 100644 index 00000000000..c8e74a939b7 --- /dev/null +++ b/queue-4.9/kvm-fix-previous-commit-for-32-bit-builds.patch @@ -0,0 +1,33 @@ +From 4422829e8053068e0225e4d0ef42dc41ea7c9ef5 Mon Sep 17 00:00:00 2001 +From: Paolo Bonzini +Date: Wed, 9 Jun 2021 01:49:13 -0400 +Subject: kvm: fix previous commit for 32-bit builds + +From: Paolo Bonzini + +commit 4422829e8053068e0225e4d0ef42dc41ea7c9ef5 upstream. + +array_index_nospec does not work for uint64_t on 32-bit builds. +However, the size of a memory slot must be less than 20 bits wide +on those system, since the memory slot must fit in the user +address space. So just store it in an unsigned long. + +Signed-off-by: Paolo Bonzini +Signed-off-by: Greg Kroah-Hartman +--- + include/linux/kvm_host.h | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/include/linux/kvm_host.h ++++ b/include/linux/kvm_host.h +@@ -939,8 +939,8 @@ __gfn_to_hva_memslot(struct kvm_memory_s + * table walks, do not let the processor speculate loads outside + * the guest's registered memslots. + */ +- unsigned long offset = array_index_nospec(gfn - slot->base_gfn, +- slot->npages); ++ unsigned long offset = gfn - slot->base_gfn; ++ offset = array_index_nospec(offset, slot->npages); + return slot->userspace_addr + offset * PAGE_SIZE; + } + diff --git a/queue-4.9/series b/queue-4.9/series index 416a63bf6dd..3f07834d070 100644 --- a/queue-4.9/series +++ b/queue-4.9/series @@ -34,3 +34,4 @@ regulator-core-resolve-supply-for-boot-on-always-on-regulators.patch perf-fix-data-race-between-pin_count-increment-decrement.patch nfs-fix-a-potential-null-dereference-in-nfs_get_clie.patch perf-session-correct-buffer-copying-when-peeking-eve.patch +kvm-fix-previous-commit-for-32-bit-builds.patch