]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.13-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 4 Feb 2014 17:53:50 +0000 (09:53 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 4 Feb 2014 17:53:50 +0000 (09:53 -0800)
added patches:
kvm-ppc-book3s-hv-use-xics_wake_cpu-only-when-defined.patch
kvm-ppc-e500-fix-bad-address-type-in-deliver_tlb_misss.patch
parisc-fix-cache-flushing.patch
parisc-sti_console-prefer-linux-fonts-over-built-in-rom-fonts.patch

queue-3.13/kvm-ppc-book3s-hv-use-xics_wake_cpu-only-when-defined.patch [new file with mode: 0644]
queue-3.13/kvm-ppc-e500-fix-bad-address-type-in-deliver_tlb_misss.patch [new file with mode: 0644]
queue-3.13/parisc-fix-cache-flushing.patch [new file with mode: 0644]
queue-3.13/parisc-sti_console-prefer-linux-fonts-over-built-in-rom-fonts.patch [new file with mode: 0644]
queue-3.13/series

diff --git a/queue-3.13/kvm-ppc-book3s-hv-use-xics_wake_cpu-only-when-defined.patch b/queue-3.13/kvm-ppc-book3s-hv-use-xics_wake_cpu-only-when-defined.patch
new file mode 100644 (file)
index 0000000..e232b09
--- /dev/null
@@ -0,0 +1,44 @@
+From 48eaef0518a565d3852e301c860e1af6a6db5a84 Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab@linux-m68k.org>
+Date: Mon, 30 Dec 2013 15:36:56 +0100
+Subject: KVM: PPC: Book3S HV: use xics_wake_cpu only when defined
+
+From: Andreas Schwab <schwab@linux-m68k.org>
+
+commit 48eaef0518a565d3852e301c860e1af6a6db5a84 upstream.
+
+Signed-off-by: Andreas Schwab <schwab@linux-m68k.org>
+Signed-off-by: Alexander Graf <agraf@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/powerpc/kvm/book3s_hv.c |    7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+--- a/arch/powerpc/kvm/book3s_hv.c
++++ b/arch/powerpc/kvm/book3s_hv.c
+@@ -85,10 +85,13 @@ static void kvmppc_fast_vcpu_kick_hv(str
+       /* CPU points to the first thread of the core */
+       if (cpu != me && cpu >= 0 && cpu < nr_cpu_ids) {
++#ifdef CONFIG_KVM_XICS
+               int real_cpu = cpu + vcpu->arch.ptid;
+               if (paca[real_cpu].kvm_hstate.xics_phys)
+                       xics_wake_cpu(real_cpu);
+-              else if (cpu_online(cpu))
++              else
++#endif
++              if (cpu_online(cpu))
+                       smp_send_reschedule(cpu);
+       }
+       put_cpu();
+@@ -1189,7 +1192,9 @@ static void kvmppc_start_thread(struct k
+       smp_wmb();
+ #if defined(CONFIG_PPC_ICP_NATIVE) && defined(CONFIG_SMP)
+       if (vcpu->arch.ptid) {
++#ifdef CONFIG_KVM_XICS
+               xics_wake_cpu(cpu);
++#endif
+               ++vc->n_woken;
+       }
+ #endif
diff --git a/queue-3.13/kvm-ppc-e500-fix-bad-address-type-in-deliver_tlb_misss.patch b/queue-3.13/kvm-ppc-e500-fix-bad-address-type-in-deliver_tlb_misss.patch
new file mode 100644 (file)
index 0000000..f199c1a
--- /dev/null
@@ -0,0 +1,30 @@
+From 70713fe315ed14cd1bb07d1a7f33e973d136ae3d Mon Sep 17 00:00:00 2001
+From: Mihai Caraman <mihai.caraman@freescale.com>
+Date: Thu, 9 Jan 2014 17:01:05 +0200
+Subject: KVM: PPC: e500: Fix bad address type in deliver_tlb_misss()
+
+From: Mihai Caraman <mihai.caraman@freescale.com>
+
+commit 70713fe315ed14cd1bb07d1a7f33e973d136ae3d upstream.
+
+Use gva_t instead of unsigned int for eaddr in deliver_tlb_miss().
+
+Signed-off-by: Mihai Caraman <mihai.caraman@freescale.com>
+Signed-off-by: Alexander Graf <agraf@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/powerpc/kvm/e500_mmu.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/arch/powerpc/kvm/e500_mmu.c
++++ b/arch/powerpc/kvm/e500_mmu.c
+@@ -127,7 +127,7 @@ static int kvmppc_e500_tlb_index(struct
+ }
+ static inline void kvmppc_e500_deliver_tlb_miss(struct kvm_vcpu *vcpu,
+-              unsigned int eaddr, int as)
++              gva_t eaddr, int as)
+ {
+       struct kvmppc_vcpu_e500 *vcpu_e500 = to_e500(vcpu);
+       unsigned int victim, tsized;
diff --git a/queue-3.13/parisc-fix-cache-flushing.patch b/queue-3.13/parisc-fix-cache-flushing.patch
new file mode 100644 (file)
index 0000000..50ffb58
--- /dev/null
@@ -0,0 +1,81 @@
+From 57737c49dd72c96cfbcd4f66559f3ffc399aeb4f Mon Sep 17 00:00:00 2001
+From: Helge Deller <deller@gmx.de>
+Date: Fri, 31 Jan 2014 21:33:17 +0100
+Subject: parisc: fix cache-flushing
+
+From: Helge Deller <deller@gmx.de>
+
+commit 57737c49dd72c96cfbcd4f66559f3ffc399aeb4f upstream.
+
+This commit:
+f8dae00684d678afa13041ef170cecfd1297ed40: parisc: Ensure full cache coherency for kmap/kunmap
+caused negative caching side-effects, e.g. hanging processes with expect and
+too many inequivalent alias messages from flush_dcache_page() on Debian 5 systems.
+
+This patch now partly reverts it and has been in production use on our debian buildd
+makeservers since a week without any major problems.
+
+Signed-off-by: Helge Deller <deller@gmx.de>
+Signed-off-by: John David Anglin <dave.anglin@bell.net>
+Signed-off-by: Helge Deller <deller@gmx.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/parisc/include/asm/cacheflush.h |    2 --
+ arch/parisc/include/asm/page.h       |    3 ++-
+ arch/parisc/kernel/cache.c           |   14 ++++++++++++++
+ 3 files changed, 16 insertions(+), 3 deletions(-)
+
+--- a/arch/parisc/include/asm/cacheflush.h
++++ b/arch/parisc/include/asm/cacheflush.h
+@@ -132,7 +132,6 @@ void mark_rodata_ro(void);
+ static inline void *kmap(struct page *page)
+ {
+       might_sleep();
+-      flush_dcache_page(page);
+       return page_address(page);
+ }
+@@ -144,7 +143,6 @@ static inline void kunmap(struct page *p
+ static inline void *kmap_atomic(struct page *page)
+ {
+       pagefault_disable();
+-      flush_dcache_page(page);
+       return page_address(page);
+ }
+--- a/arch/parisc/include/asm/page.h
++++ b/arch/parisc/include/asm/page.h
+@@ -29,7 +29,8 @@ struct page;
+ void clear_page_asm(void *page);
+ void copy_page_asm(void *to, void *from);
+ #define clear_user_page(vto, vaddr, page) clear_page_asm(vto)
+-#define copy_user_page(vto, vfrom, vaddr, page) copy_page_asm(vto, vfrom)
++void copy_user_page(void *vto, void *vfrom, unsigned long vaddr,
++                      struct page *pg);
+ /* #define CONFIG_PARISC_TMPALIAS */
+--- a/arch/parisc/kernel/cache.c
++++ b/arch/parisc/kernel/cache.c
+@@ -388,6 +388,20 @@ void flush_kernel_dcache_page_addr(void
+ }
+ EXPORT_SYMBOL(flush_kernel_dcache_page_addr);
++void copy_user_page(void *vto, void *vfrom, unsigned long vaddr,
++      struct page *pg)
++{
++       /* Copy using kernel mapping.  No coherency is needed (all in
++        kunmap) for the `to' page.  However, the `from' page needs to
++        be flushed through a mapping equivalent to the user mapping
++        before it can be accessed through the kernel mapping. */
++      preempt_disable();
++      flush_dcache_page_asm(__pa(vfrom), vaddr);
++      preempt_enable();
++      copy_page_asm(vto, vfrom);
++}
++EXPORT_SYMBOL(copy_user_page);
++
+ void purge_tlb_entries(struct mm_struct *mm, unsigned long addr)
+ {
+       unsigned long flags;
diff --git a/queue-3.13/parisc-sti_console-prefer-linux-fonts-over-built-in-rom-fonts.patch b/queue-3.13/parisc-sti_console-prefer-linux-fonts-over-built-in-rom-fonts.patch
new file mode 100644 (file)
index 0000000..5c95605
--- /dev/null
@@ -0,0 +1,62 @@
+From 8a10bc9d27ceb084b0d8be621a033a475eb9fdfd Mon Sep 17 00:00:00 2001
+From: Helge Deller <deller@gmx.de>
+Date: Fri, 31 Jan 2014 15:39:40 +0100
+Subject: parisc/sti_console: prefer Linux fonts over built-in ROM fonts
+
+From: Helge Deller <deller@gmx.de>
+
+commit 8a10bc9d27ceb084b0d8be621a033a475eb9fdfd upstream.
+
+The built-in ROM fonts lack many necessary ASCII characters, which is
+why it makes sens to prefer the Linux fonts instead if they are
+available.  This makes consoles on STI graphics cards which are not
+supported by the stifb driver (e.g. Visualize FXe) looks much nicer.
+
+Signed-off-by: Helge Deller <deller@gmx.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/video/console/sticore.c |    2 +-
+ lib/fonts/Kconfig               |    6 +++---
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+--- a/drivers/video/console/sticore.c
++++ b/drivers/video/console/sticore.c
+@@ -488,7 +488,7 @@ static int sti_init_glob_cfg(struct sti_
+       return 0;
+ }
+-#ifdef CONFIG_FONTS
++#ifdef CONFIG_FONT_SUPPORT
+ static struct sti_cooked_font *
+ sti_select_fbfont(struct sti_cooked_rom *cooked_rom, const char *fbfont_name)
+ {
+--- a/lib/fonts/Kconfig
++++ b/lib/fonts/Kconfig
+@@ -9,7 +9,7 @@ if FONT_SUPPORT
+ config FONTS
+       bool "Select compiled-in fonts"
+-      depends on FRAMEBUFFER_CONSOLE || STI_CONSOLE
++      depends on FRAMEBUFFER_CONSOLE
+       help
+         Say Y here if you would like to use fonts other than the default
+         your frame buffer console usually use.
+@@ -22,7 +22,7 @@ config FONTS
+ config FONT_8x8
+       bool "VGA 8x8 font" if FONTS
+-      depends on FRAMEBUFFER_CONSOLE || STI_CONSOLE
++      depends on FRAMEBUFFER_CONSOLE
+       default y if !SPARC && !FONTS
+       help
+         This is the "high resolution" font for the VGA frame buffer (the one
+@@ -45,7 +45,7 @@ config FONT_8x16
+ config FONT_6x11
+       bool "Mac console 6x11 font (not supported by all drivers)" if FONTS
+-      depends on FRAMEBUFFER_CONSOLE || STI_CONSOLE
++      depends on FRAMEBUFFER_CONSOLE
+       default y if !SPARC && !FONTS && MAC
+       help
+         Small console font with Macintosh-style high-half glyphs.  Some Mac
index a0487bd336fa062aafffc41aca46f565e8449d1c..ac5e977ba8ce42d9f430d5291c11300fff3ba7c7 100644 (file)
@@ -121,3 +121,7 @@ mmc-sdhci-pci-add-broken-hs200-quirk-for-intel-merrifield.patch
 mmc-sdhci-fix-lockdep-error-in-tuning-routine.patch
 mmc-sdhci-esdhc-imx-fix-access-hardirq-unsafe-lock-in-atomic-context.patch
 alpha-fix-broken-network-checksum.patch
+parisc-sti_console-prefer-linux-fonts-over-built-in-rom-fonts.patch
+parisc-fix-cache-flushing.patch
+kvm-ppc-book3s-hv-use-xics_wake_cpu-only-when-defined.patch
+kvm-ppc-e500-fix-bad-address-type-in-deliver_tlb_misss.patch