aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/pending-4.9/305-mips_module_reloc.patch
diff options
context:
space:
mode:
authorStijn Tintel <stijn@linux-ipv6.be>2017-08-17 10:51:05 +0200
committerStijn Tintel <stijn@linux-ipv6.be>2017-08-17 12:34:34 +0200
commit2d02a4f5bda4a5ff392286360ec7d1129bd77d25 (patch)
treec243a9231fd508b585c2711e8b691e8ca06d2988 /target/linux/generic/pending-4.9/305-mips_module_reloc.patch
parentd9564d79b8e91eed23c45afd2eb4a71a97c922eb (diff)
downloadupstream-2d02a4f5bda4a5ff392286360ec7d1129bd77d25.tar.gz
upstream-2d02a4f5bda4a5ff392286360ec7d1129bd77d25.tar.bz2
upstream-2d02a4f5bda4a5ff392286360ec7d1129bd77d25.zip
kernel: update 4.9 to 4.9.44
Refresh patches. Adapt 704-phy-no-genphy-soft-reset.patch. Remove brcm2708/950-0005-mm-Remove-the-PFN-busy-warning.patch. Compile-tested on brcm2708/bcm2708 and x86/64. Runtime-tested on brcm2708/bcm2708 and x86/64. Fixes the following vulnerabilities: - CVE-2017-7533 - CVE-2017-1000111 - CVE-2017-1000112 Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Diffstat (limited to 'target/linux/generic/pending-4.9/305-mips_module_reloc.patch')
-rw-r--r--target/linux/generic/pending-4.9/305-mips_module_reloc.patch15
1 files changed, 3 insertions, 12 deletions
diff --git a/target/linux/generic/pending-4.9/305-mips_module_reloc.patch b/target/linux/generic/pending-4.9/305-mips_module_reloc.patch
index f0776b205f..fc8015b5f6 100644
--- a/target/linux/generic/pending-4.9/305-mips_module_reloc.patch
+++ b/target/linux/generic/pending-4.9/305-mips_module_reloc.patch
@@ -9,11 +9,9 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
arch/mips/kernel/module.c | 279 ++++++++++++++++++++++++++++++++++++++++-
3 files changed, 284 insertions(+), 5 deletions(-)
-diff --git a/arch/mips/Makefile b/arch/mips/Makefile
-index 48dc1a9c3e42..77bf5db20d65 100644
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
-@@ -93,8 +93,13 @@ all-$(CONFIG_SYS_SUPPORTS_ZBOOT)+= vmlinuz
+@@ -93,8 +93,13 @@ all-$(CONFIG_SYS_SUPPORTS_ZBOOT)+= vmlin
cflags-y += -G 0 -mno-abicalls -fno-pic -pipe -mno-branch-likely
cflags-y += -msoft-float
LDFLAGS_vmlinux += -G 0 -static -n -nostdlib
@@ -27,8 +25,6 @@ index 48dc1a9c3e42..77bf5db20d65 100644
ifeq ($(CONFIG_RELOCATABLE),y)
LDFLAGS_vmlinux += --emit-relocs
-diff --git a/arch/mips/include/asm/module.h b/arch/mips/include/asm/module.h
-index 702c273e67a9..1d4f3b37cefe 100644
--- a/arch/mips/include/asm/module.h
+++ b/arch/mips/include/asm/module.h
@@ -11,6 +11,11 @@ struct mod_arch_specific {
@@ -43,8 +39,6 @@ index 702c273e67a9..1d4f3b37cefe 100644
};
typedef uint8_t Elf64_Byte; /* Type for a 8-bit quantity. */
-diff --git a/arch/mips/kernel/module.c b/arch/mips/kernel/module.c
-index 94627a3a6a0d..947981a9aa72 100644
--- a/arch/mips/kernel/module.c
+++ b/arch/mips/kernel/module.c
@@ -44,14 +44,221 @@ struct mips_hi16 {
@@ -270,7 +264,7 @@ index 94627a3a6a0d..947981a9aa72 100644
int apply_r_mips_none(struct module *me, u32 *location, Elf_Addr v)
{
-@@ -65,8 +272,39 @@ static int apply_r_mips_32_rel(struct module *me, u32 *location, Elf_Addr v)
+@@ -65,8 +272,39 @@ static int apply_r_mips_32_rel(struct mo
return 0;
}
@@ -310,7 +304,7 @@ index 94627a3a6a0d..947981a9aa72 100644
if (v % 4) {
pr_err("module %s: dangerous R_MIPS_26 REL relocation\n",
me->name);
-@@ -74,13 +312,17 @@ static int apply_r_mips_26_rel(struct module *me, u32 *location, Elf_Addr v)
+@@ -74,13 +312,17 @@ static int apply_r_mips_26_rel(struct mo
}
if ((v & 0xf0000000) != (((unsigned long)location + 4) & 0xf0000000)) {
@@ -369,6 +363,3 @@ index 94627a3a6a0d..947981a9aa72 100644
void module_arch_cleanup(struct module *mod)
{
spin_lock_irq(&dbe_lock);
---
-2.11.0
-