From: Stephen Rothwell <sfr@canb.auug.org.au>
To: Catalin Marinas <catalin.marinas@arm.com>
Cc: linux-next@vger.kernel.org, linux-kernel@vger.kernel.org,
Russell King <rmk@arm.linux.org.uk>
Subject: linux-next: manual merge of the arm-lpae tree with the arm tree
Date: Fri, 10 Jun 2011 10:52:55 +1000 [thread overview]
Message-ID: <20110610105255.3105eef2.sfr@canb.auug.org.au> (raw)
Hi Catalin,
Today's linux-next merge of the arm-lpae tree got a conflict in
arch/arm/mm/context.c between commit 07989b7ad63a ("Revert "ARM: 6943/1:
mm: use TTBR1 instead of reserved context ID"") from the arm tree and
commit 21fa7e3ea279 ("ARM: LPAE: Add context switching support") from the
arm-lpae tree.
I fixed it up (I think - see below) and can carry the fix as necessary.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc arch/arm/mm/context.c
index b0ee9ba,2dff1cf..0000000
--- a/arch/arm/mm/context.c
+++ b/arch/arm/mm/context.c
@@@ -22,11 -22,37 +22,34 @@@ unsigned int cpu_last_asid = ASID_FIRST
DEFINE_PER_CPU(struct mm_struct *, current_mm);
#endif
+ #ifdef CONFIG_ARM_LPAE
+ static void cpu_set_reserved_ttbr0(void)
+ {
+ unsigned long ttbl = __pa(swapper_pg_dir);
+ unsigned long ttbh = 0;
+
+ /*
+ * Set TTBR0 to swapper_pg_dir. Note that swapper_pg_dir only contains
+ * global entries so the ASID value is not relevant.
+ */
+ asm(
+ " mcrr p15, 0, %0, %1, c2 @ set TTBR0\n"
+ :
+ : "r" (ttbl), "r" (ttbh));
+ }
+ #else
+ static void cpu_set_reserved_ttbr0(void)
+ {
- u32 ttb;
-
- /* Copy TTBR1 into TTBR0 */
- asm volatile(
- " mrc p15, 0, %0, c2, c0, 1 @ read TTBR1\n"
- " mcr p15, 0, %0, c2, c0, 0 @ set TTBR0\n"
- : "=r" (ttb));
++ /* set the reserved ASID before flushing the TLB */
++ asm("mcr p15, 0, %0, c13, c0, 1\n" : : "r" (0));
+ }
+ #endif
+
/*
* We fork()ed a process, and we need a new context for the child
- * to run in.
+ * to run in. We reserve version 0 for initial tasks so we will
+ * always allocate an ASID. The ASID 0 is reserved for the TTBR
+ * register changing sequence.
*/
void __init_new_context(struct task_struct *tsk, struct mm_struct *mm)
{
next reply other threads:[~2011-06-10 0:53 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-10 0:52 Stephen Rothwell [this message]
2011-06-10 14:43 ` linux-next: manual merge of the arm-lpae tree with the arm tree Catalin Marinas
2011-06-17 0:26 Stephen Rothwell
2011-06-17 10:17 ` Catalin Marinas
2011-07-07 1:14 Stephen Rothwell
2011-09-12 1:15 Stephen Rothwell
2011-11-22 1:03 Stephen Rothwell
2011-11-22 8:13 ` Russell King
2011-11-22 9:58 ` Catalin Marinas
2011-11-22 9:47 ` Catalin Marinas
2011-11-22 11:05 ` Catalin Marinas
2011-12-08 0:00 Stephen Rothwell
2011-12-09 10:36 ` Catalin Marinas
2011-12-09 11:11 ` Stephen Rothwell
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=20110610105255.3105eef2.sfr@canb.auug.org.au \
--to=sfr@canb.auug.org.au \
--cc=catalin.marinas@arm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-next@vger.kernel.org \
--cc=rmk@arm.linux.org.uk \
/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).