[linux-next][bisected 1945bc45] build brakes for PowerPC BE configuration on LPAR

7 messages, 4 authors, 2017-05-15 · open the first message on its own page

[linux-next][bisected 1945bc45] build brakes for PowerPC BE configuration on LPAR

From: Abdul Haleem <hidden>
Date: 2017-05-04 09:26:26

Hi,

linux-next build fails on BE config with next-20170424 onwards

the patch https://lkml.org/lkml/2017/4/20/994  fixes a similar issue
with kvm guest build failure.

arch/powerpc/kernel/exceptions-64s.S: Assembler messages:
arch/powerpc/kernel/exceptions-64s.S:395: Error: operand out of range
(0xffffffffffff8280 is not between 0x0000000000000000 and
0x000000000000ffff)
make[1]: *** [arch/powerpc/kernel/head_64.o] Error 1

Bisection resulted with the below bad commit.

commit 1945bc4549e5cb1f9aa873ec29191aa54dc851d
Author: Nicholas Piggin [off-list ref]
Date:   Wed Apr 19 23:05:47 2017 +1000

    powerpc/64s: Fix POWER9 machine check handler from stop state

    Reviewed-by: Gautham R. Shenoy [off-list ref]
    Reviewed-by: Mahesh J Salgaonkar [off-list ref]
    Signed-off-by: Nicholas Piggin [off-list ref]
    Signed-off-by: Michael Ellerman [off-list ref]

 arch/powerpc/include/asm/reg.h       |  1 +
 arch/powerpc/kernel/exceptions-64s.S | 79 ++++++++++++++++++++++++++++++++++++++++++++-----------------------------------
 arch/powerpc/kernel/idle_book3s.S    | 25 +++++++++++++++++++++++++
 3 files changed, 70 insertions(+), 35 deletions(-)

the BE configuration file is attached.

-- 
Regard's

Abdul Haleem
IBM Linux Technology Centre

Re: [linux-next][bisected 1945bc45] build brakes for PowerPC BE configuration on LPAR

From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2017-05-04 10:30:09

Abdul Haleem [off-list ref] writes:
Hi,

linux-next build fails on BE config with next-20170424 onwards

the patch https://lkml.org/lkml/2017/4/20/994  fixes a similar issue
with kvm guest build failure.

arch/powerpc/kernel/exceptions-64s.S: Assembler messages:
arch/powerpc/kernel/exceptions-64s.S:395: Error: operand out of range
(0xffffffffffff8280 is not between 0x0000000000000000 and
0x000000000000ffff)
make[1]: *** [arch/powerpc/kernel/head_64.o] Error 1
I couldn't reproduce that.

What toolchain are you using?

cheers

Re: [linux-next][bisected 1945bc45] build brakes for PowerPC BE configuration on LPAR

From: Nicholas Piggin <npiggin@gmail.com>
Date: 2017-05-04 10:41:41

On Thu, 04 May 2017 14:54:19 +0530
Abdul Haleem [off-list ref] wrote:
Hi,

linux-next build fails on BE config with next-20170424 onwards

the patch https://lkml.org/lkml/2017/4/20/994  fixes a similar issue
with kvm guest build failure.

arch/powerpc/kernel/exceptions-64s.S: Assembler messages:
arch/powerpc/kernel/exceptions-64s.S:395: Error: operand out of range
(0xffffffffffff8280 is not between 0x0000000000000000 and
0x000000000000ffff)
make[1]: *** [arch/powerpc/kernel/head_64.o] Error 1

Bisection resulted with the below bad commit.

commit 1945bc4549e5cb1f9aa873ec29191aa54dc851d
Author: Nicholas Piggin [off-list ref]
Date:   Wed Apr 19 23:05:47 2017 +1000

    powerpc/64s: Fix POWER9 machine check handler from stop state

    Reviewed-by: Gautham R. Shenoy [off-list ref]
    Reviewed-by: Mahesh J Salgaonkar [off-list ref]
    Signed-off-by: Nicholas Piggin [off-list ref]
    Signed-off-by: Michael Ellerman [off-list ref]

 arch/powerpc/include/asm/reg.h       |  1 +
 arch/powerpc/kernel/exceptions-64s.S | 79 ++++++++++++++++++++++++++++++++++++++++++++-----------------------------------
 arch/powerpc/kernel/idle_book3s.S    | 25 +++++++++++++++++++++++++
 3 files changed, 70 insertions(+), 35 deletions(-)

the BE configuration file is attached.
Thanks for the report. I wouldn't reproduce it with this config. I
suspect the following patch should fix it, can you test?

powerpc/64s: Fix unnecessary machine check handler relocation branch

Similarly to 2563a70c3b ("powerpc/64s: Remove unnecessary relocation
branch from idle handler"), the machine check handler has a BRANCH_TO
from relocated to relocated code, which is unnecessary.

It has also caused build errors with some toolchains:

  arch/powerpc/kernel/exceptions-64s.S: Assembler messages:
  arch/powerpc/kernel/exceptions-64s.S:395: Error: operand out of range
  (0xffffffffffff8280 is not between 0x0000000000000000 and
  0x000000000000ffff)

Fixes: 1945bc4549 ("powerpc/64s: Fix POWER9 machine check handler from stop state")
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
---
 arch/powerpc/kernel/exceptions-64s.S | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/arch/powerpc/kernel/exceptions-64s.S b/arch/powerpc/kernel/exceptions-64s.S
index 3840a7700285..ef72065f684c 100644
--- a/arch/powerpc/kernel/exceptions-64s.S
+++ b/arch/powerpc/kernel/exceptions-64s.S
@@ -391,9 +391,7 @@ EXC_COMMON_BEGIN(machine_check_handle_early)
 	 */
 	BEGIN_FTR_SECTION
 	rlwinm.	r11,r12,47-31,30,31
-	beq-	4f
-	BRANCH_TO_COMMON(r10, machine_check_idle_common)
-4:
+	bne	machine_check_idle_common
 	END_FTR_SECTION_IFSET(CPU_FTR_HVMODE | CPU_FTR_ARCH_206)
 #endif
 
-- 
2.11.0

Re: [linux-next][bisected 1945bc45] build brakes for PowerPC BE configuration on LPAR

From: Abdul Haleem <hidden>
Date: 2017-05-04 10:52:04

On Thu, 2017-05-04 at 20:29 +1000, Michael Ellerman wrote:
Abdul Haleem [off-list ref] writes:
quoted
Hi,

linux-next build fails on BE config with next-20170424 onwards

the patch https://lkml.org/lkml/2017/4/20/994  fixes a similar issue
with kvm guest build failure.

arch/powerpc/kernel/exceptions-64s.S: Assembler messages:
arch/powerpc/kernel/exceptions-64s.S:395: Error: operand out of range
(0xffffffffffff8280 is not between 0x0000000000000000 and
0x000000000000ffff)
make[1]: *** [arch/powerpc/kernel/head_64.o] Error 1
I couldn't reproduce that.

What toolchain are you using?
I have gcc-4.8.2-1 on Power 6 LPAR running Fedora 20.

Also recreating the same on Power 8 BE LPAR having gcc-4.8.5-11
cheers

-- 
Regard's

Abdul Haleem
IBM Linux Technology Centre

Re: [linux-next][bisected 1945bc45] build brakes for PowerPC BE configuration on LPAR

From: Abdul Haleem <hidden>
Date: 2017-05-05 04:11:54

On Thu, 2017-05-04 at 20:41 +1000, Nicholas Piggin wrote:
quoted hunk
On Thu, 04 May 2017 14:54:19 +0530
Abdul Haleem [off-list ref] wrote:
quoted
Hi,

linux-next build fails on BE config with next-20170424 onwards

the patch https://lkml.org/lkml/2017/4/20/994  fixes a similar issue
with kvm guest build failure.

arch/powerpc/kernel/exceptions-64s.S: Assembler messages:
arch/powerpc/kernel/exceptions-64s.S:395: Error: operand out of range
(0xffffffffffff8280 is not between 0x0000000000000000 and
0x000000000000ffff)
make[1]: *** [arch/powerpc/kernel/head_64.o] Error 1

Bisection resulted with the below bad commit.

commit 1945bc4549e5cb1f9aa873ec29191aa54dc851d
Author: Nicholas Piggin [off-list ref]
Date:   Wed Apr 19 23:05:47 2017 +1000

    powerpc/64s: Fix POWER9 machine check handler from stop state

    Reviewed-by: Gautham R. Shenoy [off-list ref]
    Reviewed-by: Mahesh J Salgaonkar [off-list ref]
    Signed-off-by: Nicholas Piggin [off-list ref]
    Signed-off-by: Michael Ellerman [off-list ref]

 arch/powerpc/include/asm/reg.h       |  1 +
 arch/powerpc/kernel/exceptions-64s.S | 79 ++++++++++++++++++++++++++++++++++++++++++++-----------------------------------
 arch/powerpc/kernel/idle_book3s.S    | 25 +++++++++++++++++++++++++
 3 files changed, 70 insertions(+), 35 deletions(-)

the BE configuration file is attached.
Thanks for the report. I wouldn't reproduce it with this config. I
suspect the following patch should fix it, can you test?

powerpc/64s: Fix unnecessary machine check handler relocation branch

Similarly to 2563a70c3b ("powerpc/64s: Remove unnecessary relocation
branch from idle handler"), the machine check handler has a BRANCH_TO
from relocated to relocated code, which is unnecessary.

It has also caused build errors with some toolchains:

  arch/powerpc/kernel/exceptions-64s.S: Assembler messages:
  arch/powerpc/kernel/exceptions-64s.S:395: Error: operand out of range
  (0xffffffffffff8280 is not between 0x0000000000000000 and
  0x000000000000ffff)

Fixes: 1945bc4549 ("powerpc/64s: Fix POWER9 machine check handler from stop state")
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
---
 arch/powerpc/kernel/exceptions-64s.S | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/arch/powerpc/kernel/exceptions-64s.S b/arch/powerpc/kernel/exceptions-64s.S
index 3840a7700285..ef72065f684c 100644
--- a/arch/powerpc/kernel/exceptions-64s.S
+++ b/arch/powerpc/kernel/exceptions-64s.S
@@ -391,9 +391,7 @@ EXC_COMMON_BEGIN(machine_check_handle_early)
 	 */
 	BEGIN_FTR_SECTION
 	rlwinm.	r11,r12,47-31,30,31
-	beq-	4f
-	BRANCH_TO_COMMON(r10, machine_check_idle_common)
-4:
+	bne	machine_check_idle_common
 	END_FTR_SECTION_IFSET(CPU_FTR_HVMODE | CPU_FTR_ARCH_206)
 #endif
Machine Builds and boots fine, Thanks for the patch :-)

Reported-and-tested-by : Abdul Haleem [off-list ref]

-- 
Regard's

Abdul Haleem
IBM Linux Technology Centre

Re: [linux-next][bisected 1945bc45] build brakes for PowerPC BE configuration on LPAR

From: Nicholas Piggin <npiggin@gmail.com>
Date: 2017-05-05 06:40:30

On Fri, 05 May 2017 09:40:10 +0530
Abdul Haleem [off-list ref] wrote:
On Thu, 2017-05-04 at 20:41 +1000, Nicholas Piggin wrote:
quoted
On Thu, 04 May 2017 14:54:19 +0530
Abdul Haleem [off-list ref] wrote:
  
quoted
Hi,

linux-next build fails on BE config with next-20170424 onwards

the patch https://lkml.org/lkml/2017/4/20/994  fixes a similar issue
with kvm guest build failure.

arch/powerpc/kernel/exceptions-64s.S: Assembler messages:
arch/powerpc/kernel/exceptions-64s.S:395: Error: operand out of range
(0xffffffffffff8280 is not between 0x0000000000000000 and
0x000000000000ffff)
make[1]: *** [arch/powerpc/kernel/head_64.o] Error 1

Bisection resulted with the below bad commit.

commit 1945bc4549e5cb1f9aa873ec29191aa54dc851d
Author: Nicholas Piggin [off-list ref]
Date:   Wed Apr 19 23:05:47 2017 +1000

    powerpc/64s: Fix POWER9 machine check handler from stop state

    Reviewed-by: Gautham R. Shenoy [off-list ref]
    Reviewed-by: Mahesh J Salgaonkar [off-list ref]
    Signed-off-by: Nicholas Piggin [off-list ref]
    Signed-off-by: Michael Ellerman [off-list ref]

 arch/powerpc/include/asm/reg.h       |  1 +
 arch/powerpc/kernel/exceptions-64s.S | 79 ++++++++++++++++++++++++++++++++++++++++++++-----------------------------------
 arch/powerpc/kernel/idle_book3s.S    | 25 +++++++++++++++++++++++++
 3 files changed, 70 insertions(+), 35 deletions(-)

the BE configuration file is attached.
  
Thanks for the report. I wouldn't reproduce it with this config. I
suspect the following patch should fix it, can you test?

powerpc/64s: Fix unnecessary machine check handler relocation branch

Similarly to 2563a70c3b ("powerpc/64s: Remove unnecessary relocation
branch from idle handler"), the machine check handler has a BRANCH_TO
from relocated to relocated code, which is unnecessary.

It has also caused build errors with some toolchains:

  arch/powerpc/kernel/exceptions-64s.S: Assembler messages:
  arch/powerpc/kernel/exceptions-64s.S:395: Error: operand out of range
  (0xffffffffffff8280 is not between 0x0000000000000000 and
  0x000000000000ffff)

Fixes: 1945bc4549 ("powerpc/64s: Fix POWER9 machine check handler from stop state")
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
---
 arch/powerpc/kernel/exceptions-64s.S | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/arch/powerpc/kernel/exceptions-64s.S b/arch/powerpc/kernel/exceptions-64s.S
index 3840a7700285..ef72065f684c 100644
--- a/arch/powerpc/kernel/exceptions-64s.S
+++ b/arch/powerpc/kernel/exceptions-64s.S
@@ -391,9 +391,7 @@ EXC_COMMON_BEGIN(machine_check_handle_early)
 	 */
 	BEGIN_FTR_SECTION
 	rlwinm.	r11,r12,47-31,30,31
-	beq-	4f
-	BRANCH_TO_COMMON(r10, machine_check_idle_common)
-4:
+	bne	machine_check_idle_common
 	END_FTR_SECTION_IFSET(CPU_FTR_HVMODE | CPU_FTR_ARCH_206)
 #endif
  
Machine Builds and boots fine, Thanks for the patch :-)

Reported-and-tested-by : Abdul Haleem [off-list ref]
Okay, thanks for testing. I've tested the MCE-from-idle wakeup path in
the simulator with this patch and that still seems to work fine.

Thanks,
Nick

Re: [linux-next, bisected, 1945bc45] build brakes for PowerPC BE configuration on LPAR

From: Michael Ellerman <hidden>
Date: 2017-05-15 05:06:52

On Thu, 2017-05-04 at 10:41:12 UTC, Nicholas Piggin wrote:
On Thu, 04 May 2017 14:54:19 +0530
Abdul Haleem [off-list ref] wrote:
quoted
Hi,

linux-next build fails on BE config with next-20170424 onwards

the patch https://lkml.org/lkml/2017/4/20/994  fixes a similar issue
with kvm guest build failure.

arch/powerpc/kernel/exceptions-64s.S: Assembler messages:
arch/powerpc/kernel/exceptions-64s.S:395: Error: operand out of range
(0xffffffffffff8280 is not between 0x0000000000000000 and
0x000000000000ffff)
make[1]: *** [arch/powerpc/kernel/head_64.o] Error 1

Bisection resulted with the below bad commit.

commit 1945bc4549e5cb1f9aa873ec29191aa54dc851d
Author: Nicholas Piggin [off-list ref]
Date:   Wed Apr 19 23:05:47 2017 +1000

    powerpc/64s: Fix POWER9 machine check handler from stop state

    Reviewed-by: Gautham R. Shenoy [off-list ref]
    Reviewed-by: Mahesh J Salgaonkar [off-list ref]
    Signed-off-by: Nicholas Piggin [off-list ref]
    Signed-off-by: Michael Ellerman [off-list ref]

 arch/powerpc/include/asm/reg.h       |  1 +
 arch/powerpc/kernel/exceptions-64s.S | 79 ++++++++++++++++++++++++++++++++++++++++++++-----------------------------------
 arch/powerpc/kernel/idle_book3s.S    | 25 +++++++++++++++++++++++++
 3 files changed, 70 insertions(+), 35 deletions(-)

the BE configuration file is attached.
Applied to powerpc next, thanks.

https://git.kernel.org/powerpc/c/6102c005a71b4a7a6433d43b887662

cheers
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help