--- /dev/null
+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)
--- /dev/null
+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.
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