[Buildroot] [PATCH v2,1/1] package/numactl: needs atomic

Arnout Vandecappelle arnout at mind.be
Fri May 13 22:10:06 UTC 2022



On 08/05/2022 21:11, Fabrice Fontaine wrote:
> numactl unconditionally uses __atomic_fetch_and resulting in the
> following build failure on architectures that need libatomic to provide
> atomic intrinsics (e.g. microblaze) since commit
> 4ed540ddf59bec4b389be44d7f42820d2466904f:
> 
> /nvmedata/autobuild/instance-5/output-1/host/lib/gcc/microblaze-buildroot-linux-uclibc/10.3.0/../../../../microblaze-buildroot-linux-uclibc/bin/ld: ./.libs/libnuma.a(libnuma.o): in function `numa_node_to_cpus_v1':
> (.text+0x2a34): undefined reference to `__atomic_fetch_and_1'
> 
> Fixes:
>   - http://autobuild.buildroot.org/results/e225cb83dae390d9dc543d4da85c52180efbd40a
> 
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice at gmail.com>

  Applied to master, thanks.

  Regards,
  Arnout

> ---
> Changes v1 -> v2 (after review of Thomas Petazzoni):
>   - Reword commit message
> 
>   package/numactl/Config.in  | 1 +
>   package/rt-tests/Config.in | 2 ++
>   2 files changed, 3 insertions(+)
> 
> diff --git a/package/numactl/Config.in b/package/numactl/Config.in
> index 23cf7facb0..325a05d609 100644
> --- a/package/numactl/Config.in
> +++ b/package/numactl/Config.in
> @@ -1,6 +1,7 @@
>   config BR2_PACKAGE_NUMACTL
>   	bool "numactl"
>   	depends on BR2_USE_MMU # madvise()
> +	depends on BR2_TOOLCHAIN_HAS_ATOMIC
>   	help
>   	  numactl allows you to run your application on specific cpus
>   	  and memory nodes. It does this by supplying a NUMA memory
> diff --git a/package/rt-tests/Config.in b/package/rt-tests/Config.in
> index 8efa3d194e..ccfa040d70 100644
> --- a/package/rt-tests/Config.in
> +++ b/package/rt-tests/Config.in
> @@ -1,6 +1,7 @@
>   config BR2_PACKAGE_RT_TESTS
>   	bool "rt-tests"
>   	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # __sync_*_4 intrisics
> +	depends on BR2_TOOLCHAIN_HAS_ATOMIC # numactl
>   	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
>   	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5
>   	depends on BR2_USE_MMU # fork(), numactl
> @@ -32,6 +33,7 @@ comment "rt-tests may not work on MIPS with an external uClibc toolchain"
>   
>   comment "rt-tests needs a uClibc or glibc toolchain w/ NPTL, headers >= 4.5, dynamic library"
>   	depends on BR2_TOOLCHAIN_HAS_SYNC_4
> +	depends on BR2_TOOLCHAIN_HAS_ATOMIC
>   	depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS \
>   		|| BR2_TOOLCHAIN_USES_MUSL || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5
>   	depends on BR2_USE_MMU



More information about the buildroot mailing list