diff options
| author | Matt Fleming <mfleming@cloudflare.com> | 2026-10-13 13:19:43 +0100 |
|---|---|---|
| committer | Joerg Roedel <joerg.roedel@amd.com> | 2026-10-14 15:45:18 +0200 |
| commit | 05d62be400f3ae0f6856f6910a1281e67cbaabcf (patch) | |
| tree | a7b0bb95f70427438ce1554ed4c06ad23405a6b9 /scripts/basic/split-include.c | |
| parent | e74db71a3530740bb783e3a01420f6af245630b4 (diff) | |
| download | linux-05d62be400f3ae0f6856f6910a1281e67cbaabcf.tar.gz linux-05d62be400f3ae0f6856f6910a1281e67cbaabcf.zip | |
iommu/amd: Program device table when kdump reuse fails
Commit 38e5f33ee359 ("iommu/amd: Reuse device table for kdump") made
iommu_set_device_table() return early in every kdump kernel. That is
needed when the previous kernel's device table is reused: the base
register already points at it, and on SNP-enabled systems the register
is locked.
But if reuse isn't possible, early_enable_iommus() falls back to the
freshly allocated table and calls early_enable_iommu(). Because of the
early return, that table is never written to the base register. The
IOMMU keeps using whatever table the register pointed at before, while
the driver writes entries into the new one.
Only skip the write when the previous kernel's table was reused.
Fixes: 38e5f33ee359 ("iommu/amd: Reuse device table for kdump")
Cc: stable@vger.kernel.org
Reviewed-by: Ashish Kalra <ashish.kalra@amd.com>
Reviewed-by: Ankit Soni <Ankit.Soni@amd.com>
Reviewed-by: Vasant Hegde <vasant.hegde@amd.com>
Signed-off-by: Matt Fleming <mfleming@cloudflare.com>
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Diffstat (limited to 'scripts/basic/split-include.c')
0 files changed, 0 insertions, 0 deletions
