All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ARM: Thumb-2: Fix out-of-range offset for Thumb-2 in, proc-macros.S
@ 2014-06-10  7:00 ` Wang Weidong
  0 siblings, 0 replies; 6+ messages in thread
From: Wang Weidong @ 2014-06-10  7:00 UTC (permalink / raw)
  To: linux; +Cc: will.deacon, gregory.clement, nico, linux-arm-kernel, linux-kernel

The STR Instruction Encoding T4 points that the <imm> is in the
range 0-255.So split the instruction into two for Thumb-2. Just
like commit 874d5d3ccc("ARM: 6623/1: Thumb-2: Fix out-of-range
offset for Thumb-2 in proc-v7.S").

Signed-off-by: Wang Weidong <wangweidong1@huawei.com>
---
 arch/arm/mm/proc-macros.S | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/arch/arm/mm/proc-macros.S b/arch/arm/mm/proc-macros.S
index ee1d805..63f710c 100644
--- a/arch/arm/mm/proc-macros.S
+++ b/arch/arm/mm/proc-macros.S
@@ -252,7 +252,9 @@
 	tst	r3, #L_PTE_PRESENT | L_PTE_YOUNG	@ present and young?
 	movne	r2, #0				@ no -> fault
 
-	str	r2, [r0, #2048]!		@ hardware version
+ ARM(	str	r2, [r0, #2048]! 		) @ hardware version
+ THUMB( add	r0, r0, #2048 			)
+ THUMB( str	r2, [r0] 			)
 	mov	ip, #0
 	mcr	p15, 0, r0, c7, c10, 1		@ clean L1 D line
 	mcr	p15, 0, ip, c7, c10, 4		@ data write barrier
-- 
1.7.12



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH] ARM: Thumb-2: Fix out-of-range offset for Thumb-2 in, proc-macros.S
@ 2014-06-10  7:00 ` Wang Weidong
  0 siblings, 0 replies; 6+ messages in thread
From: Wang Weidong @ 2014-06-10  7:00 UTC (permalink / raw)
  To: linux-arm-kernel

The STR Instruction Encoding T4 points that the <imm> is in the
range 0-255.So split the instruction into two for Thumb-2. Just
like commit 874d5d3ccc("ARM: 6623/1: Thumb-2: Fix out-of-range
offset for Thumb-2 in proc-v7.S").

Signed-off-by: Wang Weidong <wangweidong1@huawei.com>
---
 arch/arm/mm/proc-macros.S | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/arch/arm/mm/proc-macros.S b/arch/arm/mm/proc-macros.S
index ee1d805..63f710c 100644
--- a/arch/arm/mm/proc-macros.S
+++ b/arch/arm/mm/proc-macros.S
@@ -252,7 +252,9 @@
 	tst	r3, #L_PTE_PRESENT | L_PTE_YOUNG	@ present and young?
 	movne	r2, #0				@ no -> fault
 
-	str	r2, [r0, #2048]!		@ hardware version
+ ARM(	str	r2, [r0, #2048]! 		) @ hardware version
+ THUMB( add	r0, r0, #2048 			)
+ THUMB( str	r2, [r0] 			)
 	mov	ip, #0
 	mcr	p15, 0, r0, c7, c10, 1		@ clean L1 D line
 	mcr	p15, 0, ip, c7, c10, 4		@ data write barrier
-- 
1.7.12

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH] ARM: Thumb-2: Fix out-of-range offset for Thumb-2 in, proc-macros.S
  2014-06-10  7:00 ` Wang Weidong
@ 2014-06-16 13:49   ` Will Deacon
  -1 siblings, 0 replies; 6+ messages in thread
From: Will Deacon @ 2014-06-16 13:49 UTC (permalink / raw)
  To: Wang Weidong; +Cc: linux, gregory.clement, nico, linux-arm-kernel, linux-kernel

On Tue, Jun 10, 2014 at 08:00:01AM +0100, Wang Weidong wrote:
> The STR Instruction Encoding T4 points that the <imm> is in the
> range 0-255.So split the instruction into two for Thumb-2. Just
> like commit 874d5d3ccc("ARM: 6623/1: Thumb-2: Fix out-of-range
> offset for Thumb-2 in proc-v7.S").
> 
> Signed-off-by: Wang Weidong <wangweidong1@huawei.com>
> ---
>  arch/arm/mm/proc-macros.S | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm/mm/proc-macros.S b/arch/arm/mm/proc-macros.S
> index ee1d805..63f710c 100644
> --- a/arch/arm/mm/proc-macros.S
> +++ b/arch/arm/mm/proc-macros.S
> @@ -252,7 +252,9 @@
>  	tst	r3, #L_PTE_PRESENT | L_PTE_YOUNG	@ present and young?
>  	movne	r2, #0				@ no -> fault
>  
> -	str	r2, [r0, #2048]!		@ hardware version
> + ARM(	str	r2, [r0, #2048]! 		) @ hardware version
> + THUMB( add	r0, r0, #2048 			)
> + THUMB( str	r2, [r0] 			)
>  	mov	ip, #0
>  	mcr	p15, 0, r0, c7, c10, 1		@ clean L1 D line
>  	mcr	p15, 0, ip, c7, c10, 4		@ data write barrier

AFAICT this is in xscale_set_pte_ext_epilogue which should only be built as
ARM. Are you seeing a real issue here?

Will

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH] ARM: Thumb-2: Fix out-of-range offset for Thumb-2 in, proc-macros.S
@ 2014-06-16 13:49   ` Will Deacon
  0 siblings, 0 replies; 6+ messages in thread
From: Will Deacon @ 2014-06-16 13:49 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Jun 10, 2014 at 08:00:01AM +0100, Wang Weidong wrote:
> The STR Instruction Encoding T4 points that the <imm> is in the
> range 0-255.So split the instruction into two for Thumb-2. Just
> like commit 874d5d3ccc("ARM: 6623/1: Thumb-2: Fix out-of-range
> offset for Thumb-2 in proc-v7.S").
> 
> Signed-off-by: Wang Weidong <wangweidong1@huawei.com>
> ---
>  arch/arm/mm/proc-macros.S | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm/mm/proc-macros.S b/arch/arm/mm/proc-macros.S
> index ee1d805..63f710c 100644
> --- a/arch/arm/mm/proc-macros.S
> +++ b/arch/arm/mm/proc-macros.S
> @@ -252,7 +252,9 @@
>  	tst	r3, #L_PTE_PRESENT | L_PTE_YOUNG	@ present and young?
>  	movne	r2, #0				@ no -> fault
>  
> -	str	r2, [r0, #2048]!		@ hardware version
> + ARM(	str	r2, [r0, #2048]! 		) @ hardware version
> + THUMB( add	r0, r0, #2048 			)
> + THUMB( str	r2, [r0] 			)
>  	mov	ip, #0
>  	mcr	p15, 0, r0, c7, c10, 1		@ clean L1 D line
>  	mcr	p15, 0, ip, c7, c10, 4		@ data write barrier

AFAICT this is in xscale_set_pte_ext_epilogue which should only be built as
ARM. Are you seeing a real issue here?

Will

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] ARM: Thumb-2: Fix out-of-range offset for Thumb-2 in, proc-macros.S
  2014-06-16 13:49   ` Will Deacon
@ 2014-06-17  1:23     ` Wang Weidong
  -1 siblings, 0 replies; 6+ messages in thread
From: Wang Weidong @ 2014-06-17  1:23 UTC (permalink / raw)
  To: Will Deacon; +Cc: linux, gregory.clement, nico, linux-arm-kernel, linux-kernel

On 2014/6/16 21:49, Will Deacon wrote:
> On Tue, Jun 10, 2014 at 08:00:01AM +0100, Wang Weidong wrote:
>> The STR Instruction Encoding T4 points that the <imm> is in the
>> range 0-255.So split the instruction into two for Thumb-2. Just
>> like commit 874d5d3ccc("ARM: 6623/1: Thumb-2: Fix out-of-range
>> offset for Thumb-2 in proc-v7.S").
>>
>> Signed-off-by: Wang Weidong <wangweidong1@huawei.com>
>> ---
>>  arch/arm/mm/proc-macros.S | 4 +++-
>>  1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm/mm/proc-macros.S b/arch/arm/mm/proc-macros.S
>> index ee1d805..63f710c 100644
>> --- a/arch/arm/mm/proc-macros.S
>> +++ b/arch/arm/mm/proc-macros.S
>> @@ -252,7 +252,9 @@
>>  	tst	r3, #L_PTE_PRESENT | L_PTE_YOUNG	@ present and young?
>>  	movne	r2, #0				@ no -> fault
>>  
>> -	str	r2, [r0, #2048]!		@ hardware version
>> + ARM(	str	r2, [r0, #2048]! 		) @ hardware version
>> + THUMB( add	r0, r0, #2048 			)
>> + THUMB( str	r2, [r0] 			)
>>  	mov	ip, #0
>>  	mcr	p15, 0, r0, c7, c10, 1		@ clean L1 D line
>>  	mcr	p15, 0, ip, c7, c10, 4		@ data write barrier
> 
> AFAICT this is in xscale_set_pte_ext_epilogue which should only be built as
> ARM. Are you seeing a real issue here?
> 
> Will
> 

Hi will,

I don't see any issue here. I just review the codes while I learn thumb-2.
It does only build as ARM, so ignore it.

Regards
Wang

> .
> 



^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH] ARM: Thumb-2: Fix out-of-range offset for Thumb-2 in, proc-macros.S
@ 2014-06-17  1:23     ` Wang Weidong
  0 siblings, 0 replies; 6+ messages in thread
From: Wang Weidong @ 2014-06-17  1:23 UTC (permalink / raw)
  To: linux-arm-kernel

On 2014/6/16 21:49, Will Deacon wrote:
> On Tue, Jun 10, 2014 at 08:00:01AM +0100, Wang Weidong wrote:
>> The STR Instruction Encoding T4 points that the <imm> is in the
>> range 0-255.So split the instruction into two for Thumb-2. Just
>> like commit 874d5d3ccc("ARM: 6623/1: Thumb-2: Fix out-of-range
>> offset for Thumb-2 in proc-v7.S").
>>
>> Signed-off-by: Wang Weidong <wangweidong1@huawei.com>
>> ---
>>  arch/arm/mm/proc-macros.S | 4 +++-
>>  1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm/mm/proc-macros.S b/arch/arm/mm/proc-macros.S
>> index ee1d805..63f710c 100644
>> --- a/arch/arm/mm/proc-macros.S
>> +++ b/arch/arm/mm/proc-macros.S
>> @@ -252,7 +252,9 @@
>>  	tst	r3, #L_PTE_PRESENT | L_PTE_YOUNG	@ present and young?
>>  	movne	r2, #0				@ no -> fault
>>  
>> -	str	r2, [r0, #2048]!		@ hardware version
>> + ARM(	str	r2, [r0, #2048]! 		) @ hardware version
>> + THUMB( add	r0, r0, #2048 			)
>> + THUMB( str	r2, [r0] 			)
>>  	mov	ip, #0
>>  	mcr	p15, 0, r0, c7, c10, 1		@ clean L1 D line
>>  	mcr	p15, 0, ip, c7, c10, 4		@ data write barrier
> 
> AFAICT this is in xscale_set_pte_ext_epilogue which should only be built as
> ARM. Are you seeing a real issue here?
> 
> Will
> 

Hi will,

I don't see any issue here. I just review the codes while I learn thumb-2.
It does only build as ARM, so ignore it.

Regards
Wang

> .
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2014-06-17  1:26 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-06-10  7:00 [PATCH] ARM: Thumb-2: Fix out-of-range offset for Thumb-2 in, proc-macros.S Wang Weidong
2014-06-10  7:00 ` Wang Weidong
2014-06-16 13:49 ` Will Deacon
2014-06-16 13:49   ` Will Deacon
2014-06-17  1:23   ` Wang Weidong
2014-06-17  1:23     ` Wang Weidong

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.