]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
5.10-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 9 Jan 2026 10:53:51 +0000 (11:53 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 9 Jan 2026 10:53:51 +0000 (11:53 +0100)
added patches:
revert-iommu-amd-skip-enabling-command-event-buffers-for-kdump.patch

queue-5.10/revert-iommu-amd-skip-enabling-command-event-buffers-for-kdump.patch [new file with mode: 0644]
queue-5.10/series

diff --git a/queue-5.10/revert-iommu-amd-skip-enabling-command-event-buffers-for-kdump.patch b/queue-5.10/revert-iommu-amd-skip-enabling-command-event-buffers-for-kdump.patch
new file mode 100644 (file)
index 0000000..2300382
--- /dev/null
@@ -0,0 +1,68 @@
+From 5ecef76682ef506bae706f8122f056fe723d9c7c Mon Sep 17 00:00:00 2001
+From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+Date: Fri, 9 Jan 2026 11:48:34 +0100
+Subject: Revert "iommu/amd: Skip enabling command/event buffers for kdump"
+
+From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+This reverts commit 30e91eeb0bc9b3daf402b26176d1d52c29ab53e4 which is
+commit 9be15fbfc6c5c89c22cf6e209f66ea43ee0e58bb upstream.
+
+This causes problems in older kernel trees as SNP host kdump is not
+supported in them, so drop it from the stable branches.
+
+Reported-by: Ashish Kalra <ashish.kalra@amd.com>
+Link: https://lore.kernel.org/r/dacdff7f-0606-4ed5-b056-2de564404d51@amd.com
+Cc: Vasant Hegde <vasant.hegde@amd.com>
+Cc: Sairaj Kodilkar <sarunkod@amd.com>
+Cc: Joerg Roedel <joerg.roedel@amd.com>
+Cc: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/iommu/amd/init.c |   28 +++++++++-------------------
+ 1 file changed, 9 insertions(+), 19 deletions(-)
+
+--- a/drivers/iommu/amd/init.c
++++ b/drivers/iommu/amd/init.c
+@@ -697,16 +697,11 @@ static void iommu_enable_command_buffer(
+       BUG_ON(iommu->cmd_buf == NULL);
+-      if (!is_kdump_kernel()) {
+-              /*
+-               * Command buffer is re-used for kdump kernel and setting
+-               * of MMIO register is not required.
+-               */
+-              entry = iommu_virt_to_phys(iommu->cmd_buf);
+-              entry |= MMIO_CMD_SIZE_512;
+-              memcpy_toio(iommu->mmio_base + MMIO_CMD_BUF_OFFSET,
+-                          &entry, sizeof(entry));
+-      }
++      entry = iommu_virt_to_phys(iommu->cmd_buf);
++      entry |= MMIO_CMD_SIZE_512;
++
++      memcpy_toio(iommu->mmio_base + MMIO_CMD_BUF_OFFSET,
++                  &entry, sizeof(entry));
+       amd_iommu_reset_cmd_buffer(iommu);
+ }
+@@ -755,15 +750,10 @@ static void iommu_enable_event_buffer(st
+       BUG_ON(iommu->evt_buf == NULL);
+-      if (!is_kdump_kernel()) {
+-              /*
+-               * Event buffer is re-used for kdump kernel and setting
+-               * of MMIO register is not required.
+-               */
+-              entry = iommu_virt_to_phys(iommu->evt_buf) | EVT_LEN_MASK;
+-              memcpy_toio(iommu->mmio_base + MMIO_EVT_BUF_OFFSET,
+-                          &entry, sizeof(entry));
+-      }
++      entry = iommu_virt_to_phys(iommu->evt_buf) | EVT_LEN_MASK;
++
++      memcpy_toio(iommu->mmio_base + MMIO_EVT_BUF_OFFSET,
++                  &entry, sizeof(entry));
+       /* set head and tail to zero manually */
+       writel(0x00, iommu->mmio_base + MMIO_EVT_HEAD_OFFSET);
index 3fbdd569973bddd6826a8ea9d52b3500522ef3a1..c9060092f607baaf5c681118b207415dcfdde9a3 100644 (file)
@@ -406,3 +406,4 @@ leds-lp50xx-get-rid-of-redundant-check-in-lp50xx_enable_disable.patch
 leds-lp50xx-remove-duplicated-error-reporting-in-.remove.patch
 leds-leds-lp50xx-enable-chip-before-any-communication.patch
 pwm-stm32-always-program-polarity.patch
+revert-iommu-amd-skip-enabling-command-event-buffers-for-kdump.patch