From b0cc2e634c80ea717f8019deeca473eaca01ebae Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Mon, 7 Jul 2014 15:58:11 -0700 Subject: [PATCH] 3.15-stable patches added patches: arch-unicore32-mm-alignment.c-include-asm-pgtable.h-to-avoid-compiling-error.patch drivers-video-fbdev-fb-puv3.c-add-header-files-for-function-unifb_mmap.patch drm-i915-fix-display-power-sw-state-reporting.patch mm-numa-remove-bug_on-in-__handle_mm_fault.patch --- ...m-pgtable.h-to-avoid-compiling-error.patch | 43 +++++++++++++ ...header-files-for-function-unifb_mmap.patch | 50 +++++++++++++++ ...fix-display-power-sw-state-reporting.patch | 62 +++++++++++++++++++ ...o-ioctl-reports-correct-clean-status.patch | 36 ----------- ...a-remove-bug_on-in-__handle_mm_fault.patch | 51 +++++++++++++++ queue-3.15/series | 5 +- 6 files changed, 210 insertions(+), 37 deletions(-) create mode 100644 queue-3.15/arch-unicore32-mm-alignment.c-include-asm-pgtable.h-to-avoid-compiling-error.patch create mode 100644 queue-3.15/drivers-video-fbdev-fb-puv3.c-add-header-files-for-function-unifb_mmap.patch create mode 100644 queue-3.15/drm-i915-fix-display-power-sw-state-reporting.patch delete mode 100644 queue-3.15/md-make-sure-get_array_info-ioctl-reports-correct-clean-status.patch create mode 100644 queue-3.15/mm-numa-remove-bug_on-in-__handle_mm_fault.patch diff --git a/queue-3.15/arch-unicore32-mm-alignment.c-include-asm-pgtable.h-to-avoid-compiling-error.patch b/queue-3.15/arch-unicore32-mm-alignment.c-include-asm-pgtable.h-to-avoid-compiling-error.patch new file mode 100644 index 00000000000..cc43ac6ab3e --- /dev/null +++ b/queue-3.15/arch-unicore32-mm-alignment.c-include-asm-pgtable.h-to-avoid-compiling-error.patch @@ -0,0 +1,43 @@ +From 1ff38c56cbd095c4c0dfa581a859ba3557830f78 Mon Sep 17 00:00:00 2001 +From: Chen Gang +Date: Mon, 24 Mar 2014 20:17:44 +0800 +Subject: arch/unicore32/mm/alignment.c: include "asm/pgtable.h" to avoid compiling error + +From: Chen Gang + +commit 1ff38c56cbd095c4c0dfa581a859ba3557830f78 upstream. + +Need include "asm/pgtable.h" to include "asm-generic/pgtable-nopmd.h", +so can let 'pmd_t' defined. The related error with allmodconfig: + + CC arch/unicore32/mm/alignment.o + In file included from arch/unicore32/mm/alignment.c:24: + arch/unicore32/include/asm/tlbflush.h:135: error: expected .). before .*. token + arch/unicore32/include/asm/tlbflush.h:154: error: expected .). before .*. token + In file included from arch/unicore32/mm/alignment.c:27: + arch/unicore32/mm/mm.h:15: error: expected .=., .,., .;., .sm. or ._attribute__. before .*. token + arch/unicore32/mm/mm.h:20: error: expected .=., .,., .;., .sm. or ._attribute__. before .*. token + arch/unicore32/mm/mm.h:25: error: expected .=., .,., .;., .sm. or ._attribute__. before .*. token + make[1]: *** [arch/unicore32/mm/alignment.o] Error 1 + make: *** [arch/unicore32/mm] Error 2 + +Signed-off-by: Chen Gang +Acked-by: Xuetao Guan +Signed-off-by: Xuetao Guan +Cc: Guenter Roeck +Signed-off-by: Greg Kroah-Hartman + +--- + arch/unicore32/mm/alignment.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/arch/unicore32/mm/alignment.c ++++ b/arch/unicore32/mm/alignment.c +@@ -21,6 +21,7 @@ + #include + #include + ++#include + #include + #include + diff --git a/queue-3.15/drivers-video-fbdev-fb-puv3.c-add-header-files-for-function-unifb_mmap.patch b/queue-3.15/drivers-video-fbdev-fb-puv3.c-add-header-files-for-function-unifb_mmap.patch new file mode 100644 index 00000000000..665421b80c0 --- /dev/null +++ b/queue-3.15/drivers-video-fbdev-fb-puv3.c-add-header-files-for-function-unifb_mmap.patch @@ -0,0 +1,50 @@ +From fbc6c4a13bbfb420eedfdb26a0a859f9c07e8a7b Mon Sep 17 00:00:00 2001 +From: Zhichuang SUN +Date: Wed, 21 May 2014 14:13:30 +0800 +Subject: drivers/video/fbdev/fb-puv3.c: Add header files for function unifb_mmap + +From: Zhichuang SUN + +commit fbc6c4a13bbfb420eedfdb26a0a859f9c07e8a7b upstream. + +Function unifb_mmap calls functions which are defined in linux/mm.h +and asm/pgtable.h + +The related error (for unicore32 with unicore32_defconfig): + CC drivers/video/fbdev/fb-puv3.o + drivers/video/fbdev/fb-puv3.c: In function 'unifb_mmap': + drivers/video/fbdev/fb-puv3.c:646: error: implicit declaration of + function 'vm_iomap_memory' + drivers/video/fbdev/fb-puv3.c:646: error: implicit declaration of + function 'pgprot_noncached' + +Signed-off-by: Zhichuang Sun +Cc: Jean-Christophe Plagniol-Villard +Cc: Tomi Valkeinen +Cc: Jingoo Han +Cc: Daniel Vetter +Cc: Joe Perches +Cc: Laurent Pinchart +Cc: linux-fbdev@vger.kernel.org +Acked-by: Xuetao Guan +Signed-off-by: Tomi Valkeinen +Cc: Guenter Roeck +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/video/fbdev/fb-puv3.c | 2 ++ + 1 file changed, 2 insertions(+) + +--- a/drivers/video/fbdev/fb-puv3.c ++++ b/drivers/video/fbdev/fb-puv3.c +@@ -18,8 +18,10 @@ + #include + #include + #include ++#include + + #include ++#include + #include + + /* Platform_data reserved for unifb registers. */ diff --git a/queue-3.15/drm-i915-fix-display-power-sw-state-reporting.patch b/queue-3.15/drm-i915-fix-display-power-sw-state-reporting.patch new file mode 100644 index 00000000000..31bc6ba1084 --- /dev/null +++ b/queue-3.15/drm-i915-fix-display-power-sw-state-reporting.patch @@ -0,0 +1,62 @@ +From b8c000d9bf23e7c1155ef421f595d1cbc25262da Mon Sep 17 00:00:00 2001 +From: Imre Deak +Date: Mon, 2 Jun 2014 14:21:10 +0300 +Subject: drm/i915: fix display power sw state reporting + +From: Imre Deak + +commit b8c000d9bf23e7c1155ef421f595d1cbc25262da upstream. + +Atm, we refcount both power domains and power wells and +intel_display_power_enabled_sw() returns the power domain refcount. What +the callers are really interested in though is the sw state of the +underlying power wells. Due to this we will report incorrectly that a +given power domain is off if its power wells were enabled via another +power domain, for example POWER_DOMAIN_INIT which enables all power +wells. + +As a fix return instead the state based on the refcount of all power +wells included in the passed in power domain. + +References: https://bugs.freedesktop.org/show_bug.cgi?id=79505 +References: https://bugs.freedesktop.org/show_bug.cgi?id=79038 +Reported-by: Chris Wilson +Signed-off-by: Imre Deak +Reviewed-by: Damien Lespiau +Signed-off-by: Daniel Vetter +Acked-by: Jani Nikula +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/gpu/drm/i915/intel_pm.c | 17 ++++++++++++++++- + 1 file changed, 16 insertions(+), 1 deletion(-) + +--- a/drivers/gpu/drm/i915/intel_pm.c ++++ b/drivers/gpu/drm/i915/intel_pm.c +@@ -5313,10 +5313,25 @@ bool intel_display_power_enabled_sw(stru + enum intel_display_power_domain domain) + { + struct i915_power_domains *power_domains; ++ struct i915_power_well *power_well; ++ bool is_enabled; ++ int i; ++ ++ if (dev_priv->pm.suspended) ++ return false; + + power_domains = &dev_priv->power_domains; ++ is_enabled = true; ++ for_each_power_well_rev(i, power_well, BIT(domain), power_domains) { ++ if (power_well->always_on) ++ continue; + +- return power_domains->domain_use_count[domain]; ++ if (!power_well->count) { ++ is_enabled = false; ++ break; ++ } ++ } ++ return is_enabled; + } + + bool intel_display_power_enabled(struct drm_i915_private *dev_priv, diff --git a/queue-3.15/md-make-sure-get_array_info-ioctl-reports-correct-clean-status.patch b/queue-3.15/md-make-sure-get_array_info-ioctl-reports-correct-clean-status.patch deleted file mode 100644 index 63aca7677f0..00000000000 --- a/queue-3.15/md-make-sure-get_array_info-ioctl-reports-correct-clean-status.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 9bd359203210efeb5d8f0d81c155079f34b47449 Mon Sep 17 00:00:00 2001 -From: NeilBrown -Date: Wed, 2 Jul 2014 11:35:06 +1000 -Subject: md: make sure GET_ARRAY_INFO ioctl reports correct "clean" status - -From: NeilBrown - -commit 9bd359203210efeb5d8f0d81c155079f34b47449 upstream. - -If an array has a bitmap, the when we set the "has bitmap" flag we -incorrectly clear the "is clean" flag. - -"is clean" isn't really important when a bitmap is present, but it is -best to get it right anyway. - -Reported-by: George Duffield -Link: http://lkml.kernel.org/CAG__1a4MRV6gJL38XLAurtoSiD3rLBTmWpcS5HYvPpSfPR88UQ@mail.gmail.com -Fixes: 36fa30636fb84b209210299684e1be66d9e58217 (v2.6.14) -Signed-off-by: NeilBrown -Signed-off-by: Greg Kroah-Hartman - ---- - drivers/md/md.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/drivers/md/md.c -+++ b/drivers/md/md.c -@@ -5593,7 +5593,7 @@ static int get_array_info(struct mddev * - if (mddev->in_sync) - info.state = (1<bitmap && mddev->bitmap_info.offset) -- info.state = (1< +Date: Tue, 29 Apr 2014 15:36:15 -0400 +Subject: mm/numa: Remove BUG_ON() in __handle_mm_fault() + +From: Rik van Riel + +commit 107437febd495a50e2cd09c81bbaa84d30e57b07 upstream. + +Changing PTEs and PMDs to pte_numa & pmd_numa is done with the +mmap_sem held for reading, which means a pmd can be instantiated +and turned into a numa one while __handle_mm_fault() is examining +the value of old_pmd. + +If that happens, __handle_mm_fault() should just return and let +the page fault retry, instead of throwing an oops. This is +handled by the test for pmd_trans_huge(*pmd) below. + +Signed-off-by: Rik van Riel +Reviewed-by: Naoya Horiguchi +Reported-by: Sunil Pandey +Signed-off-by: Peter Zijlstra +Cc: Andrew Morton +Cc: Johannes Weiner +Cc: Kirill A. Shutemov +Cc: Linus Torvalds +Cc: Mel Gorman +Cc: linux-mm@kvack.org +Cc: lwoodman@redhat.com +Cc: dave.hansen@intel.com +Link: http://lkml.kernel.org/r/20140429153615.2d72098e@annuminas.surriel.com +Signed-off-by: Ingo Molnar +Patrick McLean +Signed-off-by: Greg Kroah-Hartman + +--- + mm/memory.c | 3 --- + 1 file changed, 3 deletions(-) + +--- a/mm/memory.c ++++ b/mm/memory.c +@@ -3920,9 +3920,6 @@ static int __handle_mm_fault(struct mm_s + } + } + +- /* THP should already have been handled */ +- BUG_ON(pmd_numa(*pmd)); +- + /* + * Use __pte_alloc instead of pte_alloc_map, because we can't + * run pte_offset_map on the pmd, if an huge pmd could diff --git a/queue-3.15/series b/queue-3.15/series index 27d01f836c8..443b13b7d81 100644 --- a/queue-3.15/series +++ b/queue-3.15/series @@ -106,7 +106,6 @@ tracing-uprobes-revert-support-mix-of-ftrace-and-perf.patch tracing-uprobes-fix-the-usage-of-uprobe_buffer_enable-in-probe_event_enable.patch btrfs-only-unlock-block-in-verify_parent_transid-if-we-locked-it.patch md-flush-writes-before-starting-a-recovery.patch -md-make-sure-get_array_info-ioctl-reports-correct-clean-status.patch irqchip-spear_shirq-fix-interrupt-offset.patch arc-fix-build-breakage-for-config_arc_dw2_unwind.patch mlx4_core-fix-incorrect-flags1-bitmap-test-in-mlx4_query_func_cap.patch @@ -119,3 +118,7 @@ netfilter-ctnetlink-fix-dumping-of-dying-unconfirmed-conntracks.patch netfilter-nf_nat-fix-oops-on-netns-removal.patch netfilter-ctnetlink-fix-refcnt-leak-in-dying-unconfirmed-list-dumper.patch mmc-rtsx-add-r1-no-crc-mmc-command-type-handle.patch +drm-i915-fix-display-power-sw-state-reporting.patch +arch-unicore32-mm-alignment.c-include-asm-pgtable.h-to-avoid-compiling-error.patch +drivers-video-fbdev-fb-puv3.c-add-header-files-for-function-unifb_mmap.patch +mm-numa-remove-bug_on-in-__handle_mm_fault.patch -- 2.47.3