]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.14-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 1 Mar 2019 06:59:27 +0000 (07:59 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 1 Mar 2019 06:59:27 +0000 (07:59 +0100)
added patches:
powerpc-always-initialize-input-array-when-calling-epapr_hypercall.patch

queue-4.14/powerpc-always-initialize-input-array-when-calling-epapr_hypercall.patch [new file with mode: 0644]
queue-4.14/series

diff --git a/queue-4.14/powerpc-always-initialize-input-array-when-calling-epapr_hypercall.patch b/queue-4.14/powerpc-always-initialize-input-array-when-calling-epapr_hypercall.patch
new file mode 100644 (file)
index 0000000..e9f66d5
--- /dev/null
@@ -0,0 +1,86 @@
+From 186b8f1587c79c2fa04bfa392fdf084443e398c1 Mon Sep 17 00:00:00 2001
+From: Seth Forshee <seth.forshee@canonical.com>
+Date: Thu, 28 Sep 2017 09:33:39 -0400
+Subject: powerpc: Always initialize input array when calling epapr_hypercall()
+
+From: Seth Forshee <seth.forshee@canonical.com>
+
+commit 186b8f1587c79c2fa04bfa392fdf084443e398c1 upstream.
+
+Several callers to epapr_hypercall() pass an uninitialized stack
+allocated array for the input arguments, presumably because they
+have no input arguments. However this can produce errors like
+this one
+
+ arch/powerpc/include/asm/epapr_hcalls.h:470:42: error: 'in' may be used uninitialized in this function [-Werror=maybe-uninitialized]
+  unsigned long register r3 asm("r3") = in[0];
+                                        ~~^~~
+
+Fix callers to this function to always zero-initialize the input
+arguments array to prevent this.
+
+Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
+Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
+Cc: "A. Wilcox" <awilfox@adelielinux.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/powerpc/include/asm/epapr_hcalls.h |   12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+--- a/arch/powerpc/include/asm/epapr_hcalls.h
++++ b/arch/powerpc/include/asm/epapr_hcalls.h
+@@ -508,7 +508,7 @@ static unsigned long epapr_hypercall(uns
+ static inline long epapr_hypercall0_1(unsigned int nr, unsigned long *r2)
+ {
+-      unsigned long in[8];
++      unsigned long in[8] = {0};
+       unsigned long out[8];
+       unsigned long r;
+@@ -520,7 +520,7 @@ static inline long epapr_hypercall0_1(un
+ static inline long epapr_hypercall0(unsigned int nr)
+ {
+-      unsigned long in[8];
++      unsigned long in[8] = {0};
+       unsigned long out[8];
+       return epapr_hypercall(in, out, nr);
+@@ -528,7 +528,7 @@ static inline long epapr_hypercall0(unsi
+ static inline long epapr_hypercall1(unsigned int nr, unsigned long p1)
+ {
+-      unsigned long in[8];
++      unsigned long in[8] = {0};
+       unsigned long out[8];
+       in[0] = p1;
+@@ -538,7 +538,7 @@ static inline long epapr_hypercall1(unsi
+ static inline long epapr_hypercall2(unsigned int nr, unsigned long p1,
+                                   unsigned long p2)
+ {
+-      unsigned long in[8];
++      unsigned long in[8] = {0};
+       unsigned long out[8];
+       in[0] = p1;
+@@ -549,7 +549,7 @@ static inline long epapr_hypercall2(unsi
+ static inline long epapr_hypercall3(unsigned int nr, unsigned long p1,
+                                   unsigned long p2, unsigned long p3)
+ {
+-      unsigned long in[8];
++      unsigned long in[8] = {0};
+       unsigned long out[8];
+       in[0] = p1;
+@@ -562,7 +562,7 @@ static inline long epapr_hypercall4(unsi
+                                   unsigned long p2, unsigned long p3,
+                                   unsigned long p4)
+ {
+-      unsigned long in[8];
++      unsigned long in[8] = {0};
+       unsigned long out[8];
+       in[0] = p1;
index 92e835fa8e3f3b1c99f058fb0a53218fb665e810..f4067ee415b83d0a37c521c0d8ddd3fe6a919408 100644 (file)
@@ -42,3 +42,4 @@ mac80211-add-attribute-aligned-2-to-struct-action.patch
 cfg80211-extend-range-deviation-for-dmg.patch
 svm-fix-avic-incomplete-ipi-emulation.patch
 kvm-nsvm-clear-events-pending-from-svm_complete_inte.patch
+powerpc-always-initialize-input-array-when-calling-epapr_hypercall.patch