diff mbox

recordmcount.pl: Add ppc64le to list of supported architectures

Message ID 1497336599-17894-1-git-send-email-kamalesh@linux.vnet.ibm.com (mailing list archive)
State Rejected, archived
Headers show

Commit Message

Kamalesh Babulal June 13, 2017, 6:49 a.m. UTC
Module make on ppc64le, fails with:

make -C /root/kernel/linux M=/root/.kpatch/tmp/patch kpatch-data-read-mostly.ko
make[1]: Entering directory '/root/kernel/linux'
  CC [M]  /root/.kpatch/tmp/patch/patch-hook.o
Arch ppc64le is not supported with CONFIG_FTRACE_MCOUNT_RECORD at ./scripts/recordmcount.pl line 379.

Fix it by adding 'ppc64le' to list of supported architectures
in recordmcount.pl script.

Signed-off-by: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Balbir Singh <bsingharora@gmail.com>
---
 scripts/recordmcount.pl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Balbir Singh June 13, 2017, 10:52 p.m. UTC | #1
On Tue, Jun 13, 2017 at 4:49 PM, Kamalesh Babulal <
kamalesh@linux.vnet.ibm.com> wrote:

> Module make on ppc64le, fails with:
>
> make -C /root/kernel/linux M=/root/.kpatch/tmp/patch
> kpatch-data-read-mostly.ko
> make[1]: Entering directory '/root/kernel/linux'
>   CC [M]  /root/.kpatch/tmp/patch/patch-hook.o
> Arch ppc64le is not supported with CONFIG_FTRACE_MCOUNT_RECORD at
> ./scripts/recordmcount.pl line 379.
>
> Fix it by adding 'ppc64le' to list of supported architectures
> in recordmcount.pl script.
>
> Signed-off-by: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
> Cc: Michael Ellerman <mpe@ellerman.id.au>
> Cc: Balbir Singh <bsingharora@gmail.com>
> ---
>  scripts/recordmcount.pl | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/scripts/recordmcount.pl b/scripts/recordmcount.pl
> index 1633c3e..683b8b5 100755
> --- a/scripts/recordmcount.pl
> +++ b/scripts/recordmcount.pl
> @@ -264,7 +264,7 @@ if ($arch eq "x86_64") {
>      $ld .= " -m shlelf_linux";
>      $objcopy .= " -O elf32-sh-linux";
>
> -} elsif ($arch eq "powerpc") {
> +} elsif ($arch eq "powerpc" || $arch eq "ppc64le") {
>

I don't get this, the arch should always be powerpc. Where did you get the
ppc64le
from? Am I missing anything?

Balbir Singh.
Michael Ellerman June 14, 2017, 4:53 a.m. UTC | #2
Balbir Singh <bsingharora@gmail.com> writes:
> On Tue, Jun 13, 2017 at 4:49 PM, Kamalesh Babulal <
> kamalesh@linux.vnet.ibm.com> wrote:
>> diff --git a/scripts/recordmcount.pl b/scripts/recordmcount.pl
>> index 1633c3e..683b8b5 100755
>> --- a/scripts/recordmcount.pl
>> +++ b/scripts/recordmcount.pl
>> @@ -264,7 +264,7 @@ if ($arch eq "x86_64") {
>>      $ld .= " -m shlelf_linux";
>>      $objcopy .= " -O elf32-sh-linux";
>>
>> -} elsif ($arch eq "powerpc") {
>> +} elsif ($arch eq "powerpc" || $arch eq "ppc64le") {
>>
>
> I don't get this, the arch should always be powerpc.

Right. Something else is fubar for that to happen, we should fix
whatever it is.

cheers
Kamalesh Babulal June 14, 2017, 5:01 a.m. UTC | #3
On Wednesday 14 June 2017 04:22 AM, Balbir Singh wrote:
> On Tue, Jun 13, 2017 at 4:49 PM, Kamalesh Babulal <
> kamalesh@linux.vnet.ibm.com> wrote:
>
>> Module make on ppc64le, fails with:
>>
>> make -C /root/kernel/linux M=/root/.kpatch/tmp/patch
>> kpatch-data-read-mostly.ko
>> make[1]: Entering directory '/root/kernel/linux'
>>   CC [M]  /root/.kpatch/tmp/patch/patch-hook.o
>> Arch ppc64le is not supported with CONFIG_FTRACE_MCOUNT_RECORD at
>> ./scripts/recordmcount.pl line 379.
>>
>> Fix it by adding 'ppc64le' to list of supported architectures
>> in recordmcount.pl script.
>>
>> Signed-off-by: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
>> Cc: Michael Ellerman <mpe@ellerman.id.au>
>> Cc: Balbir Singh <bsingharora@gmail.com>
>> ---
>>  scripts/recordmcount.pl | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/scripts/recordmcount.pl b/scripts/recordmcount.pl
>> index 1633c3e..683b8b5 100755
>> --- a/scripts/recordmcount.pl
>> +++ b/scripts/recordmcount.pl
>> @@ -264,7 +264,7 @@ if ($arch eq "x86_64") {
>>      $ld .= " -m shlelf_linux";
>>      $objcopy .= " -O elf32-sh-linux";
>>
>> -} elsif ($arch eq "powerpc") {
>> +} elsif ($arch eq "powerpc" || $arch eq "ppc64le") {
>>
>
> I don't get this, the arch should always be powerpc. Where did you get the
> ppc64le
> from? Am I missing anything?
>
> Balbir Singh.
>

Thanks for the review. True, the top level Makefile derives the ARCH 
from SUBARCH where ppc64le is replaced by powerpc. Out of tree module 
build fails, where the ARCH gets overruled to underlying arch type.
Kamalesh Babulal June 14, 2017, 6:40 a.m. UTC | #4
On Wednesday 14 June 2017 10:23 AM, Michael Ellerman wrote:
>> I don't get this, the arch should always be powerpc.
> Right. Something else is fubar for that to happen, we should fix
> whatever it is.

Agree, ARCH over-ruling by reading the underlying architecture will
not work, as the expectation is to have ARCH=powerpc for all of the 
powerpc platform. Sorry for the noise, kindly ignore this patch.
diff mbox

Patch

diff --git a/scripts/recordmcount.pl b/scripts/recordmcount.pl
index 1633c3e..683b8b5 100755
--- a/scripts/recordmcount.pl
+++ b/scripts/recordmcount.pl
@@ -264,7 +264,7 @@  if ($arch eq "x86_64") {
     $ld .= " -m shlelf_linux";
     $objcopy .= " -O elf32-sh-linux";
 
-} elsif ($arch eq "powerpc") {
+} elsif ($arch eq "powerpc" || $arch eq "ppc64le") {
     $local_regex = "^[0-9a-fA-F]+\\s+t\\s+(\\.?\\S+)";
     # See comment in the sparc64 section for why we use '\w'.
     $function_regex = "^([0-9a-fA-F]+)\\s+<(\\.?\\w*?)>:";