All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/2] package/irqbalance: use pkg-config to find numa
@ 2021-08-01 21:46 Fabrice Fontaine
  2021-08-01 21:46 ` [Buildroot] [PATCH 2/2] package/irqbalance: bump to version 1.8.0 Fabrice Fontaine
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Fabrice Fontaine @ 2021-08-01 21:46 UTC (permalink / raw)
  To: buildroot; +Cc: Karoly Kasza, Fabrice Fontaine

Use pkg-config to find numa to avoid the following build failure when
checking for numa_available:

configure:9667: checking for numa_available in -lnuma
configure:9692: /tmp/instance-7/output-1/host/bin/microblazeel-linux-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -Os   -static -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -static conftest.c -lnuma   >&5
/tmp/instance-7/output-1/host/opt/ext-toolchain/bin/../lib/gcc/microblazeel-buildroot-linux-uclibc/9.3.0/../../../../microblazeel-buildroot-linux-uclibc/bin/ld: /tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot/usr/lib/libnuma.a(libnuma.o): in function `numa_node_to_cpus_v1':
(.text+0x2a80): undefined reference to `__atomic_fetch_and_1'
/tmp/instance-7/output-1/host/opt/ext-toolchain/bin/../lib/gcc/microblazeel-buildroot-linux-uclibc/9.3.0/../../../../microblazeel-buildroot-linux-uclibc/bin/ld: /tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot/usr/lib/libnuma.a(libnuma.o): in function `numa_node_to_cpus_v2':
(.text+0x2ddc): undefined reference to `__atomic_fetch_and_1'
collect2: error: ld returned 1 exit status

Fixes:
 - http://autobuild.buildroot.org/results/577a63432fba2f9ae1ed2c6c2a77c5ce54ac5521

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
 ...igure.ac-use-pkg-config-to-find-numa.patch | 38 +++++++++++++++++++
 1 file changed, 38 insertions(+)
 create mode 100644 package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch

diff --git a/package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch b/package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch
new file mode 100644
index 0000000000..751367ccfb
--- /dev/null
+++ b/package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch
@@ -0,0 +1,38 @@
+From 274cb8ea470a10ce46b783e77784b0eb08cf20d8 Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Sun, 1 Aug 2021 23:26:01 +0200
+Subject: [PATCH] configure.ac: use pkg-config to find numa
+
+Use pkg-config to find numa and fallback to current mechanism.
+Thanks to pkg-config, numa dependencies such as -latomic will be
+retrieved.
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Upstream status: https://github.com/Irqbalance/irqbalance/pull/188]
+---
+ configure.ac | 9 ++++++++-
+ 1 file changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index c45b9ce..50c62ba 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -23,7 +23,14 @@ AC_CHECK_HEADERS([numa.h])
+ 
+ AC_CHECK_FUNCS(getopt_long)
+ 
+-AC_CHECK_LIB(numa, numa_available)
++PKG_CHECK_MODULES([NUMA], [numa], [has_numa=yes], [AC_CHECK_LIB(numa, numa_available)])
++AS_IF([test "x$has_numa" = "xyes"], [
++  AC_SUBST([NUMA_CFLAGS])
++  AC_SUBST([NUMA_LIBS])
++  LIBS="$LIBS $NUMA_LIBS"
++  AC_SUBST([LIBS])
++])
++
+ AC_CHECK_LIB(m, floor)
+ 
+ PKG_CHECK_MODULES([GLIB2], [glib-2.0], [], [AC_MSG_ERROR([glib-2.0 is required])])
+-- 
+2.30.2
+
-- 
2.30.2

_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [Buildroot] [PATCH 2/2] package/irqbalance: bump to version 1.8.0
  2021-08-01 21:46 [Buildroot] [PATCH 1/2] package/irqbalance: use pkg-config to find numa Fabrice Fontaine
@ 2021-08-01 21:46 ` Fabrice Fontaine
  2021-08-02 16:33 ` [Buildroot] [PATCH 1/2] package/irqbalance: use pkg-config to find numa Arnout Vandecappelle
  2021-08-07 20:47 ` Peter Korsgaard
  2 siblings, 0 replies; 4+ messages in thread
From: Fabrice Fontaine @ 2021-08-01 21:46 UTC (permalink / raw)
  To: buildroot; +Cc: Karoly Kasza, Fabrice Fontaine

- Drop first patch (already in version)
- Update indentation in hash file (two spaces)

https://github.com/Irqbalance/irqbalance/releases/tag/v1.8.0

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
 ...gure.ac-use-pkg-config-to-find-numa.patch} |   0
 ...ix-uint64_t-printf-format-use-PRIu64.patch | 105 ------------------
 package/irqbalance/irqbalance.hash            |   4 +-
 package/irqbalance/irqbalance.mk              |   2 +-
 4 files changed, 3 insertions(+), 108 deletions(-)
 rename package/irqbalance/{0002-configure.ac-use-pkg-config-to-find-numa.patch => 0001-configure.ac-use-pkg-config-to-find-numa.patch} (100%)
 delete mode 100644 package/irqbalance/0001-fix-uint64_t-printf-format-use-PRIu64.patch

diff --git a/package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch b/package/irqbalance/0001-configure.ac-use-pkg-config-to-find-numa.patch
similarity index 100%
rename from package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch
rename to package/irqbalance/0001-configure.ac-use-pkg-config-to-find-numa.patch
diff --git a/package/irqbalance/0001-fix-uint64_t-printf-format-use-PRIu64.patch b/package/irqbalance/0001-fix-uint64_t-printf-format-use-PRIu64.patch
deleted file mode 100644
index 95a9616c71..0000000000
--- a/package/irqbalance/0001-fix-uint64_t-printf-format-use-PRIu64.patch
+++ /dev/null
@@ -1,105 +0,0 @@
-From 0cdc7a22d5156440fecff14c438d4e24261ac793 Mon Sep 17 00:00:00 2001
-From: Peter Seiderer <ps.report@gmx.net>
-Date: Sat, 20 Feb 2021 23:38:56 +0100
-Subject: [PATCH] fix uint64_t printf format (use PRIu64)
-
-Fixes (on arm 32-bit):
-
-  $ irqbalance-ui
-  Invalid data sent.  Unexpected token: (null)TYPE
-
-And strace showed the following:
-
-  237   sendmsg(3, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="stats", iov_len=5}], msg_iovlen=1, msg_control=[{cmsg_len=24, cmsg_level=SOL_SOCKET, cmsg_type=SCM_CREDENTIALS, cmsg_data={pid=237, uid=0, gid=0}}], msg_controllen=24, msg_flags=0}, 0) = 5
-  237   recv(3, "TYPE 3 NUMBER -1 LOAD 0 SAVE_MODE 0 (null)TYPE 2 NUMBER 0 LOAD 0 SAVE_MODE 0 (null)TYPE 1 NUMBER 0 LOAD 0 SAVE_MODE 0 (null)TYPE 0 NUMBER 3 LOAD 0 SAVE_MODE 0 (null)TYPE 1 NUMBER 1 LOAD 0 SAVE_MODE 0 (null)TYPE 0 NUMBER 1 LOAD 0 SAVE_MODE 0 (null)TYPE 1 NUMBER 2 LOAD 0 SAVE_MODE 0 (null)TYPE 0 NUMBER 2 LOAD 0 SAVE_MODE 0 (null)TYPE 1 NUMBER 3 LOAD 0 SAVE_MODE 0 (null)TYPE 0 NUMBER 0 LOAD 0 SAVE_MODE 0 (null)", 8192, 0) = 411
-
-[backported from upstream]
-Signed-off-by: Peter Seiderer <ps.report@gmx.net>
----
- cputree.c    | 3 ++-
- irqbalance.c | 5 +++--
- ui/ui.c      | 5 +++--
- 3 files changed, 8 insertions(+), 5 deletions(-)
-
-diff --git a/cputree.c b/cputree.c
-index fda0200..a8dba73 100644
---- a/cputree.c
-+++ b/cputree.c
-@@ -33,6 +33,7 @@
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <dirent.h>
-+#include <inttypes.h>
- 
- #include <glib.h>
- 
-@@ -417,7 +418,7 @@ static void dump_irq(struct irq_info *info, void *data)
- 		indent[i] = log_indent[0];
- 
- 	indent[i] = '\0';
--	log(TO_CONSOLE, LOG_INFO, "%sInterrupt %i node_num is %d (%s/%lu:%lu) \n", indent,
-+	log(TO_CONSOLE, LOG_INFO, "%sInterrupt %i node_num is %d (%s/%" PRIu64 ":%" PRIu64 ") \n", indent,
- 	    info->irq, irq_numa_node(info)->number, classes[info->class], info->load, (info->irq_count - info->last_irq_count));
- 	free(indent);
- }
-diff --git a/irqbalance.c b/irqbalance.c
-index 9baa955..458bb07 100644
---- a/irqbalance.c
-+++ b/irqbalance.c
-@@ -34,6 +34,7 @@
- #include <sys/socket.h>
- #include <sys/un.h>
- #include <fcntl.h>
-+#include <inttypes.h>
- #ifdef HAVE_GETOPT_LONG 
- #include <getopt.h>
- #endif
-@@ -357,7 +358,7 @@ void get_irq_data(struct irq_info *irq, void *data)
- 	*irqdata = newptr;
- 
- 	sprintf(*irqdata + strlen(*irqdata),
--			"IRQ %d LOAD %lu DIFF %lu CLASS %d ", irq->irq, irq->load,
-+			"IRQ %d LOAD %" PRIu64 " DIFF %" PRIu64 " CLASS %d ", irq->irq, irq->load,
- 			(irq->irq_count - irq->last_irq_count), irq->class);
- }
- 
-@@ -395,7 +396,7 @@ void get_object_stat(struct topo_obj *object, void *data)
- 
- 	*stats = newptr;
- 
--	sprintf(*stats + strlen(*stats), "TYPE %d NUMBER %d LOAD %lu SAVE_MODE %d %s",
-+	sprintf(*stats + strlen(*stats), "TYPE %d NUMBER %d LOAD %" PRIu64 " SAVE_MODE %d %s",
- 			object->obj_type, object->number, object->load,
- 			object->powersave_mode, irq_data ? irq_data : "");
- 	free(irq_data);
-diff --git a/ui/ui.c b/ui/ui.c
-index 06ec472..4cf68bf 100644
---- a/ui/ui.c
-+++ b/ui/ui.c
-@@ -1,4 +1,5 @@
- 
-+#include <inttypes.h>
- #include <string.h>
- #include "ui.h"
- 
-@@ -563,7 +564,7 @@ void settings()
- 
- 	char info[128] = "Current sleep interval between rebalancing: \0";
- 	uint8_t sleep_input_offset = strlen(info) + 3;
--	snprintf(info + strlen(info), 128 - strlen(info), "%lu\n", setup.sleep);
-+	snprintf(info + strlen(info), 128 - strlen(info), "%" PRIu64 "\n", setup.sleep);
- 	attrset(COLOR_PAIR(1));
- 	mvprintw(2, 3, info);
- 	print_all_cpus();
-@@ -588,7 +589,7 @@ void settings()
- 			if(new_sleep != setup.sleep) {
- 				setup.sleep = new_sleep;
- 				char settings_data[128];
--				snprintf(settings_data, 128, "%s %lu", SET_SLEEP, new_sleep);
-+				snprintf(settings_data, 128, "%s %" PRIu64, SET_SLEEP, new_sleep);
- 				send_settings(settings_data);
- 			}
- 			break;
--- 
-2.25.1
-
diff --git a/package/irqbalance/irqbalance.hash b/package/irqbalance/irqbalance.hash
index 587173ca65..49118f8c7d 100644
--- a/package/irqbalance/irqbalance.hash
+++ b/package/irqbalance/irqbalance.hash
@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 28f2ad35945b93d90f4a5bad95b4c0871a0f644375f746ec16f61045b9ec970e  irqbalance-1.7.0.tar.gz
-sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670  COPYING
+sha256  2e7ddb9687a6a5cc1f41626659eac2ad9d6b5875629156b92f693bd404d8ae63  irqbalance-1.8.0.tar.gz
+sha256  32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670  COPYING
diff --git a/package/irqbalance/irqbalance.mk b/package/irqbalance/irqbalance.mk
index eb7c3e9f3b..1efc0b7fa2 100644
--- a/package/irqbalance/irqbalance.mk
+++ b/package/irqbalance/irqbalance.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-IRQBALANCE_VERSION = 1.7.0
+IRQBALANCE_VERSION = 1.8.0
 IRQBALANCE_SITE = $(call github,irqbalance,irqbalance,v$(IRQBALANCE_VERSION))
 IRQBALANCE_LICENSE = GPL-2.0
 IRQBALANCE_LICENSE_FILES = COPYING
-- 
2.30.2

_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [Buildroot] [PATCH 1/2] package/irqbalance: use pkg-config to find numa
  2021-08-01 21:46 [Buildroot] [PATCH 1/2] package/irqbalance: use pkg-config to find numa Fabrice Fontaine
  2021-08-01 21:46 ` [Buildroot] [PATCH 2/2] package/irqbalance: bump to version 1.8.0 Fabrice Fontaine
@ 2021-08-02 16:33 ` Arnout Vandecappelle
  2021-08-07 20:47 ` Peter Korsgaard
  2 siblings, 0 replies; 4+ messages in thread
From: Arnout Vandecappelle @ 2021-08-02 16:33 UTC (permalink / raw)
  To: Fabrice Fontaine, buildroot; +Cc: Karoly Kasza



On 01/08/2021 23:46, Fabrice Fontaine wrote:
> Use pkg-config to find numa to avoid the following build failure when
> checking for numa_available:
> 
> configure:9667: checking for numa_available in -lnuma
> configure:9692: /tmp/instance-7/output-1/host/bin/microblazeel-linux-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -Os   -static -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -static conftest.c -lnuma   >&5
> /tmp/instance-7/output-1/host/opt/ext-toolchain/bin/../lib/gcc/microblazeel-buildroot-linux-uclibc/9.3.0/../../../../microblazeel-buildroot-linux-uclibc/bin/ld: /tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot/usr/lib/libnuma.a(libnuma.o): in function `numa_node_to_cpus_v1':
> (.text+0x2a80): undefined reference to `__atomic_fetch_and_1'
> /tmp/instance-7/output-1/host/opt/ext-toolchain/bin/../lib/gcc/microblazeel-buildroot-linux-uclibc/9.3.0/../../../../microblazeel-buildroot-linux-uclibc/bin/ld: /tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot/usr/lib/libnuma.a(libnuma.o): in function `numa_node_to_cpus_v2':
> (.text+0x2ddc): undefined reference to `__atomic_fetch_and_1'
> collect2: error: ld returned 1 exit status
> 
> Fixes:
>  - http://autobuild.buildroot.org/results/577a63432fba2f9ae1ed2c6c2a77c5ce54ac5521
> 
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>

 Both applied to master, thanks.

 I've applied as-is even though what got merged upstream is actually a bit
different. The fallback mechanism is however harmless for us, and it's easier
for me this way :-)

 Regards,
 Arnout

> ---
>  ...igure.ac-use-pkg-config-to-find-numa.patch | 38 +++++++++++++++++++
>  1 file changed, 38 insertions(+)
>  create mode 100644 package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch
> 
> diff --git a/package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch b/package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch
> new file mode 100644
> index 0000000000..751367ccfb
> --- /dev/null
> +++ b/package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch
> @@ -0,0 +1,38 @@
> +From 274cb8ea470a10ce46b783e77784b0eb08cf20d8 Mon Sep 17 00:00:00 2001
> +From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> +Date: Sun, 1 Aug 2021 23:26:01 +0200
> +Subject: [PATCH] configure.ac: use pkg-config to find numa
> +
> +Use pkg-config to find numa and fallback to current mechanism.
> +Thanks to pkg-config, numa dependencies such as -latomic will be
> +retrieved.
> +
> +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> +[Upstream status: https://github.com/Irqbalance/irqbalance/pull/188]
> +---
> + configure.ac | 9 ++++++++-
> + 1 file changed, 8 insertions(+), 1 deletion(-)
> +
> +diff --git a/configure.ac b/configure.ac
> +index c45b9ce..50c62ba 100644
> +--- a/configure.ac
> ++++ b/configure.ac
> +@@ -23,7 +23,14 @@ AC_CHECK_HEADERS([numa.h])
> + 
> + AC_CHECK_FUNCS(getopt_long)
> + 
> +-AC_CHECK_LIB(numa, numa_available)
> ++PKG_CHECK_MODULES([NUMA], [numa], [has_numa=yes], [AC_CHECK_LIB(numa, numa_available)])
> ++AS_IF([test "x$has_numa" = "xyes"], [
> ++  AC_SUBST([NUMA_CFLAGS])
> ++  AC_SUBST([NUMA_LIBS])
> ++  LIBS="$LIBS $NUMA_LIBS"
> ++  AC_SUBST([LIBS])
> ++])
> ++
> + AC_CHECK_LIB(m, floor)
> + 
> + PKG_CHECK_MODULES([GLIB2], [glib-2.0], [], [AC_MSG_ERROR([glib-2.0 is required])])
> +-- 
> +2.30.2
> +
> 
_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Buildroot] [PATCH 1/2] package/irqbalance: use pkg-config to find numa
  2021-08-01 21:46 [Buildroot] [PATCH 1/2] package/irqbalance: use pkg-config to find numa Fabrice Fontaine
  2021-08-01 21:46 ` [Buildroot] [PATCH 2/2] package/irqbalance: bump to version 1.8.0 Fabrice Fontaine
  2021-08-02 16:33 ` [Buildroot] [PATCH 1/2] package/irqbalance: use pkg-config to find numa Arnout Vandecappelle
@ 2021-08-07 20:47 ` Peter Korsgaard
  2 siblings, 0 replies; 4+ messages in thread
From: Peter Korsgaard @ 2021-08-07 20:47 UTC (permalink / raw)
  To: Fabrice Fontaine; +Cc: Karoly Kasza, buildroot

>>>>> "Fabrice" == Fabrice Fontaine <fontaine.fabrice@gmail.com> writes:

 > Use pkg-config to find numa to avoid the following build failure when
 > checking for numa_available:

 > configure:9667: checking for numa_available in -lnuma
 > configure:9692:
 > /tmp/instance-7/output-1/host/bin/microblazeel-linux-gcc -o conftest
 > -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os
 > -static -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
 > -D_FILE_OFFSET_BITS=64 -static conftest.c -lnuma >&5
 > /tmp/instance-7/output-1/host/opt/ext-toolchain/bin/../lib/gcc/microblazeel-buildroot-linux-uclibc/9.3.0/../../../../microblazeel-buildroot-linux-uclibc/bin/ld:
 > /tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot/usr/lib/libnuma.a(libnuma.o):
 > in function `numa_node_to_cpus_v1':
 > (.text+0x2a80): undefined reference to `__atomic_fetch_and_1'
 > /tmp/instance-7/output-1/host/opt/ext-toolchain/bin/../lib/gcc/microblazeel-buildroot-linux-uclibc/9.3.0/../../../../microblazeel-buildroot-linux-uclibc/bin/ld:
 > /tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot/usr/lib/libnuma.a(libnuma.o):
 > in function `numa_node_to_cpus_v2':
 > (.text+0x2ddc): undefined reference to `__atomic_fetch_and_1'
 > collect2: error: ld returned 1 exit status

 > Fixes:
 >  - http://autobuild.buildroot.org/results/577a63432fba2f9ae1ed2c6c2a77c5ce54ac5521

 > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>

Committed to 2021.02.x and 2021.05.x, thanks.

-- 
Bye, Peter Korsgaard
_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-08-07 20:47 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-01 21:46 [Buildroot] [PATCH 1/2] package/irqbalance: use pkg-config to find numa Fabrice Fontaine
2021-08-01 21:46 ` [Buildroot] [PATCH 2/2] package/irqbalance: bump to version 1.8.0 Fabrice Fontaine
2021-08-02 16:33 ` [Buildroot] [PATCH 1/2] package/irqbalance: use pkg-config to find numa Arnout Vandecappelle
2021-08-07 20:47 ` Peter Korsgaard

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.