From: tip-bot for Borislav Petkov <tipbot@zytor.com>
To: linux-tip-commits@vger.kernel.org
Cc: linux-kernel@vger.kernel.org, bp@suse.de, tglx@linutronix.de,
hpa@zytor.com, x86@kernel.org, rppt@linux.ibm.com,
mingo@kernel.org
Subject: [tip:x86/cleanups] x86/gart: Rewrite early_gart_iommu_check() comment
Date: Mon, 5 Nov 2018 05:39:56 -0800 [thread overview]
Message-ID: <tip-59d130cc9b92b92feaada94a0802fa747038d17f@git.kernel.org> (raw)
In-Reply-To: <20181101155314.30690-1-bp@alien8.de>
Commit-ID: 59d130cc9b92b92feaada94a0802fa747038d17f
Gitweb: https://git.kernel.org/tip/59d130cc9b92b92feaada94a0802fa747038d17f
Author: Borislav Petkov <bp@suse.de>
AuthorDate: Thu, 1 Nov 2018 16:24:43 +0100
Committer: Borislav Petkov <bp@suse.de>
CommitDate: Mon, 5 Nov 2018 14:35:10 +0100
x86/gart: Rewrite early_gart_iommu_check() comment
... to actually explain what the function is trying to do.
Reported-by: Mike Rapoport <rppt@linux.ibm.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Cc: <x86@kernel.org>
Link: http://lkml.kernel.org/r/20181101155314.30690-1-bp@alien8.de
---
arch/x86/kernel/aperture_64.c | 25 +++++++++++++++----------
1 file changed, 15 insertions(+), 10 deletions(-)
diff --git a/arch/x86/kernel/aperture_64.c b/arch/x86/kernel/aperture_64.c
index 2c4d5ece7456..4fb4b7f53568 100644
--- a/arch/x86/kernel/aperture_64.c
+++ b/arch/x86/kernel/aperture_64.c
@@ -264,18 +264,23 @@ static int __init parse_gart_mem(char *p)
}
early_param("gart_fix_e820", parse_gart_mem);
+/*
+ * With kexec/kdump, if the first kernel doesn't shutdown the GART and the
+ * second kernel allocates a different GART region, there might be two
+ * overlapping GART regions present:
+ *
+ * - the first still used by the GART initialized in the first kernel.
+ * - (sub-)set of it used as normal RAM by the second kernel.
+ *
+ * which leads to memory corruptions and a kernel panic eventually.
+ *
+ * This can also happen if the BIOS has forgotten to mark the GART region
+ * as reserved.
+ *
+ * Try to update the e820 map to mark that new region as reserved.
+ */
void __init early_gart_iommu_check(void)
{
- /*
- * in case it is enabled before, esp for kexec/kdump,
- * previous kernel already enable that. memset called
- * by allocate_aperture/__alloc_bootmem_nopanic cause restart.
- * or second kernel have different position for GART hole. and new
- * kernel could use hole as RAM that is still used by GART set by
- * first kernel
- * or BIOS forget to put that in reserved.
- * try to update e820 to make that region as reserved.
- */
u32 agp_aper_order = 0;
int i, fix, slot, valid_agp = 0;
u32 ctl;
next prev parent reply other threads:[~2018-11-05 13:45 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-11-01 15:53 [PATCH] x86/gart: Rewrite early_gart_iommu_check() comment Borislav Petkov
2018-11-01 17:09 ` Thomas Gleixner
2018-11-05 13:39 ` tip-bot for Borislav Petkov [this message]
2018-11-05 15:35 ` Ingo Molnar
2018-11-05 20:20 ` Borislav Petkov
2018-11-05 20:24 ` [tip:x86/cleanups] " tip-bot for Borislav Petkov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=tip-59d130cc9b92b92feaada94a0802fa747038d17f@git.kernel.org \
--to=tipbot@zytor.com \
--cc=bp@suse.de \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tip-commits@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=rppt@linux.ibm.com \
--cc=tglx@linutronix.de \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.