[dpdk-dev] [PATCH] bnx2x: fix undeclared PAGE_SIZE build error
>-Original Message- >From: Thomas Monjalon [mailto:thomas.monjalon at 6wind.com] >Sent: Tuesday, July 28, 2015 5:18 PM >To: Zhigang Lu >Cc: dev at dpdk.org >Subject: Re: [dpdk-dev] [PATCH] bnx2x: fix undeclared PAGE_SIZE build error > >2015-07-28 16:48, Zhigang Lu: >> This patch fixes a build error caused by undeclared PAGE_SIZE when >> compiling for non-X86 arches. On some arches, PAGE_SIZE is not fixed >> so that header files do not define it. A better way to get it is via >> sysconf(3) or getpagesize(2). >> >> Fixes: 540a211084a7 ("bnx2x: driver core") > >Thanks for fixing it. > >> +#define PAGE_SIZE (sysconf(_SC_PAGESIZE)) > >To avoid conflict with system headers, it would be better to prefix the constant. >Ideally, we should add RTE_PAGESIZE in EAL and cleanup every usage of >sysconf(_SC_PAGESIZE) and getpagesize. Agree, good idea.
[dpdk-dev] [PATCH] bnx2x: fix undeclared PAGE_SIZE build error
This patch fixes a build error caused by undeclared PAGE_SIZE when compiling for non-X86 arches. On some arches, PAGE_SIZE is not fixed so that header files do not define it. A better way to get it is via sysconf(3) or getpagesize(2). Fixes: 540a211084a7 ("bnx2x: driver core") == Build drivers/net/bnx2x CC bnx2x.o /u/zlu.bjg/git/dpdk.org/drivers/net/bnx2x/bnx2x.c: In function ?bnx2x_set_fp_rx_buf_size?: /u/zlu.bjg/git/dpdk.org/drivers/net/bnx2x/bnx2x.c:2331: error: ?PAGE_SIZE? undeclared (first use in this function) /u/zlu.bjg/git/dpdk.org/drivers/net/bnx2x/bnx2x.c:2331: error: (Each undeclared identifier is reported only once /u/zlu.bjg/git/dpdk.org/drivers/net/bnx2x/bnx2x.c:2331: error: for each function it appears in.) /u/zlu.bjg/git/dpdk.org/drivers/net/bnx2x/bnx2x.c: In function ?ecore_gunzip?: /u/zlu.bjg/git/dpdk.org/drivers/net/bnx2x/bnx2x.c:11579: warning: assignment discards qualifiers from pointer target type Signed-off-by: Zhigang Lu --- drivers/net/bnx2x/bnx2x.h| 2 ++ drivers/net/bnx2x/bnx2x_ethdev.h | 1 - 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/bnx2x/bnx2x.h b/drivers/net/bnx2x/bnx2x.h index b1e36e5..84b4a29 100644 --- a/drivers/net/bnx2x/bnx2x.h +++ b/drivers/net/bnx2x/bnx2x.h @@ -144,6 +144,8 @@ struct bnx2x_device_type { #define RTE_MBUF_DATA_DMA_ADDR(mb) \ ((uint64_t)((mb)->buf_physaddr + (mb)->data_off)) +#define PAGE_SIZE (sysconf(_SC_PAGESIZE)) + #define BNX2X_PAGE_SHIFT 12 #define BNX2X_PAGE_SIZE(1 << BNX2X_PAGE_SHIFT) #define BNX2X_PAGE_MASK(~(BNX2X_PAGE_SIZE - 1)) diff --git a/drivers/net/bnx2x/bnx2x_ethdev.h b/drivers/net/bnx2x/bnx2x_ethdev.h index 569bfdf..4f96ef7 100644 --- a/drivers/net/bnx2x/bnx2x_ethdev.h +++ b/drivers/net/bnx2x/bnx2x_ethdev.h @@ -9,7 +9,6 @@ #include #include -#include #include #include -- 2.1.2
[dpdk-dev] [PATCH] bnx2x: fix undeclared PAGE_SIZE build error
2015-07-28 16:48, Zhigang Lu: > This patch fixes a build error caused by undeclared PAGE_SIZE when > compiling for non-X86 arches. On some arches, PAGE_SIZE is not fixed > so that header files do not define it. A better way to get it is > via sysconf(3) or getpagesize(2). > > Fixes: 540a211084a7 ("bnx2x: driver core") Thanks for fixing it. > +#define PAGE_SIZE (sysconf(_SC_PAGESIZE)) To avoid conflict with system headers, it would be better to prefix the constant. Ideally, we should add RTE_PAGESIZE in EAL and cleanup every usage of sysconf(_SC_PAGESIZE) and getpagesize.