From: Fabian Grünbichler Date: Sat, 6 Jan 2018 14:10:22 +0000 (+0100) Subject: reorder patches X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=19894df472f0256c102e5b308e61a842a9cc5106;hp=4536c7a7edff6ecae18808360b0f80cd029aadd4;p=pve-kernel.git reorder patches numbering got messed up in the previous upload --- diff --git a/patches/kernel/0001-Make-mkcompile_h-accept-an-alternate-timestamp-strin.patch b/patches/kernel/0001-Make-mkcompile_h-accept-an-alternate-timestamp-strin.patch index 77432b6..d8bbc11 100644 --- a/patches/kernel/0001-Make-mkcompile_h-accept-an-alternate-timestamp-strin.patch +++ b/patches/kernel/0001-Make-mkcompile_h-accept-an-alternate-timestamp-strin.patch @@ -1,7 +1,7 @@ -From c49905d2761e1fce33b211dca7b7d9f1f1f2829d Mon Sep 17 00:00:00 2001 +From 8e8e48c6f1ec020ff47f50aa49acab6c850cc70e Mon Sep 17 00:00:00 2001 From: Ben Hutchings Date: Tue, 12 May 2015 19:29:22 +0100 -Subject: [PATCH 01/10] Make mkcompile_h accept an alternate timestamp string +Subject: [PATCH 01/14] Make mkcompile_h accept an alternate timestamp string MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/kernel/0002-bridge-keep-MAC-of-first-assigned-port.patch b/patches/kernel/0002-bridge-keep-MAC-of-first-assigned-port.patch index 95ff662..69846a0 100644 --- a/patches/kernel/0002-bridge-keep-MAC-of-first-assigned-port.patch +++ b/patches/kernel/0002-bridge-keep-MAC-of-first-assigned-port.patch @@ -1,7 +1,7 @@ -From fcf6881a32da892f831d277e13f8a30dfaa280c4 Mon Sep 17 00:00:00 2001 +From d9166325bf8b4d5a4c7aeb6a15c30c90ffc28347 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= Date: Thu, 14 Sep 2017 11:02:18 +0200 -Subject: [PATCH 02/10] bridge: keep MAC of first assigned port +Subject: [PATCH 02/14] bridge: keep MAC of first assigned port MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/kernel/0003-pci-Enable-overrides-for-missing-ACS-capabilities-4..patch b/patches/kernel/0003-pci-Enable-overrides-for-missing-ACS-capabilities-4..patch index f459e2a..562bde8 100644 --- a/patches/kernel/0003-pci-Enable-overrides-for-missing-ACS-capabilities-4..patch +++ b/patches/kernel/0003-pci-Enable-overrides-for-missing-ACS-capabilities-4..patch @@ -1,7 +1,7 @@ -From 3fc2d021182ae384089c4d8e5e0f1528198fdc60 Mon Sep 17 00:00:00 2001 +From 469fd3d2d05583a20c8210354cf0ad6cbd2360f7 Mon Sep 17 00:00:00 2001 From: Mark Weiman Date: Sat, 29 Jul 2017 09:15:32 -0400 -Subject: [PATCH 03/10] pci: Enable overrides for missing ACS capabilities +Subject: [PATCH 03/14] pci: Enable overrides for missing ACS capabilities (4.12+) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/kernel/0004-kvm-disable-default-dynamic-halt-polling-growth.patch b/patches/kernel/0004-kvm-disable-default-dynamic-halt-polling-growth.patch index 8d39309..836edf3 100644 --- a/patches/kernel/0004-kvm-disable-default-dynamic-halt-polling-growth.patch +++ b/patches/kernel/0004-kvm-disable-default-dynamic-halt-polling-growth.patch @@ -1,7 +1,7 @@ -From 71d47f9926c851d3ab2671a4af360073a5c42092 Mon Sep 17 00:00:00 2001 +From 6003e55f5d4762a819d6691de92d75d29b6c0d58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= Date: Thu, 14 Sep 2017 11:09:58 +0200 -Subject: [PATCH 04/10] kvm: disable default dynamic halt polling growth +Subject: [PATCH 04/14] kvm: disable default dynamic halt polling growth MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/kernel/0005-cgroup-Add-mount-flag-to-enable-cpuset-to-use-v2-beh.patch b/patches/kernel/0005-cgroup-Add-mount-flag-to-enable-cpuset-to-use-v2-beh.patch index cde7e91..8ce26f0 100644 --- a/patches/kernel/0005-cgroup-Add-mount-flag-to-enable-cpuset-to-use-v2-beh.patch +++ b/patches/kernel/0005-cgroup-Add-mount-flag-to-enable-cpuset-to-use-v2-beh.patch @@ -1,7 +1,7 @@ -From e59875620529310ad6d9270baba50178d77d64ca Mon Sep 17 00:00:00 2001 +From f33ce8d7dcb3053b513003fb775d6457d30d4921 Mon Sep 17 00:00:00 2001 From: Waiman Long Date: Thu, 17 Aug 2017 15:33:09 -0400 -Subject: [PATCH 05/10] cgroup: Add mount flag to enable cpuset to use v2 +Subject: [PATCH 05/14] cgroup: Add mount flag to enable cpuset to use v2 behavior in v1 cgroup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/kernel/0006-cpuset-Allow-v2-behavior-in-v1-cgroup.patch b/patches/kernel/0006-cpuset-Allow-v2-behavior-in-v1-cgroup.patch index 9561e2c..3857e2d 100644 --- a/patches/kernel/0006-cpuset-Allow-v2-behavior-in-v1-cgroup.patch +++ b/patches/kernel/0006-cpuset-Allow-v2-behavior-in-v1-cgroup.patch @@ -1,7 +1,7 @@ -From 7bc70a1a94ea2c9fe9db6b33bd1fac100290b94f Mon Sep 17 00:00:00 2001 +From 98df2e6815f8bfb7fb07458a067ddc96e7fe917d Mon Sep 17 00:00:00 2001 From: Waiman Long Date: Thu, 17 Aug 2017 15:33:10 -0400 -Subject: [PATCH 06/10] cpuset: Allow v2 behavior in v1 cgroup +Subject: [PATCH 06/14] cpuset: Allow v2 behavior in v1 cgroup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/kernel/0007-KVM-x86-fix-APIC-page-invalidation.patch b/patches/kernel/0007-KVM-x86-fix-APIC-page-invalidation.patch index e53453c..33ce8b4 100644 --- a/patches/kernel/0007-KVM-x86-fix-APIC-page-invalidation.patch +++ b/patches/kernel/0007-KVM-x86-fix-APIC-page-invalidation.patch @@ -1,7 +1,7 @@ -From 4255a36150de32fd3a21f4030210f87a5f58caf1 Mon Sep 17 00:00:00 2001 +From b6f813dded8f92cf6df31e1bcad4600b11dd4ae3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= Date: Thu, 30 Nov 2017 19:05:45 +0100 -Subject: [PATCH 07/10] KVM: x86: fix APIC page invalidation +Subject: [PATCH 07/14] KVM: x86: fix APIC page invalidation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/kernel/0008-vhost-fix-skb-leak-in-handle_rx.patch b/patches/kernel/0008-vhost-fix-skb-leak-in-handle_rx.patch index 784bf99..9f9e15c 100644 --- a/patches/kernel/0008-vhost-fix-skb-leak-in-handle_rx.patch +++ b/patches/kernel/0008-vhost-fix-skb-leak-in-handle_rx.patch @@ -1,7 +1,7 @@ -From f490c15a1bd99597f97fcff35c5f528de38d5b1e Mon Sep 17 00:00:00 2001 +From 8ddb7f99e8c2ad80dbe3f9de01e8af5c310ae52d Mon Sep 17 00:00:00 2001 From: Wei Xu Date: Fri, 1 Dec 2017 05:10:36 -0500 -Subject: [PATCH 08/10] vhost: fix skb leak in handle_rx() +Subject: [PATCH 08/14] vhost: fix skb leak in handle_rx() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/kernel/0009-tun-free-skb-in-early-errors.patch b/patches/kernel/0009-tun-free-skb-in-early-errors.patch index 1090c06..c634149 100644 --- a/patches/kernel/0009-tun-free-skb-in-early-errors.patch +++ b/patches/kernel/0009-tun-free-skb-in-early-errors.patch @@ -1,7 +1,7 @@ -From afa7a3bd434708e76f9cc82ab84194fb85e86570 Mon Sep 17 00:00:00 2001 +From 442f5963a52060fcf86a73377c31a863738632dd Mon Sep 17 00:00:00 2001 From: Wei Xu Date: Fri, 1 Dec 2017 05:10:37 -0500 -Subject: [PATCH 09/10] tun: free skb in early errors +Subject: [PATCH 09/14] tun: free skb in early errors MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/kernel/0010-KVM-SVM-obey-guest-PAT.patch b/patches/kernel/0010-KVM-SVM-obey-guest-PAT.patch deleted file mode 100644 index eb6272d..0000000 --- a/patches/kernel/0010-KVM-SVM-obey-guest-PAT.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 08d71587b34c95d5461a6bdd946dc1dd46888bf3 Mon Sep 17 00:00:00 2001 -From: Paolo Bonzini -Date: Thu, 26 Oct 2017 09:13:27 +0200 -Subject: [PATCH 10/10] KVM: SVM: obey guest PAT -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -For many years some users of assigned devices have reported worse -performance on AMD processors with NPT than on AMD without NPT, -Intel or bare metal. - -The reason turned out to be that SVM is discarding the guest PAT -setting and uses the default (PA0=PA4=WB, PA1=PA5=WT, PA2=PA6=UC-, -PA3=UC). The guest might be using a different setting, and -especially might want write combining but isn't getting it -(instead getting slow UC or UC- accesses). - -Thanks a lot to geoff@hostfission.com for noticing the relation -to the g_pat setting. The patch has been tested also by a bunch -of people on VFIO users forums. - -Fixes: 709ddebf81cb40e3c36c6109a7892e8b93a09464 -Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=196409 -Cc: stable@vger.kernel.org -Signed-off-by: Paolo Bonzini -Reviewed-by: David Hildenbrand -Tested-by: Nick Sarnie -Signed-off-by: Radim Krčmář -(cherry picked from commit 15038e14724799b8c205beb5f20f9e54896013c3) -Signed-off-by: Fabian Grünbichler ---- - arch/x86/kvm/svm.c | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c -index af256b786a70..af09baa3d736 100644 ---- a/arch/x86/kvm/svm.c -+++ b/arch/x86/kvm/svm.c -@@ -3626,6 +3626,13 @@ static int svm_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) - u32 ecx = msr->index; - u64 data = msr->data; - switch (ecx) { -+ case MSR_IA32_CR_PAT: -+ if (!kvm_mtrr_valid(vcpu, MSR_IA32_CR_PAT, data)) -+ return 1; -+ vcpu->arch.pat = data; -+ svm->vmcb->save.g_pat = data; -+ mark_dirty(svm->vmcb, VMCB_NPT); -+ break; - case MSR_IA32_TSC: - kvm_write_tsc(vcpu, msr); - break; --- -2.14.2 - diff --git a/patches/kernel/0010-tap-free-skb-if-flags-error.patch b/patches/kernel/0010-tap-free-skb-if-flags-error.patch index c9521b3..d6afb9f 100644 --- a/patches/kernel/0010-tap-free-skb-if-flags-error.patch +++ b/patches/kernel/0010-tap-free-skb-if-flags-error.patch @@ -1,7 +1,7 @@ -From 68783aa6989756cda8e9e305292afbb9f4f5677c Mon Sep 17 00:00:00 2001 +From 3fe5d7c8bcba7d240e74c119c2c4ad1c696f205c Mon Sep 17 00:00:00 2001 From: Wei Xu Date: Fri, 1 Dec 2017 05:10:38 -0500 -Subject: [PATCH 10/13] tap: free skb if flags error +Subject: [PATCH 10/14] tap: free skb if flags error MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/kernel/0011-IB-core-Avoid-crash-on-pkey-enforcement-failed-in-re.patch b/patches/kernel/0011-IB-core-Avoid-crash-on-pkey-enforcement-failed-in-re.patch index c7e2422..27db5b6 100644 --- a/patches/kernel/0011-IB-core-Avoid-crash-on-pkey-enforcement-failed-in-re.patch +++ b/patches/kernel/0011-IB-core-Avoid-crash-on-pkey-enforcement-failed-in-re.patch @@ -1,5 +1,11 @@ +From 406a5590ca8c58f0f92927230285a3388e4527e4 Mon Sep 17 00:00:00 2001 From: Parav Pandit -Subject: [PATCH] IB/core: Avoid crash on pkey enforcement failed in received MADs +Date: Fri, 5 Jan 2018 23:51:12 +0100 +Subject: [PATCH 11/14] IB/core: Avoid crash on pkey enforcement failed in + received MADs +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit commit 89548bcafec7ecfeea58c553f0834b5d575a66eb upstream. diff --git a/patches/kernel/0012-IB-core-Don-t-enforce-PKey-security-on-SMI-MADs.patch b/patches/kernel/0012-IB-core-Don-t-enforce-PKey-security-on-SMI-MADs.patch index cbb5b84..56f8aca 100644 --- a/patches/kernel/0012-IB-core-Don-t-enforce-PKey-security-on-SMI-MADs.patch +++ b/patches/kernel/0012-IB-core-Don-t-enforce-PKey-security-on-SMI-MADs.patch @@ -1,7 +1,7 @@ -From c7da6e780b87220187630411bcda8049072ecbf2 Mon Sep 17 00:00:00 2001 +From 72083c18eb8824dd1d0580c1382d23f4fbc4ed33 Mon Sep 17 00:00:00 2001 From: Daniel Jurgens Date: Mon, 20 Nov 2017 16:47:45 -0600 -Subject: [PATCH 12/13] IB/core: Don't enforce PKey security on SMI MADs +Subject: [PATCH 12/14] IB/core: Don't enforce PKey security on SMI MADs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/kernel/0013-kvm-vmx-Reinstate-support-for-CPUs-without-virtual-N.patch b/patches/kernel/0013-kvm-vmx-Reinstate-support-for-CPUs-without-virtual-N.patch index d8cda5d..0c4096f 100644 --- a/patches/kernel/0013-kvm-vmx-Reinstate-support-for-CPUs-without-virtual-N.patch +++ b/patches/kernel/0013-kvm-vmx-Reinstate-support-for-CPUs-without-virtual-N.patch @@ -1,7 +1,7 @@ -From 6c42032f6917937fd440a6c21fe28781088aae5a Mon Sep 17 00:00:00 2001 +From 0140f5df6cd9e326f3009a16c1b66139b9bb3b45 Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Mon, 6 Nov 2017 13:31:12 +0100 -Subject: [PATCH 13/13] kvm: vmx: Reinstate support for CPUs without virtual +Subject: [PATCH 13/14] kvm: vmx: Reinstate support for CPUs without virtual NMI MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/kernel/0014-KVM-SVM-obey-guest-PAT.patch b/patches/kernel/0014-KVM-SVM-obey-guest-PAT.patch new file mode 100644 index 0000000..0dacf67 --- /dev/null +++ b/patches/kernel/0014-KVM-SVM-obey-guest-PAT.patch @@ -0,0 +1,56 @@ +From a0212ec7cc4bc2f88c4435cca881d21f2b079a80 Mon Sep 17 00:00:00 2001 +From: Paolo Bonzini +Date: Thu, 26 Oct 2017 09:13:27 +0200 +Subject: [PATCH 14/14] KVM: SVM: obey guest PAT +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +For many years some users of assigned devices have reported worse +performance on AMD processors with NPT than on AMD without NPT, +Intel or bare metal. + +The reason turned out to be that SVM is discarding the guest PAT +setting and uses the default (PA0=PA4=WB, PA1=PA5=WT, PA2=PA6=UC-, +PA3=UC). The guest might be using a different setting, and +especially might want write combining but isn't getting it +(instead getting slow UC or UC- accesses). + +Thanks a lot to geoff@hostfission.com for noticing the relation +to the g_pat setting. The patch has been tested also by a bunch +of people on VFIO users forums. + +Fixes: 709ddebf81cb40e3c36c6109a7892e8b93a09464 +Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=196409 +Cc: stable@vger.kernel.org +Signed-off-by: Paolo Bonzini +Reviewed-by: David Hildenbrand +Tested-by: Nick Sarnie +Signed-off-by: Radim Krčmář +(cherry picked from commit 15038e14724799b8c205beb5f20f9e54896013c3) +Signed-off-by: Fabian Grünbichler +--- + arch/x86/kvm/svm.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c +index af256b786a70..af09baa3d736 100644 +--- a/arch/x86/kvm/svm.c ++++ b/arch/x86/kvm/svm.c +@@ -3626,6 +3626,13 @@ static int svm_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) + u32 ecx = msr->index; + u64 data = msr->data; + switch (ecx) { ++ case MSR_IA32_CR_PAT: ++ if (!kvm_mtrr_valid(vcpu, MSR_IA32_CR_PAT, data)) ++ return 1; ++ vcpu->arch.pat = data; ++ svm->vmcb->save.g_pat = data; ++ mark_dirty(svm->vmcb, VMCB_NPT); ++ break; + case MSR_IA32_TSC: + kvm_write_tsc(vcpu, msr); + break; +-- +2.14.2 +