All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hekuang <hekuang@huawei.com>
To: Namhyung Kim <namhyung@kernel.org>
Cc: <mingo@redhat.com>, <linux-kernel@vger.kernel.org>,
	<wangnan0@huawei.com>
Subject: Re: [PATCH] perf: fix building error in x86_64
Date: Thu, 12 Feb 2015 16:56:44 +0800	[thread overview]
Message-ID: <54DC6ACC.2050803@huawei.com> (raw)
In-Reply-To: <20150212080718.GD30788@sejong>


在 2015/2/12 16:07, Namhyung Kim 写道:
> Hi,
>
> On Wed, Feb 11, 2015 at 10:01:08AM +0800, He Kuang wrote:
>> When build with ARCH=x86_64, perf failed to compile with following error:
>>
>> tests/builtin-test.o:(.data+0x158): undefined reference to `test__perf_time_to_tsc'
>> collect2: error: ld returned 1 exit status
>> Makefile.perf:632: recipe for target 'perf' failed
>> ...
>>
>> Which is caused commit c6e5e9fbc3ea1 ("perf tools: Fix building error
>> in x86_64 when dwarf unwind is on"), ARCH test in Makefile.perf
>> conflicts with tests/builtin-test.c's __x86_64__.
>> To x86/x86_64 platform, ARCH should always override to x86 while
>> IS_64_BIT stands for the actual architecture.
>>
>> Signed-off-by: He Kuang <hekuang@huawei.com>
>> ---
>>   tools/perf/config/Makefile.arch | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/tools/perf/config/Makefile.arch b/tools/perf/config/Makefile.arch
>> index ff95a68..8c6214d 100644
>> --- a/tools/perf/config/Makefile.arch
>> +++ b/tools/perf/config/Makefile.arch
>> @@ -14,7 +14,7 @@ ifeq ($(RAW_ARCH),i386)
>>   endif
>>   
>>   ifeq ($(RAW_ARCH),x86_64)
>> -  ARCH ?= x86
>> +  override ARCH := x86
> Hmm.. wouldn't it (again) break cross build then?
>
> Thanks,
> Namhyung
>


I've tested both 'make ARCH=x86' and 'make ARCH=x86_64' cases after a
'make clean'.

The issue was first caused by IS_X86_64 flag wrongly cleared when
ARCH=x86, which is already fixed by separating IS_64_BIT and ARCH in
commit c6e5e9fbc3ea1 ("perf tools: Fix building error in x86_64 when
dwarf unwind is on").

The only problem here is we should let ARCH override to x86, to keep
compatible with 'ifeq ($(ARCH),x86)'.
>>   
>>     ifneq (, $(findstring m32,$(CFLAGS)))
>>       RAW_ARCH := x86_32
>> -- 
>> 2.2.0.33.gc18b867
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> Please read the FAQ at  http://www.tux.org/lkml/
> .
>



  reply	other threads:[~2015-02-12  8:57 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-02-11  2:01 [PATCH] perf: fix building error in x86_64 He Kuang
2015-02-12  8:07 ` Namhyung Kim
2015-02-12  8:56   ` Hekuang [this message]
2015-02-13  5:31     ` Namhyung Kim
2015-02-13  7:11       ` [PATCH v2] " He Kuang
2015-02-19 10:56         ` Aaro Koskinen
2015-02-27 10:05           ` [PATCH] perf: fix building error He Kuang
2015-02-28  2:49             ` Namhyung Kim
2015-02-28  9:09               ` He Kuang

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=54DC6ACC.2050803@huawei.com \
    --to=hekuang@huawei.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=wangnan0@huawei.com \
    /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 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.