From 8e197c7af2ef7eccfd1dd9396ab6a003992b183a Mon Sep 17 00:00:00 2001 From: Koen Vandeputte Date: Mon, 7 Oct 2019 13:09:31 +0200 Subject: [PATCH] kernel: bump 4.19 to 4.19.77 Refreshed all patches. Remove upstreamed: - 110-ARM-zynq-Use-memcpy_toio-instead-of-memcpy.patch Compile-tested on: cns3xxx, imx6 Runtime-tested on: cns3xxx, imx6 Signed-off-by: Koen Vandeputte --- include/kernel-version.mk | 4 +-- ...5-Load-driver-early-and-support-lega.patch | 8 ++--- ...531-pcie-brcmstb-Changes-for-BCM2711.patch | 2 +- ...4-mmc-sdhci-Mask-spurious-interrupts.patch | 2 +- ...35-dma-Add-proper-40-bit-DMA-support.patch | 12 +++---- ...oop-better-discard-for-block-devices.patch | 2 +- .../661-use_fq_codel_by_default.patch | 2 +- ...nq-Use-memcpy_toio-instead-of-memcpy.patch | 35 ------------------- 8 files changed, 16 insertions(+), 51 deletions(-) delete mode 100644 target/linux/zynq/patches-4.19/110-ARM-zynq-Use-memcpy_toio-instead-of-memcpy.patch diff --git a/include/kernel-version.mk b/include/kernel-version.mk index 0208feed8c9..c310ea4f342 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -8,11 +8,11 @@ endif LINUX_VERSION-4.9 = .195 LINUX_VERSION-4.14 = .147 -LINUX_VERSION-4.19 = .76 +LINUX_VERSION-4.19 = .77 LINUX_KERNEL_HASH-4.9.195 = 54be562a2da16eecd612f641146dc099c1aa05c0fc559c971bdfde161c929d68 LINUX_KERNEL_HASH-4.14.147 = 8fd793688c9d9d4e26fdc175be92b6e638b6a86f4150dd66edecebab0bb85b12 -LINUX_KERNEL_HASH-4.19.76 = ba4dd29902734b263a5197410363b17f30dc60bc999bd6ce90b6f5910b971e66 +LINUX_KERNEL_HASH-4.19.77 = 612b69cc494f2da1530bacac17291339e272cde7f2a7669e615f565506d5f3a9 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1))))))) diff --git a/target/linux/brcm2708/patches-4.19/950-0014-dmaengine-bcm2835-Load-driver-early-and-support-lega.patch b/target/linux/brcm2708/patches-4.19/950-0014-dmaengine-bcm2835-Load-driver-early-and-support-lega.patch index 03c4a0a6c77..b43e7a04513 100644 --- a/target/linux/brcm2708/patches-4.19/950-0014-dmaengine-bcm2835-Load-driver-early-and-support-lega.patch +++ b/target/linux/brcm2708/patches-4.19/950-0014-dmaengine-bcm2835-Load-driver-early-and-support-lega.patch @@ -47,7 +47,7 @@ Signed-off-by: Noralf Trønnes struct bcm2835_dmadev { struct dma_device ddev; -@@ -912,6 +914,9 @@ static int bcm2835_dma_probe(struct plat +@@ -914,6 +916,9 @@ static int bcm2835_dma_probe(struct plat base = devm_ioremap_resource(&pdev->dev, res); if (IS_ERR(base)) return PTR_ERR(base); @@ -57,7 +57,7 @@ Signed-off-by: Noralf Trønnes od->base = base; -@@ -950,6 +955,9 @@ static int bcm2835_dma_probe(struct plat +@@ -952,6 +957,9 @@ static int bcm2835_dma_probe(struct plat goto err_no_dma; } @@ -67,7 +67,7 @@ Signed-off-by: Noralf Trønnes /* get irqs for each channel that we support */ for (i = 0; i <= BCM2835_DMA_MAX_DMA_CHAN_SUPPORTED; i++) { /* skip masked out channels */ -@@ -1024,6 +1032,7 @@ static int bcm2835_dma_remove(struct pla +@@ -1026,6 +1034,7 @@ static int bcm2835_dma_remove(struct pla { struct bcm2835_dmadev *od = platform_get_drvdata(pdev); @@ -75,7 +75,7 @@ Signed-off-by: Noralf Trønnes dma_async_device_unregister(&od->ddev); bcm2835_dma_free(od); -@@ -1039,7 +1048,22 @@ static struct platform_driver bcm2835_dm +@@ -1041,7 +1050,22 @@ static struct platform_driver bcm2835_dm }, }; diff --git a/target/linux/brcm2708/patches-4.19/950-0531-pcie-brcmstb-Changes-for-BCM2711.patch b/target/linux/brcm2708/patches-4.19/950-0531-pcie-brcmstb-Changes-for-BCM2711.patch index 86f638e7360..58803a8bdd9 100644 --- a/target/linux/brcm2708/patches-4.19/950-0531-pcie-brcmstb-Changes-for-BCM2711.patch +++ b/target/linux/brcm2708/patches-4.19/950-0531-pcie-brcmstb-Changes-for-BCM2711.patch @@ -143,7 +143,7 @@ Signed-off-by: Phil Elwell static const struct of_device_id bcm2835_dma_of_match[] = { { .compatible = "brcm,bcm2835-dma", }, {}, -@@ -964,6 +1064,13 @@ static int bcm2835_dma_probe(struct plat +@@ -966,6 +1066,13 @@ static int bcm2835_dma_probe(struct plat /* Channel 0 is used by the legacy API */ chans_available &= ~BCM2835_DMA_BULK_MASK; diff --git a/target/linux/brcm2708/patches-4.19/950-0534-mmc-sdhci-Mask-spurious-interrupts.patch b/target/linux/brcm2708/patches-4.19/950-0534-mmc-sdhci-Mask-spurious-interrupts.patch index 280c032c16e..e28fee443fb 100644 --- a/target/linux/brcm2708/patches-4.19/950-0534-mmc-sdhci-Mask-spurious-interrupts.patch +++ b/target/linux/brcm2708/patches-4.19/950-0534-mmc-sdhci-Mask-spurious-interrupts.patch @@ -16,7 +16,7 @@ Signed-off-by: Phil Elwell --- a/drivers/mmc/host/sdhci.c +++ b/drivers/mmc/host/sdhci.c -@@ -2930,6 +2930,10 @@ static irqreturn_t sdhci_irq(int irq, vo +@@ -2932,6 +2932,10 @@ static irqreturn_t sdhci_irq(int irq, vo result = IRQ_WAKE_THREAD; } diff --git a/target/linux/brcm2708/patches-4.19/950-0643-bcm2835-dma-Add-proper-40-bit-DMA-support.patch b/target/linux/brcm2708/patches-4.19/950-0643-bcm2835-dma-Add-proper-40-bit-DMA-support.patch index c43939ec6d8..94d2c9a9b29 100644 --- a/target/linux/brcm2708/patches-4.19/950-0643-bcm2835-dma-Add-proper-40-bit-DMA-support.patch +++ b/target/linux/brcm2708/patches-4.19/950-0643-bcm2835-dma-Add-proper-40-bit-DMA-support.patch @@ -713,7 +713,7 @@ Signed-off-by: Phil Elwell if (!pdev->dev.dma_mask) pdev->dev.dma_mask = &pdev->dev.coherent_dma_mask; -@@ -1020,9 +1206,13 @@ static int bcm2835_dma_probe(struct plat +@@ -1022,9 +1208,13 @@ static int bcm2835_dma_probe(struct plat base = devm_ioremap_resource(&pdev->dev, res); if (IS_ERR(base)) return PTR_ERR(base); @@ -730,7 +730,7 @@ Signed-off-by: Phil Elwell od->base = base; -@@ -1052,6 +1242,14 @@ static int bcm2835_dma_probe(struct plat +@@ -1054,6 +1244,14 @@ static int bcm2835_dma_probe(struct plat platform_set_drvdata(pdev, od); @@ -745,7 +745,7 @@ Signed-off-by: Phil Elwell /* Request DMA channel mask from device tree */ if (of_property_read_u32(pdev->dev.of_node, "brcm,dma-channel-mask", -@@ -1061,18 +1259,34 @@ static int bcm2835_dma_probe(struct plat +@@ -1063,18 +1261,34 @@ static int bcm2835_dma_probe(struct plat goto err_no_dma; } @@ -788,7 +788,7 @@ Signed-off-by: Phil Elwell /* skip masked out channels */ if (!(chans_available & (1 << i))) { irq[i] = -1; -@@ -1095,13 +1309,17 @@ static int bcm2835_dma_probe(struct plat +@@ -1097,13 +1311,17 @@ static int bcm2835_dma_probe(struct plat irq[i] = platform_get_irq(pdev, i < 11 ? i : 11); } @@ -807,7 +807,7 @@ Signed-off-by: Phil Elwell irq_flags = 0; for (j = 0; j <= BCM2835_DMA_MAX_DMA_CHAN_SUPPORTED; j++) if ((i != j) && (irq[j] == irq[i])) { -@@ -1113,9 +1331,10 @@ static int bcm2835_dma_probe(struct plat +@@ -1115,9 +1333,10 @@ static int bcm2835_dma_probe(struct plat rc = bcm2835_dma_chan_init(od, i, irq[i], irq_flags); if (rc) goto err_no_dma; @@ -819,7 +819,7 @@ Signed-off-by: Phil Elwell /* Device-tree DMA controller registration */ rc = of_dma_controller_register(pdev->dev.of_node, -@@ -1147,6 +1366,13 @@ static int bcm2835_dma_remove(struct pla +@@ -1149,6 +1368,13 @@ static int bcm2835_dma_remove(struct pla bcm_dmaman_remove(pdev); dma_async_device_unregister(&od->ddev); diff --git a/target/linux/generic/hack-4.19/550-loop-better-discard-for-block-devices.patch b/target/linux/generic/hack-4.19/550-loop-better-discard-for-block-devices.patch index d6f0f3df0a7..9701d945e63 100644 --- a/target/linux/generic/hack-4.19/550-loop-better-discard-for-block-devices.patch +++ b/target/linux/generic/hack-4.19/550-loop-better-discard-for-block-devices.patch @@ -150,7 +150,7 @@ Reviewed-by: Chaitanya Kulkarni } static void loop_unprepare_queue(struct loop_device *lo) -@@ -1893,7 +1912,10 @@ static void loop_handle_cmd(struct loop_ +@@ -1894,7 +1913,10 @@ static void loop_handle_cmd(struct loop_ failed: /* complete non-aio request */ if (!cmd->use_aio || ret) { diff --git a/target/linux/generic/hack-4.19/661-use_fq_codel_by_default.patch b/target/linux/generic/hack-4.19/661-use_fq_codel_by_default.patch index d86138a1323..16d8f5d67c9 100644 --- a/target/linux/generic/hack-4.19/661-use_fq_codel_by_default.patch +++ b/target/linux/generic/hack-4.19/661-use_fq_codel_by_default.patch @@ -44,7 +44,7 @@ Signed-off-by: Felix Fietkau device, it has to decide which ones to send first, which ones to --- a/net/sched/sch_api.c +++ b/net/sched/sch_api.c -@@ -2159,7 +2159,7 @@ static int __init pktsched_init(void) +@@ -2160,7 +2160,7 @@ static int __init pktsched_init(void) return err; } diff --git a/target/linux/zynq/patches-4.19/110-ARM-zynq-Use-memcpy_toio-instead-of-memcpy.patch b/target/linux/zynq/patches-4.19/110-ARM-zynq-Use-memcpy_toio-instead-of-memcpy.patch deleted file mode 100644 index 03027b20165..00000000000 --- a/target/linux/zynq/patches-4.19/110-ARM-zynq-Use-memcpy_toio-instead-of-memcpy.patch +++ /dev/null @@ -1,35 +0,0 @@ -From a801d4aa6000f7ba0ffc5ba9d841af62ec7e0bb1 Mon Sep 17 00:00:00 2001 -From: Luis Araneda -Date: Tue, 30 Jul 2019 00:29:03 -0400 -Subject: [RFC PATCH] ARM: zynq: Use memcpy_toio instead of memcpy on smp bring-up - -This fixes a kernel panic (read overflow) on memcpy when -FORTIFY_SOURCE is enabled. - -The computed size of memcpy args are: -- p_size (dst): 4294967295 = (size_t) -1 -- q_size (src): 1 -- size (len): 8 - -Additionally, the memory is marked as __iomem, so one of -the memcpy_* functions should be used for read/write - -Signed-off-by: Luis Araneda ---- -As of 2019-08-03, this patch is under review and waiting -comments from the maintainer / author --- - arch/arm/mach-zynq/platsmp.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/arch/arm/mach-zynq/platsmp.c -+++ b/arch/arm/mach-zynq/platsmp.c -@@ -65,7 +65,7 @@ int zynq_cpun_start(u32 address, int cpu - * 0x4: Jump by mov instruction - * 0x8: Jumping address - */ -- memcpy((__force void *)zero, &zynq_secondary_trampoline, -+ memcpy_toio(zero, &zynq_secondary_trampoline, - trampoline_size); - writel(address, zero + trampoline_size); - -- 2.30.2