]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
6.1-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 16 Dec 2025 10:26:31 +0000 (11:26 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 16 Dec 2025 10:26:31 +0000 (11:26 +0100)
added patches:
loongarch-add-machine_kexec_mask_interrupts-implementation.patch
net-lan743x-allocate-rings-outside-zone_dma.patch

queue-6.1/loongarch-add-machine_kexec_mask_interrupts-implementation.patch [new file with mode: 0644]
queue-6.1/net-lan743x-allocate-rings-outside-zone_dma.patch [new file with mode: 0644]
queue-6.1/series

diff --git a/queue-6.1/loongarch-add-machine_kexec_mask_interrupts-implementation.patch b/queue-6.1/loongarch-add-machine_kexec_mask_interrupts-implementation.patch
new file mode 100644 (file)
index 0000000..507c10a
--- /dev/null
@@ -0,0 +1,53 @@
+From chenhuacai@loongson.cn  Tue Dec 16 11:19:39 2025
+From: Huacai Chen <chenhuacai@loongson.cn>
+Date: Sat, 13 Dec 2025 17:49:50 +0800
+Subject: [PATCH 6.12] LoongArch: Add machine_kexec_mask_interrupts() implementation
+To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Sasha Levin <sashal@kernel.org>, Huacai Chen <chenhuacai@kernel.org>
+Cc: Xuerui Wang <kernel@xen0n.name>, stable@vger.kernel.org, linux-kernel@vger.kernel.org, loongarch@lists.linux.dev, Huacai Chen <chenhuacai@loongson.cn>, Tianyang Zhang <zhangtianyang@loongson.cn>
+Message-ID: <20251213094950.1068951-1-chenhuacai@loongson.cn>
+
+From: Huacai Chen <chenhuacai@loongson.cn>
+
+Commit 863a320dc6fd7c855f47da4b ("LoongArch: Mask all interrupts during
+kexec/kdump") is backported to LTS branches, but they lack a generic
+machine_kexec_mask_interrupts() implementation, so add an arch-specific
+one.
+
+Signed-off-by: Tianyang Zhang <zhangtianyang@loongson.cn>
+Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ arch/loongarch/kernel/machine_kexec.c |   22 ++++++++++++++++++++++
+ 1 file changed, 22 insertions(+)
+
+--- a/arch/loongarch/kernel/machine_kexec.c
++++ b/arch/loongarch/kernel/machine_kexec.c
+@@ -136,6 +136,28 @@ void kexec_reboot(void)
+       BUG();
+ }
++static void machine_kexec_mask_interrupts(void)
++{
++      unsigned int i;
++      struct irq_desc *desc;
++
++      for_each_irq_desc(i, desc) {
++              struct irq_chip *chip;
++
++              chip = irq_desc_get_chip(desc);
++              if (!chip)
++                      continue;
++
++              if (chip->irq_eoi && irqd_irq_inprogress(&desc->irq_data))
++                      chip->irq_eoi(&desc->irq_data);
++
++              if (chip->irq_mask)
++                      chip->irq_mask(&desc->irq_data);
++
++              if (chip->irq_disable && !irqd_irq_disabled(&desc->irq_data))
++                      chip->irq_disable(&desc->irq_data);
++      }
++}
+ #ifdef CONFIG_SMP
+ static void kexec_shutdown_secondary(void *regs)
diff --git a/queue-6.1/net-lan743x-allocate-rings-outside-zone_dma.patch b/queue-6.1/net-lan743x-allocate-rings-outside-zone_dma.patch
new file mode 100644 (file)
index 0000000..b27e9b7
--- /dev/null
@@ -0,0 +1,36 @@
+From 8a8f3f4991761a70834fe6719d09e9fd338a766e Mon Sep 17 00:00:00 2001
+From: Thangaraj Samynathan <thangaraj.s@microchip.com>
+Date: Tue, 15 Apr 2025 10:15:09 +0530
+Subject: net: lan743x: Allocate rings outside ZONE_DMA
+
+From: Thangaraj Samynathan <thangaraj.s@microchip.com>
+
+commit 8a8f3f4991761a70834fe6719d09e9fd338a766e upstream.
+
+The driver allocates ring elements using GFP_DMA flags. There is
+no dependency from LAN743x hardware on memory allocation should be
+in DMA_ZONE. Hence modifying the flags to use only GFP_ATOMIC. This
+is consistent with other callers of lan743x_rx_init_ring_element().
+
+Reported-by: Zhang, Liyin(CN) <Liyin.Zhang.CN@windriver.com>
+Signed-off-by: Thangaraj Samynathan <thangaraj.s@microchip.com>
+Reviewed-by: Simon Horman <horms@kernel.org>
+Link: https://patch.msgid.link/20250415044509.6695-1-thangaraj.s@microchip.com
+Signed-off-by: Jakub Kicinski <kuba@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/net/ethernet/microchip/lan743x_main.c |    3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+--- a/drivers/net/ethernet/microchip/lan743x_main.c
++++ b/drivers/net/ethernet/microchip/lan743x_main.c
+@@ -2627,8 +2627,7 @@ static int lan743x_rx_process_buffer(str
+       /* save existing skb, allocate new skb and map to dma */
+       skb = buffer_info->skb;
+-      if (lan743x_rx_init_ring_element(rx, rx->last_head,
+-                                       GFP_ATOMIC | GFP_DMA)) {
++      if (lan743x_rx_init_ring_element(rx, rx->last_head, GFP_ATOMIC)) {
+               /* failed to allocate next skb.
+                * Memory is very low.
+                * Drop this packet and reuse buffer.
index 6c375a42db3884e1ac49fdd267130b5da66ac8e1..6016b611a660707c4b41c6dc679e611bcfbb811a 100644 (file)
@@ -216,3 +216,5 @@ efi-cper-adjust-infopfx-size-to-accept-an-extra-spac.patch
 efi-cper-align-arm-cper-type-with-uefi-2.9a-2.10-spe.patch
 irqchip-mchp-eic-fix-error-code-in-mchp_eic_domain_a.patch
 ocfs2-fix-memory-leak-in-ocfs2_merge_rec_left.patch
+loongarch-add-machine_kexec_mask_interrupts-implementation.patch
+net-lan743x-allocate-rings-outside-zone_dma.patch