|
|
|
@ -1,66 +0,0 @@
|
|
|
|
|
From ac4e9bd66d9c8461024dfd3698e120c678eb6cfc Mon Sep 17 00:00:00 2001
|
|
|
|
|
Message-ID: <ac4e9bd66d9c8461024dfd3698e120c678eb6cfc.1707519557.git.aclaudi@redhat.com>
|
|
|
|
|
From: Andrea Claudi <aclaudi@redhat.com>
|
|
|
|
|
Date: Fri, 9 Feb 2024 23:56:20 +0100
|
|
|
|
|
Subject: [PATCH] iproute2: fix build failure on ppc64le
|
|
|
|
|
MIME-Version: 1.0
|
|
|
|
|
Content-Type: text/plain; charset=UTF-8
|
|
|
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
|
|
|
|
|
|
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2261250
|
|
|
|
|
Upstream Status: posted upstream
|
|
|
|
|
|
|
|
|
|
commit d13ef7c00b60a50a5e8ddbb7ff138399689d3483
|
|
|
|
|
Author: Andrea Claudi <aclaudi@redhat.com>
|
|
|
|
|
Date: Fri Feb 9 10:44:55 2024 +0100
|
|
|
|
|
|
|
|
|
|
iproute2: fix build failure on ppc64le
|
|
|
|
|
|
|
|
|
|
ppc64le build fails with error on ifstat.c when
|
|
|
|
|
-Wincompatible-pointer-types is enabled:
|
|
|
|
|
|
|
|
|
|
ifstat.c: In function ‘dump_raw_db’:
|
|
|
|
|
ifstat.c:323:44: error: initialization of ‘long long unsigned int *’ from incompatible pointer type ‘__u64 *’ {aka ‘long unsigned int *’} [-Wincompatible-pointer-types]
|
|
|
|
|
323 | unsigned long long *vals = n->val;
|
|
|
|
|
|
|
|
|
|
Several other warnings are produced when -Wformat= is set, for example:
|
|
|
|
|
|
|
|
|
|
ss.c:3244:34: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 2 has type ‘__u64’ {aka ‘long unsigned int’} [-Wformat=]
|
|
|
|
|
3244 | out(" rcv_nxt:%llu", s->mptcpi_rcv_nxt);
|
|
|
|
|
| ~~~^ ~~~~~~~~~~~~~~~~~
|
|
|
|
|
| | |
|
|
|
|
|
| | __u64 {aka long unsigned int}
|
|
|
|
|
| long long unsigned int
|
|
|
|
|
| %lu
|
|
|
|
|
|
|
|
|
|
This happens because __u64 is defined as long unsigned on ppc64le. As
|
|
|
|
|
pointed out by Florian Weimar, we should use -D__SANE_USERSPACE_TYPES__
|
|
|
|
|
if we really want to use long long unsigned in iproute2.
|
|
|
|
|
|
|
|
|
|
This fix the build failure and all the warnings without any change on
|
|
|
|
|
the code itself.
|
|
|
|
|
|
|
|
|
|
Suggested-by: Florian Weimer <fweimer@redhat.com>
|
|
|
|
|
Signed-off-by: Andrea Claudi <aclaudi@redhat.com>
|
|
|
|
|
|
|
|
|
|
Signed-off-by: Andrea Claudi <aclaudi@redhat.com>
|
|
|
|
|
---
|
|
|
|
|
Makefile | 2 +-
|
|
|
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
|
|
|
|
|
|
diff --git a/Makefile b/Makefile
|
|
|
|
|
index 8024d45e..3b9daede 100644
|
|
|
|
|
--- a/Makefile
|
|
|
|
|
+++ b/Makefile
|
|
|
|
|
@@ -60,7 +60,7 @@ CC := gcc
|
|
|
|
|
HOSTCC ?= $(CC)
|
|
|
|
|
DEFINES += -D_GNU_SOURCE
|
|
|
|
|
# Turn on transparent support for LFS
|
|
|
|
|
-DEFINES += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
|
|
|
|
|
+DEFINES += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__SANE_USERSPACE_TYPES__
|
|
|
|
|
CCOPTS = -O2 -pipe
|
|
|
|
|
WFLAGS := -Wall -Wstrict-prototypes -Wmissing-prototypes
|
|
|
|
|
WFLAGS += -Wmissing-declarations -Wold-style-definition -Wformat=2
|
|
|
|
|
--
|
|
|
|
|
2.43.0
|
|
|
|
|
|