From: Greg Kroah-Hartman Date: Thu, 13 Jun 2019 15:50:13 +0000 (+0200) Subject: drop mips patch from 4.4 and 4.9 as well X-Git-Tag: v5.1.10~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8d4dd50bb0070725b04187622148ccfad327604d;p=thirdparty%2Fkernel%2Fstable-queue.git drop mips patch from 4.4 and 4.9 as well --- diff --git a/queue-4.4/mips-make-sure-dt-memory-regions-are-valid.patch b/queue-4.4/mips-make-sure-dt-memory-regions-are-valid.patch deleted file mode 100644 index adf9ca6f87a..00000000000 --- a/queue-4.4/mips-make-sure-dt-memory-regions-are-valid.patch +++ /dev/null @@ -1,69 +0,0 @@ -From d7a01b245fdc005813d77cd8b418df7236644b50 Mon Sep 17 00:00:00 2001 -From: Serge Semin -Date: Fri, 3 May 2019 20:50:40 +0300 -Subject: mips: Make sure dt memory regions are valid - -[ Upstream commit 93fa5b280761a4dbb14c5330f260380385ab2b49 ] - -There are situations when memory regions coming from dts may be -too big for the platform physical address space. This especially -concerns XPA-capable systems. Bootloader may determine more than 4GB -memory available and pass it to the kernel over dts memory node, while -kernel is built without XPA/64BIT support. In this case the region -may either simply be truncated by add_memory_region() method -or by u64->phys_addr_t type casting. But in worst case the method -can even drop the memory region if it exceeds PHYS_ADDR_MAX size. -So lets make sure the retrieved from dts memory regions are valid, -and if some of them aren't, just manually truncate them with a warning -printed out. - -Signed-off-by: Serge Semin -Signed-off-by: Paul Burton -Cc: Ralf Baechle -Cc: James Hogan -Cc: Mike Rapoport -Cc: Andrew Morton -Cc: Michal Hocko -Cc: Greg Kroah-Hartman -Cc: Thomas Bogendoerfer -Cc: Huacai Chen -Cc: Stefan Agner -Cc: Stephen Rothwell -Cc: Alexandre Belloni -Cc: Juergen Gross -Cc: Serge Semin -Cc: linux-mips@vger.kernel.org -Cc: linux-kernel@vger.kernel.org -Signed-off-by: Sasha Levin ---- - arch/mips/kernel/prom.c | 14 +++++++++++++- - 1 file changed, 13 insertions(+), 1 deletion(-) - -diff --git a/arch/mips/kernel/prom.c b/arch/mips/kernel/prom.c -index 5fcec3032f38..6131807799b4 100644 ---- a/arch/mips/kernel/prom.c -+++ b/arch/mips/kernel/prom.c -@@ -41,7 +41,19 @@ char *mips_get_machine_name(void) - #ifdef CONFIG_USE_OF - void __init early_init_dt_add_memory_arch(u64 base, u64 size) - { -- return add_memory_region(base, size, BOOT_MEM_RAM); -+ if (base >= PHYS_ADDR_MAX) { -+ pr_warn("Trying to add an invalid memory region, skipped\n"); -+ return; -+ } -+ -+ /* Truncate the passed memory region instead of type casting */ -+ if (base + size - 1 >= PHYS_ADDR_MAX || base + size < base) { -+ pr_warn("Truncate memory region %llx @ %llx to size %llx\n", -+ size, base, PHYS_ADDR_MAX - base); -+ size = PHYS_ADDR_MAX - base; -+ } -+ -+ add_memory_region(base, size, BOOT_MEM_RAM); - } - - void * __init early_init_dt_alloc_memory_arch(u64 size, u64 align) --- -2.20.1 - diff --git a/queue-4.4/series b/queue-4.4/series index a252fea5dec..8fb9e969f22 100644 --- a/queue-4.4/series +++ b/queue-4.4/series @@ -13,7 +13,6 @@ ntp-allow-tai-utc-offset-to-be-set-to-zero.patch f2fs-fix-to-avoid-panic-in-do_recover_data.patch f2fs-fix-to-do-sanity-check-on-valid-block-count-of-.patch uml-fix-a-boot-splat-wrt-use-of-cpu_all_mask.patch -mips-make-sure-dt-memory-regions-are-valid.patch iommu-vt-d-set-intel_iommu_gfx_mapped-correctly.patch alsa-hda-register-irq-handler-after-the-chip-initial.patch nvmem-core-fix-read-buffer-in-place.patch diff --git a/queue-4.9/mips-make-sure-dt-memory-regions-are-valid.patch b/queue-4.9/mips-make-sure-dt-memory-regions-are-valid.patch deleted file mode 100644 index a74fa8f3895..00000000000 --- a/queue-4.9/mips-make-sure-dt-memory-regions-are-valid.patch +++ /dev/null @@ -1,69 +0,0 @@ -From b99c2ea6c0df78df201abe3d1a882fd1a5d23380 Mon Sep 17 00:00:00 2001 -From: Serge Semin -Date: Fri, 3 May 2019 20:50:40 +0300 -Subject: mips: Make sure dt memory regions are valid - -[ Upstream commit 93fa5b280761a4dbb14c5330f260380385ab2b49 ] - -There are situations when memory regions coming from dts may be -too big for the platform physical address space. This especially -concerns XPA-capable systems. Bootloader may determine more than 4GB -memory available and pass it to the kernel over dts memory node, while -kernel is built without XPA/64BIT support. In this case the region -may either simply be truncated by add_memory_region() method -or by u64->phys_addr_t type casting. But in worst case the method -can even drop the memory region if it exceeds PHYS_ADDR_MAX size. -So lets make sure the retrieved from dts memory regions are valid, -and if some of them aren't, just manually truncate them with a warning -printed out. - -Signed-off-by: Serge Semin -Signed-off-by: Paul Burton -Cc: Ralf Baechle -Cc: James Hogan -Cc: Mike Rapoport -Cc: Andrew Morton -Cc: Michal Hocko -Cc: Greg Kroah-Hartman -Cc: Thomas Bogendoerfer -Cc: Huacai Chen -Cc: Stefan Agner -Cc: Stephen Rothwell -Cc: Alexandre Belloni -Cc: Juergen Gross -Cc: Serge Semin -Cc: linux-mips@vger.kernel.org -Cc: linux-kernel@vger.kernel.org -Signed-off-by: Sasha Levin ---- - arch/mips/kernel/prom.c | 14 +++++++++++++- - 1 file changed, 13 insertions(+), 1 deletion(-) - -diff --git a/arch/mips/kernel/prom.c b/arch/mips/kernel/prom.c -index 5fcec3032f38..6131807799b4 100644 ---- a/arch/mips/kernel/prom.c -+++ b/arch/mips/kernel/prom.c -@@ -41,7 +41,19 @@ char *mips_get_machine_name(void) - #ifdef CONFIG_USE_OF - void __init early_init_dt_add_memory_arch(u64 base, u64 size) - { -- return add_memory_region(base, size, BOOT_MEM_RAM); -+ if (base >= PHYS_ADDR_MAX) { -+ pr_warn("Trying to add an invalid memory region, skipped\n"); -+ return; -+ } -+ -+ /* Truncate the passed memory region instead of type casting */ -+ if (base + size - 1 >= PHYS_ADDR_MAX || base + size < base) { -+ pr_warn("Truncate memory region %llx @ %llx to size %llx\n", -+ size, base, PHYS_ADDR_MAX - base); -+ size = PHYS_ADDR_MAX - base; -+ } -+ -+ add_memory_region(base, size, BOOT_MEM_RAM); - } - - void * __init early_init_dt_alloc_memory_arch(u64 size, u64 align) --- -2.20.1 - diff --git a/queue-4.9/series b/queue-4.9/series index b38c0b229e3..6dab917660e 100644 --- a/queue-4.9/series +++ b/queue-4.9/series @@ -23,7 +23,6 @@ f2fs-fix-to-clear-dirty-inode-in-error-path-of-f2fs_.patch f2fs-fix-to-do-sanity-check-on-valid-block-count-of-.patch configfs-fix-possible-use-after-free-in-configfs_reg.patch uml-fix-a-boot-splat-wrt-use-of-cpu_all_mask.patch -mips-make-sure-dt-memory-regions-are-valid.patch watchdog-imx2_wdt-fix-set_timeout-for-big-timeout-va.patch watchdog-fix-compile-time-error-of-pretimeout-govern.patch iommu-vt-d-set-intel_iommu_gfx_mapped-correctly.patch