summaryrefslogtreecommitdiff
path: root/target/linux/generic/patches-4.1/304-mips_disable_fpu.patch
diff options
context:
space:
mode:
authorJonas Gorski <jogo@openwrt.org>2015-07-05 21:31:54 +0000
committerJonas Gorski <jogo@openwrt.org>2015-07-05 21:31:54 +0000
commitcf304f5a5e611e60fce5a0dda2a144f8ca56df3c (patch)
tree1fb4586cdc0d70d361f6b3f9e67251a9a155f48f /target/linux/generic/patches-4.1/304-mips_disable_fpu.patch
parent1e8c3d2769fcfc0ec0744281bdbb96dfda6ccf32 (diff)
downloadmtk-20170518-cf304f5a5e611e60fce5a0dda2a144f8ca56df3c.zip
mtk-20170518-cf304f5a5e611e60fce5a0dda2a144f8ca56df3c.tar.gz
mtk-20170518-cf304f5a5e611e60fce5a0dda2a144f8ca56df3c.tar.bz2
kernel: mips_disable_fpu: initialize fault_addr in fpu_emulator_cop1Handler
Code calling fpu_emulator_cop1Handler will pass on fault_addr, making gcc complain about it not being initialized when the FPU emulator is disabled. Fixes: arch/mips/kernel/traps.c: In function 'do_fpe': arch/mips/kernel/traps.c:864:22: error: 'fault_addr' may be used uninitialized in this function [-Werror=maybe-uninitialized] process_fpemu_return(sig, fault_addr, fcr31); ^ arch/mips/kernel/traps.c: In function 'do_ri': arch/mips/kernel/traps.c:806:22: error: 'fault_addr' may be used uninitialized in this function [-Werror=maybe-uninitialized] process_fpemu_return(sig, fault_addr, fcr31); ^ arch/mips/kernel/traps.c:763:15: note: 'fault_addr' was declared here void __user *fault_addr; ^ arch/mips/kernel/traps.c: In function 'do_cpu': arch/mips/kernel/traps.c:1421:28: error: 'fault_addr' may be used uninitialized in this function [-Werror=maybe-uninitialized] if (!process_fpemu_return(sig, fault_addr, fcr31) && !err) ^ cc1: all warnings being treated as errors make[7]: *** [arch/mips/kernel/traps.o] Error 1 Signed-off-by: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 46184
Diffstat (limited to 'target/linux/generic/patches-4.1/304-mips_disable_fpu.patch')
-rw-r--r--target/linux/generic/patches-4.1/304-mips_disable_fpu.patch3
1 files changed, 2 insertions, 1 deletions
diff --git a/target/linux/generic/patches-4.1/304-mips_disable_fpu.patch b/target/linux/generic/patches-4.1/304-mips_disable_fpu.patch
index 6237d31..e07135b 100644
--- a/target/linux/generic/patches-4.1/304-mips_disable_fpu.patch
+++ b/target/linux/generic/patches-4.1/304-mips_disable_fpu.patch
@@ -82,7 +82,7 @@ v2: incorporated changes suggested by Jonas Gorski
#ifdef CONFIG_DEBUG_FS
struct mips_fpu_emulator_stats {
-@@ -66,6 +67,20 @@ extern int do_dsemulret(struct pt_regs *
+@@ -66,6 +67,21 @@ extern int do_dsemulret(struct pt_regs *
extern int fpu_emulator_cop1Handler(struct pt_regs *xcp,
struct mips_fpu_struct *ctx, int has_fpu,
void *__user *fault_addr);
@@ -96,6 +96,7 @@ v2: incorporated changes suggested by Jonas Gorski
+ struct mips_fpu_struct *ctx, int has_fpu,
+ void *__user *fault_addr)
+{
++ *fault_addr = NULL;
+ return SIGILL; /* we don't speak MIPS FPU */
+}
+#endif /* CONFIG_MIPS_FPU_EMULATOR */