Message ID | 20220508191141.1270350-1-fontaine.fabrice@gmail.com |
---|---|
State | Accepted |
Headers | show |
Series | [v2,1/1] package/numactl: needs atomic | expand |
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@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
>>>>> "Fabrice" == Fabrice Fontaine <fontaine.fabrice@gmail.com> writes: > 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@gmail.com> > --- > Changes v1 -> v2 (after review of Thomas Petazzoni): > - Reword commit message Committed to 2022.02.x, thanks.
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
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@gmail.com> --- 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(+)