From: Ferruh Yigit <ferruh.yigit@intel.com>
To: Bruce Richardson <bruce.richardson@intel.com>,
dev@dpdk.org, Shahaf Shuler <shahafs@mellanox.com>,
Yongseok Koh <yskoh@mellanox.com>
Cc: Shreyansh Jain <shreyansh.jain@nxp.com>,
Alejandro Lucero <alejandro.lucero@netronome.com>,
Anatoly Burakov <anatoly.burakov@intel.com>,
stable@dpdk.org, Maxime Coquelin <maxime.coquelin@redhat.com>,
Zhihong Wang <zhihong.wang@intel.com>,
Luca Boccassi <bluca@debian.org>,
Zhang XuemingX <xuemingx.zhang@intel.com>
Subject: Re: [dpdk-dev] [dpdk-stable] [PATCH v2 2/5] build: enable large file support on 32-bit
Date: Tue, 4 Jun 2019 15:49:58 +0100 [thread overview]
Message-ID: <b5079437-76d2-d86c-20b1-cca6b32b1d18@intel.com> (raw)
In-Reply-To: <20190528110748.10772-3-bruce.richardson@intel.com>
On 5/28/2019 12:07 PM, Bruce Richardson wrote:
> By default on 32-bit systems, file offsets are given as 32-bit values
> which prevents support for large files. While this is unlikely to be
> a problem, enabling large file support globally makes "make" and
> "meson" builds consistent, since meson always enables large file
> support, and without this change, the size of "struct stat" fields
> will be different between the two builds.
>
> The only location where this appears to be significant is in the
> dpaax common code, where a printf needs to be updated for 32-bit
> builds.
>
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> Acked-by: Luca Boccassi <bluca@debian.org>
> ---
> drivers/common/dpaax/dpaax_iova_table.c | 4 ++--
> mk/arch/arm/rte.vars.mk | 2 +-
> mk/arch/i686/rte.vars.mk | 2 +-
> 3 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/common/dpaax/dpaax_iova_table.c b/drivers/common/dpaax/dpaax_iova_table.c
> index 2dd38a9..ae0af09 100644
> --- a/drivers/common/dpaax/dpaax_iova_table.c
> +++ b/drivers/common/dpaax/dpaax_iova_table.c
> @@ -99,7 +99,7 @@ read_memory_node(unsigned int *count)
> goto cleanup;
> }
>
> - DPAAX_DEBUG("Size of device-tree mem node: %lu", statbuf.st_size);
> + DPAAX_DEBUG("Size of device-tree mem node: %" PRIu64, statbuf.st_size);
> if (statbuf.st_size > MEM_NODE_FILE_LEN) {
> DPAAX_DEBUG("More memory nodes available than assumed.");
> DPAAX_DEBUG("System may not work properly!");
> @@ -118,7 +118,7 @@ read_memory_node(unsigned int *count)
> */
> *count = (statbuf.st_size / 16);
> if ((*count) <= 0 || (statbuf.st_size % 16 != 0)) {
> - DPAAX_DEBUG("Invalid memory node values or count. (size=%lu)",
> + DPAAX_DEBUG("Invalid memory node values or count. (size=%" PRIu64 ")",
> statbuf.st_size);
> goto cleanup;
> }
> diff --git a/mk/arch/arm/rte.vars.mk b/mk/arch/arm/rte.vars.mk
> index 27b1147..dc8c10a 100644
> --- a/mk/arch/arm/rte.vars.mk
> +++ b/mk/arch/arm/rte.vars.mk
> @@ -4,7 +4,7 @@
> ARCH ?= arm
> CROSS ?=
>
> -CPU_CFLAGS ?= -marm -munaligned-access
> +CPU_CFLAGS ?= -marm -munaligned-access -D_FILE_OFFSET_BITS=64
> CPU_LDFLAGS ?=
> CPU_ASFLAGS ?= -felf
>
> diff --git a/mk/arch/i686/rte.vars.mk b/mk/arch/i686/rte.vars.mk
> index 3f48f67..c867883 100644
> --- a/mk/arch/i686/rte.vars.mk
> +++ b/mk/arch/i686/rte.vars.mk
> @@ -24,7 +24,7 @@ ARCH ?= i386
> ARCH_DIR := x86
> CROSS ?=
>
> -CPU_CFLAGS ?= -m32
> +CPU_CFLAGS ?= -m32 -D_FILE_OFFSET_BITS=64
Previously, 'off_t' was "long int" both for 32-bit or 64-bit, so in the printf
using "%ld" was OK.
But with this change 'off_t' becomes 'uint64_t' and just using '%ld' in the
format will cause error, as it is happening in 'mlx5' [1].
All 'off_t' usage should be checked for this change.
Shahaf, Yongseok,
Can you please send a fix for below build error?
Thanks,
ferruh
[1]
In file included from .../dpdk/i686-native-linuxapp-gcc/include/rte_compat.h:8,
from .../dpdk/i686-native-linuxapp-gcc/include/rte_mbuf.h:35,
from .../dpdk/drivers/net/mlx5/mlx5_txq.c:24:
.../dpdk/drivers/net/mlx5/mlx5_txq.c: In function ‘mlx5_txq_ibv_new’:
.../dpdk/drivers/net/mlx5/mlx5_defs.h:14:26: error: format ‘%lx’ expects
argument of type ‘long unsigned int’, but argument 5 has type ‘off_t’ {aka ‘long
long int’} [-Werror=format=]
14 | #define MLX5_DRIVER_NAME "net_mlx5"
| ^~~~~~~~~~
.../dpdk/i686-native-linuxapp-gcc/include/rte_common.h:642:27: note: in
definition of macro ‘RTE_FMT’
642 | #define RTE_FMT(fmt, ...) fmt "%.0s", __VA_ARGS__ ""
| ^~~
.../dpdk/drivers/net/mlx5/mlx5_utils.h:79:11: note: in expansion of macro
‘MLX5_DRIVER_NAME’
79 | RTE_FMT(MLX5_DRIVER_NAME ": " \
| ^~~~~~~~~~~~~~~~
.../dpdk/drivers/net/mlx5/mlx5_utils.h:101:2: note: in expansion of macro
‘PMD_DRV_LOG___’
101 | PMD_DRV_LOG___(level, __VA_ARGS__)
| ^~~~~~~~~~~~~~
.../dpdk/drivers/net/mlx5/mlx5_utils.h:103:2: note: in expansion of macro
‘PMD_DRV_LOG__’
103 | PMD_DRV_LOG__(level, s "\n", __VA_ARGS__)
| ^~~~~~~~~~~~~
.../dpdk/drivers/net/mlx5/mlx5_utils.h:109:2: note: in expansion of macro
‘PMD_DRV_LOG_’
109 | PMD_DRV_LOG_(level, \
| ^~~~~~~~~~~~
.../dpdk/drivers/net/mlx5/mlx5_txq.c:569:3: note: in expansion of macro ‘DRV_LOG’
569 | DRV_LOG(DEBUG, "port %u: uar_mmap_offset 0x%lx",
| ^~~~~~~
.../dpdk/drivers/net/mlx5/mlx5_txq.c:569:48: note: format string is defined here
569 | DRV_LOG(DEBUG, "port %u: uar_mmap_offset 0x%lx",
| ~~^
| |
| long unsigned int
| %llx
cc1: all warnings being treated as errors
next prev parent reply other threads:[~2019-06-04 14:50 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-27 16:15 [dpdk-dev] [PATCH 0/3] fix 32-bit meson builds Bruce Richardson
2019-05-27 16:15 ` [dpdk-dev] [PATCH 1/3] net/nfp: disable nfp for " Bruce Richardson
2019-05-27 16:15 ` [dpdk-dev] [PATCH 2/3] build: enable large file support on 32-bit Bruce Richardson
2019-05-27 16:15 ` [dpdk-dev] [PATCH 3/3] build: remove unnecessary large file support defines Bruce Richardson
2019-05-28 9:46 ` [dpdk-dev] [PATCH 0/3] fix 32-bit meson builds Luca Boccassi
2019-05-28 11:07 ` [dpdk-dev] [PATCH v2 0/5] " Bruce Richardson
2019-05-28 11:07 ` [dpdk-dev] [PATCH v2 1/5] net/nfp: disable nfp for " Bruce Richardson
2019-05-28 11:07 ` [dpdk-dev] [PATCH v2 2/5] build: enable large file support on 32-bit Bruce Richardson
2019-05-30 6:45 ` Shreyansh Jain
2019-06-04 14:49 ` Ferruh Yigit [this message]
2019-05-28 11:07 ` [dpdk-dev] [PATCH v2 3/5] build: remove unnecessary large file support defines Bruce Richardson
2019-05-28 11:07 ` [dpdk-dev] [PATCH v2 4/5] eal: mark unused function in 32-bit builds Bruce Richardson
2019-05-28 11:46 ` Luca Boccassi
2019-05-28 11:07 ` [dpdk-dev] [PATCH v2 5/5] build: add libatomic dependency for 32-bit clang compile Bruce Richardson
2019-05-28 11:46 ` Luca Boccassi
2019-06-03 22:00 ` [dpdk-dev] [PATCH v2 0/5] fix 32-bit meson builds Thomas Monjalon
2019-10-02 15:11 ` Kevin Traynor
2019-10-03 8:28 ` Bruce Richardson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=b5079437-76d2-d86c-20b1-cca6b32b1d18@intel.com \
--to=ferruh.yigit@intel.com \
--cc=alejandro.lucero@netronome.com \
--cc=anatoly.burakov@intel.com \
--cc=bluca@debian.org \
--cc=bruce.richardson@intel.com \
--cc=dev@dpdk.org \
--cc=maxime.coquelin@redhat.com \
--cc=shahafs@mellanox.com \
--cc=shreyansh.jain@nxp.com \
--cc=stable@dpdk.org \
--cc=xuemingx.zhang@intel.com \
--cc=yskoh@mellanox.com \
--cc=zhihong.wang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).