linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: bill4carson@gmail.com (bill4carson)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] Skip unnecessary pte makeup when clearing it.
Date: Thu, 19 Jan 2012 09:52:13 +0800	[thread overview]
Message-ID: <4F17774D.1040307@gmail.com> (raw)
In-Reply-To: <20120118102055.GV14252@pengutronix.de>



On 2012?01?18? 18:20, Uwe Kleine-K?nig wrote:
> On Wed, Jan 18, 2012 at 05:52:25PM +0800, bill4carson at gmail.com wrote:
>> 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..11288b3 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
>> +	moveq	set_pte
>>   	bic	r3, r1, #0x000003fc
>>   	bic	r3, r3, #PTE_TYPE_MASK
>>   	orr	r3, r3, r2
> I guess you want
>
> 	beq	set_pte
>
> instead of
>
> 	moveq	set_pte
>
> here?!
>
> Additionally this doesn't seem to be able to be compiled to thumb. I
> don't know if it must be though.
>
Hi Uwe

Thanks for your reply :) I compile with following thumb configuration
build and run on hardware board show nothing wrong on my side.
I am not aware of any other THUMB configuration, so could you give
me more information about your concern ?

iamroot at iamroot-OptiPlex-780:~/workbench/vm_zone/linux/linux-2.6$ cat 
.config | grep THUMB
CONFIG_ARM_THUMB=y
CONFIG_ARM_THUMBEE=y
CONFIG_THUMB2_KERNEL=y
CONFIG_THUMB2_AVOID_R_ARM_THM_JUMP11=y
CONFIG_XZ_DEC_ARMTHUMB=y


00000028 <cpu_v7_set_pte_ext>:
28: 6001 str r1, [r0, #0]
2a: f011 0f02 tst.w r1, #2
2e: bf12 itee ne
30: f011 0f01 tstne.w r1, #1
34: 2300 moveq r3, #0
36: e01d beq.n 74 <cpu_v7_set_pte_ext+0x4c>
38: f421 737c bic.w r3, r1, #1008 ; 0x3f0
3c: f023 0303 bic.w r3, r3, #3
40: ea43 0302 orr.w r3, r3, r2
44: f043 0312 orr.w r3, r3, #18
48: f011 0f10 tst.w r1, #16
4c: bf18 it ne
4e: f043 0340 orrne.w r3, r3, #64 ; 0x40
52: f081 0140 eor.w r1, r1, #64 ; 0x40
56: f011 0fc0 tst.w r1, #192 ; 0xc0
5a: bf18 it ne
5c: f443 7300 orrne.w r3, r3, #512 ; 0x200
60: f411 7f80 tst.w r1, #256 ; 0x100
64: bf18 it ne
66: f043 0320 orrne.w r3, r3, #32
6a: f411 7f00 tst.w r1, #512 ; 0x200
6e: bf18 it ne
70: f043 0301 orrne.w r3, r3, #1
74: f500 6000 add.w r0, r0, #2048 ; 0x800
78: 6003 str r3, [r0, #0]
7a: ee07 0f3a mcr 15, 0, r0, cr7, cr10, {1}
7e: 46f7 mov pc, lr



>> @@ -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
>> -
>> +set_pte:
> Best regards
> Uwe
>

-- 
I am a slow learner
but I will keep trying to fight for my dreams!

--bill

  reply	other threads:[~2012-01-19  1:52 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-18  9:52 [PATCH] Skip unnecessary pte makeup when clearing it bill4carson at gmail.com
2012-01-18 10:20 ` Uwe Kleine-König
2012-01-19  1:52   ` bill4carson [this message]
2012-01-18 10:33 ` Catalin Marinas
2012-01-19  1:57   ` bill4carson
  -- 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-30  8:36 [PATCH V3] " bill4carson at gmail.com
2012-01-30  8:36 ` [PATCH] " bill4carson at gmail.com
2012-02-03  6:54   ` 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

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=4F17774D.1040307@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).