* Re: [PATCH powerpc] Fix parameter restoring issue in commit 752a6422f
2014-06-25 4:00 [PATCH powerpc] Fix parameter restoring issue in commit 752a6422f Li Zhong
@ 2014-06-25 4:10 ` Mike Qiu
2014-06-25 4:20 ` Benjamin Herrenschmidt
2014-06-25 4:20 ` Li Zhong
2 siblings, 0 replies; 5+ messages in thread
From: Mike Qiu @ 2014-06-25 4:10 UTC (permalink / raw)
To: linuxppc-dev
Hi Zhong,
I really need this patch :)
BTW, it seems that this bug just happens in 3.16-rc1 as I reported.
Thanks
Mike
On 06/25/2014 12:00 PM, Li Zhong wrote:
> In commit 752a6422f, new stack frame is created for parameters.
>
> However, the r1 is added back a little earlier, so r3 and r4 are
> restored from a wrong place, which could cause following error during
> boot:
>
> Querying for OPAL presence... there !
> DEFAULT CATCH!, exception-handler=fff00700
> at %SRR0: 0000000004223058 %SRR1: 8000000000081002
> Open Firmware exception handler entered from non-OF code
>
> Client's Fix Pt Regs:
> 00 0000000004223054 0000000004223020 0000000004fbe838 0000000000000002
> 04 0000000028002024 0000000004fbe838 000000000427e838 0000000004222f20
> 08 0000000000000000 0000000000000000 0000000004222f20 0000000000001002
> 0c a000000000000001 0000000000000000 0000000001a3fd20 00000000040eb170
> 10 00000000040eb628 00000000040eb368 fffffffffffffffd 0000000001a3fd20
> 14 0000000001b37f00 000000000f340000 0000000000cc0000 000000000f340000
> 18 00000000040ebb08 0000000003580000 00000000040eb128 0000000004285920
> 1c 0000000001a3fd60 00000000040eb100 7c0802a6f8010010 f821ff914b91ebd1
> Special Regs:
> %IV: 00000700 %CR: 28002022 %XER: 00000000 %DSISR: 42000000
> %SRR0: 0000000004223058 %SRR1: 8000000000081002
> %LR: 0000000004223054 %CTR: 0000000000000000
> %DAR: 01a3fcf00020b4ac
> Virtual PID = 0
> ok
>
> Signed-off-by: Li Zhong <zhong@linux.vnet.ibm.com>
> ---
> diff --git a/arch/powerpc/platforms/powernv/opal-takeover.S b/arch/powerpc/platforms/powernv/opal-takeover.S
> index 11a3169..9093540 100644
> --- a/arch/powerpc/platforms/powernv/opal-takeover.S
> +++ b/arch/powerpc/platforms/powernv/opal-takeover.S
> @@ -5,6 +5,7 @@
> *
> * This program is free software; you can redistribute it and/or
> * modify it under the terms of the GNU General Public License
> +B
> * as published by the Free Software Foundation; either version
> * 2 of the License, or (at your option) any later version.
> */
> @@ -27,11 +28,11 @@ _GLOBAL(opal_query_takeover)
> li r3,H_HAL_TAKEOVER
> li r4,H_HAL_TAKEOVER_QUERY_MAGIC
> HVSC
> - addi r1,r1,STACKFRAMESIZE
> ld r10,STK_PARAM(R3)(r1)
> std r4,0(r10)
> ld r10,STK_PARAM(R4)(r1)
> std r5,0(r10)
> + addi r1,r1,STACKFRAMESIZE
> lwz r0,8(r1)
> mtcrf 0xff,r0
> blr
>
>
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev@lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/linuxppc-dev
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH powerpc] Fix parameter restoring issue in commit 752a6422f
2014-06-25 4:00 [PATCH powerpc] Fix parameter restoring issue in commit 752a6422f Li Zhong
2014-06-25 4:10 ` Mike Qiu
@ 2014-06-25 4:20 ` Benjamin Herrenschmidt
2014-06-25 4:20 ` Li Zhong
2 siblings, 0 replies; 5+ messages in thread
From: Benjamin Herrenschmidt @ 2014-06-25 4:20 UTC (permalink / raw)
To: Li Zhong
Cc: Paul Mackerras, PowerPC email list, Anton Blanchard,
ulrich.weigand
On Wed, 2014-06-25 at 12:00 +0800, Li Zhong wrote:
> In commit 752a6422f, new stack frame is created for parameters.
>
> However, the r1 is added back a little earlier, so r3 and r4 are
> restored from a wrong place, which could cause following error during
> boot:
Thanks ! However I've decided to apply Michael Ellerman's patch to take
the whole takeover code out instead.
Cheers,
Ben.
> Querying for OPAL presence... there !
> DEFAULT CATCH!, exception-handler=fff00700
> at %SRR0: 0000000004223058 %SRR1: 8000000000081002
> Open Firmware exception handler entered from non-OF code
>
> Client's Fix Pt Regs:
> 00 0000000004223054 0000000004223020 0000000004fbe838 0000000000000002
> 04 0000000028002024 0000000004fbe838 000000000427e838 0000000004222f20
> 08 0000000000000000 0000000000000000 0000000004222f20 0000000000001002
> 0c a000000000000001 0000000000000000 0000000001a3fd20 00000000040eb170
> 10 00000000040eb628 00000000040eb368 fffffffffffffffd 0000000001a3fd20
> 14 0000000001b37f00 000000000f340000 0000000000cc0000 000000000f340000
> 18 00000000040ebb08 0000000003580000 00000000040eb128 0000000004285920
> 1c 0000000001a3fd60 00000000040eb100 7c0802a6f8010010 f821ff914b91ebd1
> Special Regs:
> %IV: 00000700 %CR: 28002022 %XER: 00000000 %DSISR: 42000000
> %SRR0: 0000000004223058 %SRR1: 8000000000081002
> %LR: 0000000004223054 %CTR: 0000000000000000
> %DAR: 01a3fcf00020b4ac
> Virtual PID = 0
> ok
>
> Signed-off-by: Li Zhong <zhong@linux.vnet.ibm.com>
> ---
> diff --git a/arch/powerpc/platforms/powernv/opal-takeover.S b/arch/powerpc/platforms/powernv/opal-takeover.S
> index 11a3169..9093540 100644
> --- a/arch/powerpc/platforms/powernv/opal-takeover.S
> +++ b/arch/powerpc/platforms/powernv/opal-takeover.S
> @@ -5,6 +5,7 @@
> *
> * This program is free software; you can redistribute it and/or
> * modify it under the terms of the GNU General Public License
> +B
> * as published by the Free Software Foundation; either version
> * 2 of the License, or (at your option) any later version.
> */
> @@ -27,11 +28,11 @@ _GLOBAL(opal_query_takeover)
> li r3,H_HAL_TAKEOVER
> li r4,H_HAL_TAKEOVER_QUERY_MAGIC
> HVSC
> - addi r1,r1,STACKFRAMESIZE
> ld r10,STK_PARAM(R3)(r1)
> std r4,0(r10)
> ld r10,STK_PARAM(R4)(r1)
> std r5,0(r10)
> + addi r1,r1,STACKFRAMESIZE
> lwz r0,8(r1)
> mtcrf 0xff,r0
> blr
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH powerpc] Fix parameter restoring issue in commit 752a6422f
2014-06-25 4:00 [PATCH powerpc] Fix parameter restoring issue in commit 752a6422f Li Zhong
2014-06-25 4:10 ` Mike Qiu
2014-06-25 4:20 ` Benjamin Herrenschmidt
@ 2014-06-25 4:20 ` Li Zhong
2014-06-25 4:36 ` Michael Ellerman
2 siblings, 1 reply; 5+ messages in thread
From: Li Zhong @ 2014-06-25 4:20 UTC (permalink / raw)
To: PowerPC email list; +Cc: Paul Mackerras, Anton Blanchard, ulrich.weigand
DaYu just reminded me that Michael already had a patch removing all the
related code.
Please ignore this patch..
Thanks, Zhong
On Wed, 2014-06-25 at 12:00 +0800, Li Zhong wrote:
> In commit 752a6422f, new stack frame is created for parameters.
>
> However, the r1 is added back a little earlier, so r3 and r4 are
> restored from a wrong place, which could cause following error during
> boot:
>
> Querying for OPAL presence... there !
> DEFAULT CATCH!, exception-handler=fff00700
> at %SRR0: 0000000004223058 %SRR1: 8000000000081002
> Open Firmware exception handler entered from non-OF code
>
> Client's Fix Pt Regs:
> 00 0000000004223054 0000000004223020 0000000004fbe838 0000000000000002
> 04 0000000028002024 0000000004fbe838 000000000427e838 0000000004222f20
> 08 0000000000000000 0000000000000000 0000000004222f20 0000000000001002
> 0c a000000000000001 0000000000000000 0000000001a3fd20 00000000040eb170
> 10 00000000040eb628 00000000040eb368 fffffffffffffffd 0000000001a3fd20
> 14 0000000001b37f00 000000000f340000 0000000000cc0000 000000000f340000
> 18 00000000040ebb08 0000000003580000 00000000040eb128 0000000004285920
> 1c 0000000001a3fd60 00000000040eb100 7c0802a6f8010010 f821ff914b91ebd1
> Special Regs:
> %IV: 00000700 %CR: 28002022 %XER: 00000000 %DSISR: 42000000
> %SRR0: 0000000004223058 %SRR1: 8000000000081002
> %LR: 0000000004223054 %CTR: 0000000000000000
> %DAR: 01a3fcf00020b4ac
> Virtual PID = 0
> ok
>
> Signed-off-by: Li Zhong <zhong@linux.vnet.ibm.com>
> ---
> diff --git a/arch/powerpc/platforms/powernv/opal-takeover.S b/arch/powerpc/platforms/powernv/opal-takeover.S
> index 11a3169..9093540 100644
> --- a/arch/powerpc/platforms/powernv/opal-takeover.S
> +++ b/arch/powerpc/platforms/powernv/opal-takeover.S
> @@ -5,6 +5,7 @@
> *
> * This program is free software; you can redistribute it and/or
> * modify it under the terms of the GNU General Public License
> +B
> * as published by the Free Software Foundation; either version
> * 2 of the License, or (at your option) any later version.
> */
> @@ -27,11 +28,11 @@ _GLOBAL(opal_query_takeover)
> li r3,H_HAL_TAKEOVER
> li r4,H_HAL_TAKEOVER_QUERY_MAGIC
> HVSC
> - addi r1,r1,STACKFRAMESIZE
> ld r10,STK_PARAM(R3)(r1)
> std r4,0(r10)
> ld r10,STK_PARAM(R4)(r1)
> std r5,0(r10)
> + addi r1,r1,STACKFRAMESIZE
> lwz r0,8(r1)
> mtcrf 0xff,r0
> blr
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH powerpc] Fix parameter restoring issue in commit 752a6422f
2014-06-25 4:20 ` Li Zhong
@ 2014-06-25 4:36 ` Michael Ellerman
0 siblings, 0 replies; 5+ messages in thread
From: Michael Ellerman @ 2014-06-25 4:36 UTC (permalink / raw)
To: Li Zhong
Cc: Paul Mackerras, PowerPC email list, Anton Blanchard,
ulrich.weigand
On Wed, 2014-06-25 at 12:20 +0800, Li Zhong wrote:
> DaYu just reminded me that Michael already had a patch removing all the
> related code.
>
> Please ignore this patch..
Thanks for tracking down what the actual problem was.
cheers
^ permalink raw reply [flat|nested] 5+ messages in thread