From: Greg Kroah-Hartman Date: Tue, 16 Dec 2025 10:26:48 +0000 (+0100) Subject: 6.6-stable patches X-Git-Tag: v6.12.63~26 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=424357f88f0a4c8b8600b83efa7f2a2726ae5918;p=thirdparty%2Fkernel%2Fstable-queue.git 6.6-stable patches added patches: loongarch-add-machine_kexec_mask_interrupts-implementation.patch net-lan743x-allocate-rings-outside-zone_dma.patch --- diff --git a/queue-6.6/loongarch-add-machine_kexec_mask_interrupts-implementation.patch b/queue-6.6/loongarch-add-machine_kexec_mask_interrupts-implementation.patch new file mode 100644 index 0000000000..507c10a58e --- /dev/null +++ b/queue-6.6/loongarch-add-machine_kexec_mask_interrupts-implementation.patch @@ -0,0 +1,53 @@ +From chenhuacai@loongson.cn Tue Dec 16 11:19:39 2025 +From: Huacai Chen +Date: Sat, 13 Dec 2025 17:49:50 +0800 +Subject: [PATCH 6.12] LoongArch: Add machine_kexec_mask_interrupts() implementation +To: Greg Kroah-Hartman , Sasha Levin , Huacai Chen +Cc: Xuerui Wang , stable@vger.kernel.org, linux-kernel@vger.kernel.org, loongarch@lists.linux.dev, Huacai Chen , Tianyang Zhang +Message-ID: <20251213094950.1068951-1-chenhuacai@loongson.cn> + +From: Huacai Chen + +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 +Signed-off-by: Huacai Chen +Signed-off-by: Greg Kroah-Hartman +--- + 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.6/net-lan743x-allocate-rings-outside-zone_dma.patch b/queue-6.6/net-lan743x-allocate-rings-outside-zone_dma.patch new file mode 100644 index 0000000000..4253c19cb1 --- /dev/null +++ b/queue-6.6/net-lan743x-allocate-rings-outside-zone_dma.patch @@ -0,0 +1,36 @@ +From 8a8f3f4991761a70834fe6719d09e9fd338a766e Mon Sep 17 00:00:00 2001 +From: Thangaraj Samynathan +Date: Tue, 15 Apr 2025 10:15:09 +0530 +Subject: net: lan743x: Allocate rings outside ZONE_DMA + +From: Thangaraj Samynathan + +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) +Signed-off-by: Thangaraj Samynathan +Reviewed-by: Simon Horman +Link: https://patch.msgid.link/20250415044509.6695-1-thangaraj.s@microchip.com +Signed-off-by: Jakub Kicinski +Signed-off-by: Greg Kroah-Hartman +--- + 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 +@@ -2633,8 +2633,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. diff --git a/queue-6.6/series b/queue-6.6/series index c2d40d7f84..4b61766a84 100644 --- a/queue-6.6/series +++ b/queue-6.6/series @@ -290,3 +290,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