aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/patches-4.9/040-03-MIPS-Only-change-28-to-thread_info-if-coming-from-us.patch
diff options
context:
space:
mode:
authorKoen Vandeputte <koen.vandeputte@ncentric.com>2017-05-15 13:11:05 +0200
committerHauke Mehrtens <hauke@hauke-m.de>2017-05-21 21:51:22 +0200
commite842e16f4583edeedec24ffe79a0e495bb9c7bff (patch)
treefaabedbe0c6cf8c6774d0f921f9352851c8dbccc /target/linux/generic/patches-4.9/040-03-MIPS-Only-change-28-to-thread_info-if-coming-from-us.patch
parent088e28772c504ad622ba909b0f6d2986910e7a97 (diff)
downloadupstream-e842e16f4583edeedec24ffe79a0e495bb9c7bff.tar.gz
upstream-e842e16f4583edeedec24ffe79a0e495bb9c7bff.tar.bz2
upstream-e842e16f4583edeedec24ffe79a0e495bb9c7bff.zip
kernel: update kernel 4.9 to 4.9.29
- Refresh all patches - Removed upstreamed - Adapted 1 Compile tested on: bcm53xx, cns3xxx, imx6, lantiq Run tested on: cns3xxx & imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com> [update from 4.9.28 to 4.9.29] Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Diffstat (limited to 'target/linux/generic/patches-4.9/040-03-MIPS-Only-change-28-to-thread_info-if-coming-from-us.patch')
-rw-r--r--target/linux/generic/patches-4.9/040-03-MIPS-Only-change-28-to-thread_info-if-coming-from-us.patch48
1 files changed, 0 insertions, 48 deletions
diff --git a/target/linux/generic/patches-4.9/040-03-MIPS-Only-change-28-to-thread_info-if-coming-from-us.patch b/target/linux/generic/patches-4.9/040-03-MIPS-Only-change-28-to-thread_info-if-coming-from-us.patch
deleted file mode 100644
index e13c67be60..0000000000
--- a/target/linux/generic/patches-4.9/040-03-MIPS-Only-change-28-to-thread_info-if-coming-from-us.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From: Matt Redfearn <matt.redfearn@imgtec.com>
-Date: Mon, 19 Dec 2016 14:20:58 +0000
-Subject: [PATCH] MIPS: Only change $28 to thread_info if coming from user
- mode
-
-The SAVE_SOME macro is used to save the execution context on all
-exceptions.
-If an exception occurs while executing user code, the stack is switched
-to the kernel's stack for the current task, and register $28 is switched
-to point to the current_thread_info, which is at the bottom of the stack
-region.
-If the exception occurs while executing kernel code, the stack is left,
-and this change ensures that register $28 is not updated. This is the
-correct behaviour when the kernel can be executing on the separate irq
-stack, because the thread_info will not be at the base of it.
-
-With this change, register $28 is only switched to it's kernel
-conventional usage of the currrent thread info pointer at the point at
-which execution enters kernel space. Doing it on every exception was
-redundant, but OK without an IRQ stack, but will be erroneous once that
-is introduced.
-
-Signed-off-by: Matt Redfearn <matt.redfearn@imgtec.com>
-Reviewed-by: Maciej W. Rozycki <macro@imgtec.com>
----
-
---- a/arch/mips/include/asm/stackframe.h
-+++ b/arch/mips/include/asm/stackframe.h
-@@ -216,12 +216,19 @@
- LONG_S $25, PT_R25(sp)
- LONG_S $28, PT_R28(sp)
- LONG_S $31, PT_R31(sp)
-+
-+ /* Set thread_info if we're coming from user mode */
-+ mfc0 k0, CP0_STATUS
-+ sll k0, 3 /* extract cu0 bit */
-+ bltz k0, 9f
-+
- ori $28, sp, _THREAD_MASK
- xori $28, _THREAD_MASK
- #ifdef CONFIG_CPU_CAVIUM_OCTEON
- .set mips64
- pref 0, 0($28) /* Prefetch the current pointer */
- #endif
-+9:
- .set pop
- .endm
-