From: linux@arm.linux.org.uk (Russell King - ARM Linux)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 2/2] remove the debugging restrictions in devicemaps_init()
Date: Sun, 6 May 2012 17:30:16 +0100 [thread overview]
Message-ID: <20120506163016.GA7412@n2100.arm.linux.org.uk> (raw)
In-Reply-To: <1331876668-32492-3-git-send-email-nico@fluxnic.net>
On Fri, Mar 16, 2012 at 01:44:28AM -0400, Nicolas Pitre wrote:
> More code is getting involved through devicemaps_init() these days,
> including calls to printk() or BUG(). Not being able to access any
> device to print out debugging information and only being presented with
> a silent kernel crash in that case has become a major inconvenience
> lately.
>
> By having the active page table separate from the one being initialized,
> it is possible to preserve the initial debug mapping that was set in
> head.S until the final page table is ready. Because there exists some
> code that installs a partial mapping in order to probe the hardware
> before installing additional mappings, it is necessary to set up the
> vector mapping early which enables the fault handler to copy some of
> the newly created mappings into our page table copy as needed.
>
> This patch implements such a temporary page table copy only for
> non LPAE configurations at the moment.
I've been thinking about this on and off since you posted it, and I'm now
convinced this will cause regressions. You've probably forgotten about
those CPUs which need to read data in order to clear unwanted cache lines
from their cache.
This patch would cause all such CPUs to freeze when switching to or from
the temporary mapping, because neither page table will contain the necessary
mappings to allow those accesses to succeed.
So I don't think this approach can work.
next prev parent reply other threads:[~2012-05-06 16:30 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-16 5:44 [PATCH 0/2] improve debugability of early boot of the kernel Nicolas Pitre
2012-03-16 5:44 ` [PATCH 1/2] DEBUG_LL: limit early mapping to the minimum Nicolas Pitre
2012-03-16 5:44 ` [PATCH 2/2] remove the debugging restrictions in devicemaps_init() Nicolas Pitre
2012-05-06 16:30 ` Russell King - ARM Linux [this message]
2012-05-08 4:19 ` Nicolas Pitre
2012-05-08 7:14 ` Russell King - ARM Linux
2012-05-08 16:17 ` Nicolas Pitre
2012-05-12 13:49 ` Russell King - ARM Linux
2012-05-12 16:16 ` Nicolas Pitre
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=20120506163016.GA7412@n2100.arm.linux.org.uk \
--to=linux@arm.linux.org.uk \
--cc=linux-arm-kernel@lists.infradead.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).