[OE-core] [PATCH 9/9] perf: disable libunwind support for aarch64

Fathi Boudra fathi.boudra at linaro.org
Tue Sep 23 08:23:48 UTC 2014


On 23 September 2014 09:11, Kang Kai <Kai.Kang at windriver.com> wrote:
> On 2014年09月23日 00:01, Fathi Boudra wrote:
>>
>> On 19 September 2014 12:21, Kai Kang <kai.kang at windriver.com> wrote:
>>>
>>> Disable libunwind support of perl for aarch aarch64 that libunwind
>>> doesn't support aarch64.
>>
>> typo:
>> perl -> perf
>> aarch -> arch
>>
>> Otherwise, the patch doesn't seems correct. libunwind supports aarch64
>> since libunwind 1.1 (you need to build with --enable-debug-frame).
>
>
> When do configure, it fails with:
>
> | checking for ELF helper width... configure: error: Unknown ELF target:
> aarch64
>
> It could be fixed by patching configure.ac:
>
> --- configure.ac.orig   2014-09-23 13:30:23.415975656 +0800
> +++ configure.ac        2014-09-23 13:30:47.991976326 +0800
> @@ -137,7 +137,7 @@
>  AC_MSG_CHECKING([for ELF helper width])
>  case "${target_arch}" in
>  (arm|hppa|ppc32|x86|sh) use_elf32=yes; AC_MSG_RESULT([32]);;
> -(ia64|ppc64|x86_64)    use_elf64=yes; AC_MSG_RESULT([64]);;
> +(aarch64|ia64|ppc64|x86_64)    use_elf64=yes; AC_MSG_RESULT([64]);;
>  (mips)                 use_elfxx=yes; AC_MSG_RESULT([xx]);;
>  *)                     AC_MSG_ERROR([Unknown ELF target: ${target_arch}])
>  esac
>
> And then it fails with do compile either:
>
> | ../include/libunwind.h:25:3: error: #error "Unsupported arch"
>
> In include/libunwind.h.in, it checks arch and include header accordingly.
> For aarch64, it lacks arch check and header file libunwind-arm64.h or
> libunwind-aarch64.h.


right, we've upstreamed aarch64 support but it hasn't been released in 1.1.
we need the following patches:
http://git.savannah.gnu.org/gitweb/?p=libunwind.git;a=commitdiff;h=ac6c0a6535975f1dc2da6e4e2766614baac2a14a
http://git.savannah.gnu.org/gitweb/?p=libunwind.git;a=commitdiff;h=2cb00c1eaca437e41556ad5512149508fcc7cb82

> Thanks,
> Kai
>
>
>
>>
>>> Signed-off-by: Kai Kang <kai.kang at windriver.com>
>>> ---
>>>   meta/recipes-kernel/perf/perf-features.inc | 1 +
>>>   1 file changed, 1 insertion(+)
>>>
>>> diff --git a/meta/recipes-kernel/perf/perf-features.inc
>>> b/meta/recipes-kernel/perf/perf-features.inc
>>> index 2dbbb47..7de35f3 100644
>>> --- a/meta/recipes-kernel/perf/perf-features.inc
>>> +++ b/meta/recipes-kernel/perf/perf-features.inc
>>> @@ -1,4 +1,5 @@
>>>   PERF_FEATURES_ENABLE ?= "perf-scripting perf-tui perf-libunwind"
>>> +PERF_FEATURES_ENABLE_remove_aarch64 = "perf-libunwind"
>>>
>>>   def perf_feature_enabled(feature, trueval, falseval, d):
>>>       """
>>> --
>>> 1.9.1
>>>
>>> --
>>> _______________________________________________
>>> Openembedded-core mailing list
>>> Openembedded-core at lists.openembedded.org
>>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>>
>>
>
>
> --
> Regards,
> Neil | Kai Kang



More information about the Openembedded-core mailing list