From: bill4carson@gmail.com (bill4carson at gmail.com)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] Skip unnecessary pte makeup when clearing it.
Date: Mon, 30 Jan 2012 16:36:07 +0800 [thread overview]
Message-ID: <1327912567-18966-2-git-send-email-bill4carson@gmail.com> (raw)
In-Reply-To: <1327912567-18966-1-git-send-email-bill4carson@gmail.com>
From: Bill Carson <bill4carson@gmail.com>
If we are only about to clear a hardware pte entry, then pte makeup code is
unnecessary for cpu_v7_set_pte_ext and armv6_set_pte_ext, so just skip it.
Signed-off-by: Bill Carson <bill4carson@gmail.com>
---
arch/arm/mm/proc-macros.S | 10 +++++-----
arch/arm/mm/proc-v7-2level.S | 10 +++++-----
2 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/arch/arm/mm/proc-macros.S b/arch/arm/mm/proc-macros.S
index 2d8ff3a..907b524 100644
--- a/arch/arm/mm/proc-macros.S
+++ b/arch/arm/mm/proc-macros.S
@@ -138,6 +138,10 @@
.macro armv6_set_pte_ext pfx
str r1, [r0], #2048 @ linux version
+ tst r1, #L_PTE_YOUNG
+ tstne r1, #L_PTE_PRESENT
+ moveq r3, #0
+ beq 1f
bic r3, r1, #0x000003fc
bic r3, r3, #PTE_TYPE_MASK
orr r3, r3, r2
@@ -163,11 +167,7 @@
orrne r3, r3, #PTE_EXT_XN
orr r3, r3, r2
-
- tst r1, #L_PTE_YOUNG
- tstne r1, #L_PTE_PRESENT
- moveq r3, #0
-
+1:
str r3, [r0]
mcr p15, 0, r0, c7, c10, 1 @ flush_pte
.endm
diff --git a/arch/arm/mm/proc-v7-2level.S b/arch/arm/mm/proc-v7-2level.S
index 3a4b3e7..0ff5338 100644
--- a/arch/arm/mm/proc-v7-2level.S
+++ b/arch/arm/mm/proc-v7-2level.S
@@ -76,6 +76,10 @@ ENTRY(cpu_v7_set_pte_ext)
#ifdef CONFIG_MMU
str r1, [r0] @ linux version
+ tst r1, #L_PTE_YOUNG
+ tstne r1, #L_PTE_PRESENT
+ moveq r3, #0
+ beq 1f
bic r3, r1, #0x000003f0
bic r3, r3, #PTE_TYPE_MASK
orr r3, r3, r2
@@ -98,11 +102,7 @@ ENTRY(cpu_v7_set_pte_ext)
tst r1, #L_PTE_XN
orrne r3, r3, #PTE_EXT_XN
-
- tst r1, #L_PTE_YOUNG
- tstne r1, #L_PTE_PRESENT
- moveq r3, #0
-
+1:
ARM( str r3, [r0, #2048]! )
THUMB( add r0, r0, #2048 )
THUMB( str r3, [r0] )
--
1.7.1
next prev parent reply other threads:[~2012-01-30 8:36 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-01-30 8:36 [PATCH V3] Skip unnecessary pte makeup when clearing it bill4carson at gmail.com
2012-01-30 8:36 ` bill4carson at gmail.com [this message]
2012-02-03 6:54 ` [PATCH] " Uwe Kleine-König
2012-02-03 7:43 ` bill4carson
2012-02-03 7:48 ` bill4carson
2012-02-03 9:35 ` Uwe Kleine-König
2012-02-03 10:09 ` bill4carson
2012-02-03 11:27 ` Catalin Marinas
-- strict thread matches above, loose matches on Subject: below --
2012-01-30 1:47 [PATCH V2] " bill4carson at gmail.com
2012-01-30 1:47 ` [PATCH] " bill4carson at gmail.com
2012-01-30 7:58 ` Uwe Kleine-König
2012-01-30 8:29 ` bill4carson
2012-01-18 9:52 bill4carson at gmail.com
2012-01-18 10:20 ` Uwe Kleine-König
2012-01-19 1:52 ` bill4carson
2012-01-18 10:33 ` Catalin Marinas
2012-01-19 1:57 ` bill4carson
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=1327912567-18966-2-git-send-email-bill4carson@gmail.com \
--to=bill4carson@gmail.com \
--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).