From: Greg Kroah-Hartman Date: Wed, 26 Sep 2018 13:19:05 +0000 (+0200) Subject: 4.14-stable patches X-Git-Tag: v4.18.11~14 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=daaec9f57ac6ba93afdec1094692fbc01135a9d3;p=thirdparty%2Fkernel%2Fstable-queue.git 4.14-stable patches added patches: pci-aardvark-size-bridges-before-resources-allocation.patch sched-fair-fix-vruntime_normalized-for-remote-non-migration-wakeup.patch vmw_balloon-include-asm-io.h.patch --- diff --git a/queue-4.14/pci-aardvark-size-bridges-before-resources-allocation.patch b/queue-4.14/pci-aardvark-size-bridges-before-resources-allocation.patch new file mode 100644 index 00000000000..907d4e31ec2 --- /dev/null +++ b/queue-4.14/pci-aardvark-size-bridges-before-resources-allocation.patch @@ -0,0 +1,47 @@ +From 91a2968e245d6ba616db37001fa1a043078b1a65 Mon Sep 17 00:00:00 2001 +From: Zachary Zhang +Date: Fri, 29 Jun 2018 11:16:19 +0200 +Subject: PCI: aardvark: Size bridges before resources allocation + +From: Zachary Zhang + +commit 91a2968e245d6ba616db37001fa1a043078b1a65 upstream. + +The PCIE I/O and MEM resource allocation mechanism is that root bus +goes through the following steps: + +1. Check PCI bridges' range and computes I/O and Mem base/limits. + +2. Sort all subordinate devices I/O and MEM resource requirements and + allocate the resources and writes/updates subordinate devices' + requirements to PCI bridges I/O and Mem MEM/limits registers. + +Currently, PCI Aardvark driver only handles the second step and lacks +the first step, so there is an I/O and MEM resource allocation failure +when using a PCI switch. This commit fixes that by sizing bridges +before doing the resource allocation. + +Fixes: 8c39d710363c1 ("PCI: aardvark: Add Aardvark PCI host controller +driver") +Signed-off-by: Zachary Zhang +[Thomas: edit commit log.] +Signed-off-by: Thomas Petazzoni +Signed-off-by: Lorenzo Pieralisi +Cc: +Signed-off-by: Greg Kroah-Hartman + + +--- + drivers/pci/host/pci-aardvark.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/pci/host/pci-aardvark.c ++++ b/drivers/pci/host/pci-aardvark.c +@@ -954,6 +954,7 @@ static int advk_pcie_probe(struct platfo + + bus = bridge->bus; + ++ pci_bus_size_bridges(bus); + pci_bus_assign_resources(bus); + + list_for_each_entry(child, &bus->children, node) diff --git a/queue-4.14/sched-fair-fix-vruntime_normalized-for-remote-non-migration-wakeup.patch b/queue-4.14/sched-fair-fix-vruntime_normalized-for-remote-non-migration-wakeup.patch new file mode 100644 index 00000000000..4b4176359be --- /dev/null +++ b/queue-4.14/sched-fair-fix-vruntime_normalized-for-remote-non-migration-wakeup.patch @@ -0,0 +1,68 @@ +From d0cdb3ce8834332d918fc9c8ff74f8a169ec9abe Mon Sep 17 00:00:00 2001 +From: Steve Muckle +Date: Fri, 31 Aug 2018 15:42:17 -0700 +Subject: sched/fair: Fix vruntime_normalized() for remote non-migration wakeup + +From: Steve Muckle + +commit d0cdb3ce8834332d918fc9c8ff74f8a169ec9abe upstream. + +When a task which previously ran on a given CPU is remotely queued to +wake up on that same CPU, there is a period where the task's state is +TASK_WAKING and its vruntime is not normalized. This is not accounted +for in vruntime_normalized() which will cause an error in the task's +vruntime if it is switched from the fair class during this time. + +For example if it is boosted to RT priority via rt_mutex_setprio(), +rq->min_vruntime will not be subtracted from the task's vruntime but +it will be added again when the task returns to the fair class. The +task's vruntime will have been erroneously doubled and the effective +priority of the task will be reduced. + +Note this will also lead to inflation of all vruntimes since the doubled +vruntime value will become the rq's min_vruntime when other tasks leave +the rq. This leads to repeated doubling of the vruntime and priority +penalty. + +Fix this by recognizing a WAKING task's vruntime as normalized only if +sched_remote_wakeup is true. This indicates a migration, in which case +the vruntime would have been normalized in migrate_task_rq_fair(). + +Based on a similar patch from John Dias . + +Suggested-by: Peter Zijlstra +Tested-by: Dietmar Eggemann +Signed-off-by: Steve Muckle +Signed-off-by: Peter Zijlstra (Intel) +Cc: Chris Redpath +Cc: John Dias +Cc: Linus Torvalds +Cc: Miguel de Dios +Cc: Morten Rasmussen +Cc: Patrick Bellasi +Cc: Paul Turner +Cc: Quentin Perret +Cc: Thomas Gleixner +Cc: Todd Kjos +Cc: kernel-team@android.com +Fixes: b5179ac70de8 ("sched/fair: Prepare to fix fairness problems on migration") +Link: http://lkml.kernel.org/r/20180831224217.169476-1-smuckle@google.com +Signed-off-by: Ingo Molnar +Signed-off-by: Greg Kroah-Hartman + +--- + kernel/sched/fair.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +--- a/kernel/sched/fair.c ++++ b/kernel/sched/fair.c +@@ -9137,7 +9137,8 @@ static inline bool vruntime_normalized(s + * - A task which has been woken up by try_to_wake_up() and + * waiting for actually being woken up by sched_ttwu_pending(). + */ +- if (!se->sum_exec_runtime || p->state == TASK_WAKING) ++ if (!se->sum_exec_runtime || ++ (p->state == TASK_WAKING && p->sched_remote_wakeup)) + return true; + + return false; diff --git a/queue-4.14/series b/queue-4.14/series index 6d408a1f303..ba11613d47c 100644 --- a/queue-4.14/series +++ b/queue-4.14/series @@ -56,4 +56,7 @@ ext4-fix-online-resize-s-handling-of-a-too-small-final-block-group.patch ext4-fix-online-resizing-for-bigalloc-file-systems-with-a-1k-block-size.patch ext4-don-t-mark-mmp-buffer-head-dirty.patch ext4-show-test_dummy_encryption-mount-option-in-proc-mounts.patch +sched-fair-fix-vruntime_normalized-for-remote-non-migration-wakeup.patch +pci-aardvark-size-bridges-before-resources-allocation.patch +vmw_balloon-include-asm-io.h.patch crypto-x86-aegis-morus-do-not-require-osxsave-for-sse2.patch diff --git a/queue-4.14/vmw_balloon-include-asm-io.h.patch b/queue-4.14/vmw_balloon-include-asm-io.h.patch new file mode 100644 index 00000000000..7f6bf4474d9 --- /dev/null +++ b/queue-4.14/vmw_balloon-include-asm-io.h.patch @@ -0,0 +1,32 @@ +From a3b92ee6fc171d7c9d9b6b829b7fef169210440c Mon Sep 17 00:00:00 2001 +From: Nadav Amit +Date: Thu, 13 Sep 2018 13:18:52 -0700 +Subject: vmw_balloon: include asm/io.h + +From: Nadav Amit + +commit a3b92ee6fc171d7c9d9b6b829b7fef169210440c upstream. + +Fix a build error due to missing virt_to_phys() + +Reported-by: kbuild test robot +Fixes: f0a1bf29d821b ("vmw_balloon: fix inflation with batching") +Cc: stable@vger.kernel.org +Cc: Xavier Deguillard +Signed-off-by: Nadav Amit +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/misc/vmw_balloon.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/misc/vmw_balloon.c ++++ b/drivers/misc/vmw_balloon.c +@@ -45,6 +45,7 @@ + #include + #include + #include ++#include + #include + + MODULE_AUTHOR("VMware, Inc.");