* [dpdk-dev] [PATCH v2 0/4] fix examples build @ 2016-02-16 6:46 Thomas Monjalon 2016-02-16 6:46 ` [dpdk-dev] [PATCH v2 1/4] examples/l3fwd: fix build without SSE4.1 Thomas Monjalon ` (4 more replies) 0 siblings, 5 replies; 15+ messages in thread From: Thomas Monjalon @ 2016-02-16 6:46 UTC (permalink / raw) To: dev I've sent some patchsets previously to fixes examples: - "fix build for default machine" - "fix compilation of examples for ARM" Gather the non-rejected patches of these series here. Thomas Monjalon (4): examples/l3fwd: fix build without SSE4.1 examples/ip_pipeline: fix build for x86_64 without SSE4.2 examples/ethtool: fix build examples: fix build dependencies examples/Makefile | 12 ++++++++---- examples/ethtool/ethtool-app/main.c | 2 +- examples/ip_pipeline/pipeline/hash_func.h | 2 +- examples/l3fwd/main.c | 3 ++- 4 files changed, 12 insertions(+), 7 deletions(-) -- 2.7.0 ^ permalink raw reply [flat|nested] 15+ messages in thread
* [dpdk-dev] [PATCH v2 1/4] examples/l3fwd: fix build without SSE4.1 2016-02-16 6:46 [dpdk-dev] [PATCH v2 0/4] fix examples build Thomas Monjalon @ 2016-02-16 6:46 ` Thomas Monjalon 2016-02-16 6:46 ` [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for x86_64 without SSE4.2 Thomas Monjalon ` (3 subsequent siblings) 4 siblings, 0 replies; 15+ messages in thread From: Thomas Monjalon @ 2016-02-16 6:46 UTC (permalink / raw) To: dev clang reports this error: examples/l3fwd/main.c:550:1: error: unused function 'send_packetsx4' The function is used only when ENABLE_MULTI_BUFFER_OPTIMIZE is 1. Fixes: 96ff445371e0 ("examples/l3fwd: reorganise and optimize LPM code path") Fixes: 6f1c1e28d98e ("examples/l3fwd: fix build with exact-match enabled") Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com> Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com> --- examples/l3fwd/main.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/examples/l3fwd/main.c b/examples/l3fwd/main.c index c35926d..410f72d 100644 --- a/examples/l3fwd/main.c +++ b/examples/l3fwd/main.c @@ -545,7 +545,8 @@ send_single_packet(struct rte_mbuf *m, uint8_t port) return 0; } -#if (APP_LOOKUP_METHOD == APP_LOOKUP_LPM) +#if ((APP_LOOKUP_METHOD == APP_LOOKUP_LPM) && \ + (ENABLE_MULTI_BUFFER_OPTIMIZE == 1)) static inline __attribute__((always_inline)) void send_packetsx4(struct lcore_conf *qconf, uint8_t port, struct rte_mbuf *m[], uint32_t num) -- 2.7.0 ^ permalink raw reply [flat|nested] 15+ messages in thread
* [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for x86_64 without SSE4.2 2016-02-16 6:46 [dpdk-dev] [PATCH v2 0/4] fix examples build Thomas Monjalon 2016-02-16 6:46 ` [dpdk-dev] [PATCH v2 1/4] examples/l3fwd: fix build without SSE4.1 Thomas Monjalon @ 2016-02-16 6:46 ` Thomas Monjalon 2016-03-30 13:24 ` Dumitrescu, Cristian 2016-03-30 13:57 ` Dumitrescu, Cristian 2016-02-16 6:46 ` [dpdk-dev] [PATCH v2 3/4] examples/ethtool: fix build Thomas Monjalon ` (2 subsequent siblings) 4 siblings, 2 replies; 15+ messages in thread From: Thomas Monjalon @ 2016-02-16 6:46 UTC (permalink / raw) To: dev The compiler cannot use _mm_crc32_u64: examples/ip_pipeline/pipeline/hash_func.h:165:9: error: implicit declaration of function '_mm_crc32_u64' is invalid in C99 Fixes: 947024a26df7 ("examples/ip_pipeline: rework passthrough pipeline") Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com> --- examples/ip_pipeline/pipeline/hash_func.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/ip_pipeline/pipeline/hash_func.h b/examples/ip_pipeline/pipeline/hash_func.h index 7846300..1953ad4 100644 --- a/examples/ip_pipeline/pipeline/hash_func.h +++ b/examples/ip_pipeline/pipeline/hash_func.h @@ -152,7 +152,7 @@ hash_xor_key64(void *key, __rte_unused uint32_t key_size, uint64_t seed) return (xor0 >> 32) ^ xor0; } -#if defined(__x86_64__) +#if defined(__x86_64__) && defined(RTE_CPUFLAG_SSE4_2) #include <x86intrin.h> -- 2.7.0 ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for x86_64 without SSE4.2 2016-02-16 6:46 ` [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for x86_64 without SSE4.2 Thomas Monjalon @ 2016-03-30 13:24 ` Dumitrescu, Cristian 2016-03-30 13:58 ` Thomas Monjalon 2016-03-30 13:57 ` Dumitrescu, Cristian 1 sibling, 1 reply; 15+ messages in thread From: Dumitrescu, Cristian @ 2016-03-30 13:24 UTC (permalink / raw) To: Thomas Monjalon, dev; +Cc: Singh, Jasvinder, Zhang, Roy Fan, Hunt, David > -----Original Message----- > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Thomas Monjalon > Sent: Tuesday, February 16, 2016 6:46 AM > To: dev@dpdk.org > Subject: [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for > x86_64 without SSE4.2 > > The compiler cannot use _mm_crc32_u64: > > examples/ip_pipeline/pipeline/hash_func.h:165:9: > error: implicit declaration of function '_mm_crc32_u64' is invalid in C99 > > Fixes: 947024a26df7 ("examples/ip_pipeline: rework passthrough pipeline") > > Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com> > --- > examples/ip_pipeline/pipeline/hash_func.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/examples/ip_pipeline/pipeline/hash_func.h > b/examples/ip_pipeline/pipeline/hash_func.h > index 7846300..1953ad4 100644 > --- a/examples/ip_pipeline/pipeline/hash_func.h > +++ b/examples/ip_pipeline/pipeline/hash_func.h > @@ -152,7 +152,7 @@ hash_xor_key64(void *key, __rte_unused uint32_t > key_size, uint64_t seed) > return (xor0 >> 32) ^ xor0; > } > > -#if defined(__x86_64__) > +#if defined(__x86_64__) && defined(RTE_CPUFLAG_SSE4_2) > > #include <x86intrin.h> > > -- > 2.7.0 Hi Thomas, This is not the correct fix, as RTE_CPUFLAG_SSE4_2 is a flag that can only be tested at run-time (as result of calling function rte_cpu_get_flag_enabled()), not at build-time. The reason it appears to fix the build issue you are mentioning is the fact that this change results in disabling the __x86_64__ code branch. We need to revert this patch and look for a better option. What is the compiler that generates the build issue you are mentioning? We could not reproduce it with gcc 5 (gcc 5.3.1). Thanks, Cristian ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for x86_64 without SSE4.2 2016-03-30 13:24 ` Dumitrescu, Cristian @ 2016-03-30 13:58 ` Thomas Monjalon 0 siblings, 0 replies; 15+ messages in thread From: Thomas Monjalon @ 2016-03-30 13:58 UTC (permalink / raw) To: Dumitrescu, Cristian; +Cc: dev, Singh, Jasvinder, Zhang, Roy Fan, Hunt, David 2016-03-30 13:24, Dumitrescu, Cristian: > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Thomas Monjalon > > The compiler cannot use _mm_crc32_u64: > > > > examples/ip_pipeline/pipeline/hash_func.h:165:9: > > error: implicit declaration of function '_mm_crc32_u64' is invalid in C99 > > > > Fixes: 947024a26df7 ("examples/ip_pipeline: rework passthrough pipeline") > > > > Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com> [...] > > -#if defined(__x86_64__) > > +#if defined(__x86_64__) && defined(RTE_CPUFLAG_SSE4_2) > > Hi Thomas, > > This is not the correct fix, as RTE_CPUFLAG_SSE4_2 is a flag that can > only be tested at run-time (as result of calling function > rte_cpu_get_flag_enabled()), not at build-time. Yes you're right. It is an error, the word MACHINE is missing. The flag should be RTE_MACHINE_CPUFLAG_SSE4_2. > The reason it appears to fix the build issue you are mentioning is the fact > that this change results in disabling the __x86_64__ code branch. > > We need to revert this patch and look for a better option. > > What is the compiler that generates the build issue you are mentioning? > We could not reproduce it with gcc 5 (gcc 5.3.1). It fails with gcc-5.2.0 and clang-3.6.2 for machine "default". ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for x86_64 without SSE4.2 2016-02-16 6:46 ` [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for x86_64 without SSE4.2 Thomas Monjalon 2016-03-30 13:24 ` Dumitrescu, Cristian @ 2016-03-30 13:57 ` Dumitrescu, Cristian 2016-03-30 14:06 ` Thomas Monjalon 1 sibling, 1 reply; 15+ messages in thread From: Dumitrescu, Cristian @ 2016-03-30 13:57 UTC (permalink / raw) To: Thomas Monjalon, dev; +Cc: Singh, Jasvinder, Zhang, Roy Fan, Hunt, David > -----Original Message----- > From: Dumitrescu, Cristian > Sent: Wednesday, March 30, 2016 2:24 PM > To: 'Thomas Monjalon' <thomas.monjalon@6wind.com>; dev@dpdk.org > Cc: Singh, Jasvinder <jasvinder.singh@intel.com>; Zhang, Roy Fan > <roy.fan.zhang@intel.com>; Hunt, David <david.hunt@intel.com> > Subject: RE: [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for > x86_64 without SSE4.2 > Importance: High > > > > > -----Original Message----- > > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Thomas Monjalon > > Sent: Tuesday, February 16, 2016 6:46 AM > > To: dev@dpdk.org > > Subject: [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for > > x86_64 without SSE4.2 > > > > The compiler cannot use _mm_crc32_u64: > > > > examples/ip_pipeline/pipeline/hash_func.h:165:9: > > error: implicit declaration of function '_mm_crc32_u64' is invalid in C99 > > > > Fixes: 947024a26df7 ("examples/ip_pipeline: rework passthrough > pipeline") > > > > Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com> > > --- > > examples/ip_pipeline/pipeline/hash_func.h | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/examples/ip_pipeline/pipeline/hash_func.h > > b/examples/ip_pipeline/pipeline/hash_func.h > > index 7846300..1953ad4 100644 > > --- a/examples/ip_pipeline/pipeline/hash_func.h > > +++ b/examples/ip_pipeline/pipeline/hash_func.h > > @@ -152,7 +152,7 @@ hash_xor_key64(void *key, __rte_unused uint32_t > > key_size, uint64_t seed) > > return (xor0 >> 32) ^ xor0; > > } > > > > -#if defined(__x86_64__) > > +#if defined(__x86_64__) && defined(RTE_CPUFLAG_SSE4_2) > > > > #include <x86intrin.h> > > > > -- > > 2.7.0 > > Hi Thomas, > > This is not the correct fix, as RTE_CPUFLAG_SSE4_2 is a flag that can only be > tested at run-time (as result of calling function rte_cpu_get_flag_enabled()), > not at build-time. > > The reason it appears to fix the build issue you are mentioning is the fact that > this change results in disabling the __x86_64__ code branch. > > We need to revert this patch and look for a better option. > > What is the compiler that generates the build issue you are mentioning? We > could not reproduce it with gcc 5 (gcc 5.3.1). > > Thanks, > Cristian I think the correct fix is: #if defined(__x86_64__) && (defined(RTE_MACHINE_CPUFLAG_SSE4_2) || defined(RTE_MACHINE_CPUFLAG_CRC32)) We'll test it and send a patch asap. Thanks, Cristian ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for x86_64 without SSE4.2 2016-03-30 13:57 ` Dumitrescu, Cristian @ 2016-03-30 14:06 ` Thomas Monjalon 2016-03-30 14:15 ` Dumitrescu, Cristian 0 siblings, 1 reply; 15+ messages in thread From: Thomas Monjalon @ 2016-03-30 14:06 UTC (permalink / raw) To: Dumitrescu, Cristian; +Cc: dev, Singh, Jasvinder, Zhang, Roy Fan, Hunt, David 2016-03-30 13:57, Dumitrescu, Cristian: > I think the correct fix is: > #if defined(__x86_64__) && (defined(RTE_MACHINE_CPUFLAG_SSE4_2) || defined(RTE_MACHINE_CPUFLAG_CRC32)) > > We'll test it and send a patch asap. I had prepared this patch. Please be inspired: examples/ip_pipeline: fix SSE4.2 optimization branch The branch was disabled because of a typo in the SSE4.2 flag. Change also the x86_64 flag to use a DPDK one. Fixes: 28377375c6c0 ("examples/ip_pipeline: fix build for x86_64 without SSE4.2") -#if defined(__x86_64__) && defined(RTE_CPUFLAG_SSE4_2) +#if defined(RTE_ARCH_X86_64) && defined(RTE_MACHINE_CPUFLAG_SSE4_2) ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for x86_64 without SSE4.2 2016-03-30 14:06 ` Thomas Monjalon @ 2016-03-30 14:15 ` Dumitrescu, Cristian 2016-03-30 15:50 ` Thomas Monjalon 0 siblings, 1 reply; 15+ messages in thread From: Dumitrescu, Cristian @ 2016-03-30 14:15 UTC (permalink / raw) To: Thomas Monjalon; +Cc: dev, Singh, Jasvinder, Zhang, Roy Fan, Hunt, David > -----Original Message----- > From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com] > Sent: Wednesday, March 30, 2016 3:07 PM > To: Dumitrescu, Cristian <cristian.dumitrescu@intel.com> > Cc: dev@dpdk.org; Singh, Jasvinder <jasvinder.singh@intel.com>; Zhang, > Roy Fan <roy.fan.zhang@intel.com>; Hunt, David <david.hunt@intel.com> > Subject: Re: [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for > x86_64 without SSE4.2 > > 2016-03-30 13:57, Dumitrescu, Cristian: > > I think the correct fix is: > > #if defined(__x86_64__) && (defined(RTE_MACHINE_CPUFLAG_SSE4_2) > || defined(RTE_MACHINE_CPUFLAG_CRC32)) > > > > We'll test it and send a patch asap. > > I had prepared this patch. Please be inspired: > > examples/ip_pipeline: fix SSE4.2 optimization branch > > The branch was disabled because of a typo in the SSE4.2 flag. > Change also the x86_64 flag to use a DPDK one. > > Fixes: 28377375c6c0 ("examples/ip_pipeline: fix build for x86_64 without > SSE4.2") > > -#if defined(__x86_64__) && defined(RTE_CPUFLAG_SSE4_2) > +#if defined(RTE_ARCH_X86_64) && > defined(RTE_MACHINE_CPUFLAG_SSE4_2) Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com> ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for x86_64 without SSE4.2 2016-03-30 14:15 ` Dumitrescu, Cristian @ 2016-03-30 15:50 ` Thomas Monjalon 2016-03-30 16:31 ` Dumitrescu, Cristian 0 siblings, 1 reply; 15+ messages in thread From: Thomas Monjalon @ 2016-03-30 15:50 UTC (permalink / raw) To: Dumitrescu, Cristian; +Cc: dev, Singh, Jasvinder, Zhang, Roy Fan, Hunt, David 2016-03-30 14:15, Dumitrescu, Cristian: > From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com] > > 2016-03-30 13:57, Dumitrescu, Cristian: > > > I think the correct fix is: > > > #if defined(__x86_64__) && (defined(RTE_MACHINE_CPUFLAG_SSE4_2) > > || defined(RTE_MACHINE_CPUFLAG_CRC32)) > > > > > > We'll test it and send a patch asap. > > > > I had prepared this patch. Please be inspired: > > > > examples/ip_pipeline: fix SSE4.2 optimization branch > > > > The branch was disabled because of a typo in the SSE4.2 flag. > > Change also the x86_64 flag to use a DPDK one. > > > > Fixes: 28377375c6c0 ("examples/ip_pipeline: fix build for x86_64 without > > SSE4.2") > > > > -#if defined(__x86_64__) && defined(RTE_CPUFLAG_SSE4_2) > > +#if defined(RTE_ARCH_X86_64) && > > defined(RTE_MACHINE_CPUFLAG_SSE4_2) > > Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com> I thought you wanted to send a patch with another CPUFLAG (CRC32)? ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for x86_64 without SSE4.2 2016-03-30 15:50 ` Thomas Monjalon @ 2016-03-30 16:31 ` Dumitrescu, Cristian 2016-03-30 18:06 ` [dpdk-dev] [PATCH] examples/ip_pipeline: fix SSE4.2 optimization branch Thomas Monjalon 0 siblings, 1 reply; 15+ messages in thread From: Dumitrescu, Cristian @ 2016-03-30 16:31 UTC (permalink / raw) To: Thomas Monjalon; +Cc: dev, Singh, Jasvinder, Zhang, Roy Fan, Hunt, David > -----Original Message----- > From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com] > Sent: Wednesday, March 30, 2016 4:50 PM > To: Dumitrescu, Cristian <cristian.dumitrescu@intel.com> > Cc: dev@dpdk.org; Singh, Jasvinder <jasvinder.singh@intel.com>; Zhang, > Roy Fan <roy.fan.zhang@intel.com>; Hunt, David <david.hunt@intel.com> > Subject: Re: [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for > x86_64 without SSE4.2 > > 2016-03-30 14:15, Dumitrescu, Cristian: > > From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com] > > > 2016-03-30 13:57, Dumitrescu, Cristian: > > > > I think the correct fix is: > > > > #if defined(__x86_64__) && > (defined(RTE_MACHINE_CPUFLAG_SSE4_2) > > > || defined(RTE_MACHINE_CPUFLAG_CRC32)) > > > > > > > > We'll test it and send a patch asap. > > > > > > I had prepared this patch. Please be inspired: > > > > > > examples/ip_pipeline: fix SSE4.2 optimization branch > > > > > > The branch was disabled because of a typo in the SSE4.2 flag. > > > Change also the x86_64 flag to use a DPDK one. > > > > > > Fixes: 28377375c6c0 ("examples/ip_pipeline: fix build for x86_64 > without > > > SSE4.2") > > > > > > -#if defined(__x86_64__) && defined(RTE_CPUFLAG_SSE4_2) > > > +#if defined(RTE_ARCH_X86_64) && > > > defined(RTE_MACHINE_CPUFLAG_SSE4_2) > > > > Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com> > > I thought you wanted to send a patch with another CPUFLAG (CRC32)? The extra flag is good, but not absolutely required, as SSE4.2 implies support for CRC32 instruction. The CRC32 flag might be useful when a CPU architecture other than Intel supports the CRC32 instruction, but I am not sure whether such CPU architecture exists. Anyway, the SSE4.2 || CRC32 pattern is already present in several DPDK files, so I was looking to observe it as well. I thought you considered the CRC32 flag to be redundant and decided to remove it on purpose. I am OK if you want to go ahead with your patch right now, otherwise we can send a patch tomorrow? Thanks, Cristian ^ permalink raw reply [flat|nested] 15+ messages in thread
* [dpdk-dev] [PATCH] examples/ip_pipeline: fix SSE4.2 optimization branch 2016-03-30 16:31 ` Dumitrescu, Cristian @ 2016-03-30 18:06 ` Thomas Monjalon 2016-03-31 20:49 ` Thomas Monjalon 0 siblings, 1 reply; 15+ messages in thread From: Thomas Monjalon @ 2016-03-30 18:06 UTC (permalink / raw) To: cristian.dumitrescu; +Cc: dev The branch was disabled because of a typo in the SSE4.2 flag. Change also the x86_64 flag to use a DPDK one. Fixes: 28377375c6c0 ("examples/ip_pipeline: fix build for x86_64 without SSE4.2") Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com> Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com> --- examples/ip_pipeline/pipeline/hash_func.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/ip_pipeline/pipeline/hash_func.h b/examples/ip_pipeline/pipeline/hash_func.h index 1953ad4..9db7173 100644 --- a/examples/ip_pipeline/pipeline/hash_func.h +++ b/examples/ip_pipeline/pipeline/hash_func.h @@ -152,7 +152,7 @@ hash_xor_key64(void *key, __rte_unused uint32_t key_size, uint64_t seed) return (xor0 >> 32) ^ xor0; } -#if defined(__x86_64__) && defined(RTE_CPUFLAG_SSE4_2) +#if defined(RTE_ARCH_X86_64) && defined(RTE_MACHINE_CPUFLAG_SSE4_2) #include <x86intrin.h> -- 2.7.0 ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [dpdk-dev] [PATCH] examples/ip_pipeline: fix SSE4.2 optimization branch 2016-03-30 18:06 ` [dpdk-dev] [PATCH] examples/ip_pipeline: fix SSE4.2 optimization branch Thomas Monjalon @ 2016-03-31 20:49 ` Thomas Monjalon 0 siblings, 0 replies; 15+ messages in thread From: Thomas Monjalon @ 2016-03-31 20:49 UTC (permalink / raw) To: cristian.dumitrescu; +Cc: dev 2016-03-30 20:06, Thomas Monjalon: > The branch was disabled because of a typo in the SSE4.2 flag. > Change also the x86_64 flag to use a DPDK one. > > Fixes: 28377375c6c0 ("examples/ip_pipeline: fix build for x86_64 without SSE4.2") > > Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com> > Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com> Applied ^ permalink raw reply [flat|nested] 15+ messages in thread
* [dpdk-dev] [PATCH v2 3/4] examples/ethtool: fix build 2016-02-16 6:46 [dpdk-dev] [PATCH v2 0/4] fix examples build Thomas Monjalon 2016-02-16 6:46 ` [dpdk-dev] [PATCH v2 1/4] examples/l3fwd: fix build without SSE4.1 Thomas Monjalon 2016-02-16 6:46 ` [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for x86_64 without SSE4.2 Thomas Monjalon @ 2016-02-16 6:46 ` Thomas Monjalon 2016-02-16 6:46 ` [dpdk-dev] [PATCH v2 4/4] examples: fix build dependencies Thomas Monjalon 2016-02-16 6:56 ` [dpdk-dev] [PATCH v2 0/4] fix examples build Thomas Monjalon 4 siblings, 0 replies; 15+ messages in thread From: Thomas Monjalon @ 2016-02-16 6:46 UTC (permalink / raw) To: dev When building for ARM, the spinlock structure was not found. It appears to be a mismatch with rwlock which is not used in this file. Fixes: bda68ab9d1e7 ("examples/ethtool: add user-space ethtool sample application") Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com> Acked-by: Remy Horton <remy.horton@intel.com> --- examples/ethtool/ethtool-app/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/ethtool/ethtool-app/main.c b/examples/ethtool/ethtool-app/main.c index e21abcd..2c655d8 100644 --- a/examples/ethtool/ethtool-app/main.c +++ b/examples/ethtool/ethtool-app/main.c @@ -36,7 +36,7 @@ #include <stdlib.h> #include <rte_common.h> -#include <rte_rwlock.h> +#include <rte_spinlock.h> #include <rte_eal.h> #include <rte_ethdev.h> #include <rte_ether.h> -- 2.7.0 ^ permalink raw reply [flat|nested] 15+ messages in thread
* [dpdk-dev] [PATCH v2 4/4] examples: fix build dependencies 2016-02-16 6:46 [dpdk-dev] [PATCH v2 0/4] fix examples build Thomas Monjalon ` (2 preceding siblings ...) 2016-02-16 6:46 ` [dpdk-dev] [PATCH v2 3/4] examples/ethtool: fix build Thomas Monjalon @ 2016-02-16 6:46 ` Thomas Monjalon 2016-02-16 6:56 ` [dpdk-dev] [PATCH v2 0/4] fix examples build Thomas Monjalon 4 siblings, 0 replies; 15+ messages in thread From: Thomas Monjalon @ 2016-02-16 6:46 UTC (permalink / raw) To: dev When building for ARM some examples were failing to compile because of some dependencies disabled. Declaring these dependencies prevent from trying to compile some not supported examples. Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com> --- examples/Makefile | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/examples/Makefile b/examples/Makefile index 1cb4785..1665df1 100644 --- a/examples/Makefile +++ b/examples/Makefile @@ -46,21 +46,25 @@ endif DIRS-y += ethtool DIRS-y += exception_path DIRS-y += helloworld -DIRS-y += ip_pipeline -DIRS-y += ip_reassembly +DIRS-$(CONFIG_RTE_LIBRTE_PIPELINE) += ip_pipeline +ifeq ($(CONFIG_RTE_LIBRTE_LPM),y) +DIRS-$(CONFIG_RTE_IP_FRAG) += ip_reassembly DIRS-$(CONFIG_RTE_IP_FRAG) += ip_fragmentation +endif DIRS-y += ipv4_multicast DIRS-$(CONFIG_RTE_LIBRTE_KNI) += kni DIRS-y += l2fwd DIRS-$(CONFIG_RTE_LIBRTE_IVSHMEM) += l2fwd-ivshmem DIRS-$(CONFIG_RTE_LIBRTE_JOBSTATS) += l2fwd-jobstats DIRS-y += l2fwd-keepalive -DIRS-y += l3fwd +DIRS-$(CONFIG_RTE_LIBRTE_LPM) += l3fwd DIRS-$(CONFIG_RTE_LIBRTE_ACL) += l3fwd-acl +ifeq ($(CONFIG_RTE_LIBRTE_LPM),y) DIRS-$(CONFIG_RTE_LIBRTE_POWER) += l3fwd-power DIRS-y += l3fwd-vf +endif DIRS-y += link_status_interrupt -DIRS-y += load_balancer +DIRS-$(CONFIG_RTE_LIBRTE_LPM) += load_balancer DIRS-y += multi_process DIRS-y += netmap_compat/bridge DIRS-$(CONFIG_RTE_LIBRTE_REORDER) += packet_ordering -- 2.7.0 ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [dpdk-dev] [PATCH v2 0/4] fix examples build 2016-02-16 6:46 [dpdk-dev] [PATCH v2 0/4] fix examples build Thomas Monjalon ` (3 preceding siblings ...) 2016-02-16 6:46 ` [dpdk-dev] [PATCH v2 4/4] examples: fix build dependencies Thomas Monjalon @ 2016-02-16 6:56 ` Thomas Monjalon 4 siblings, 0 replies; 15+ messages in thread From: Thomas Monjalon @ 2016-02-16 6:56 UTC (permalink / raw) To: dev 2016-02-16 07:46, Thomas Monjalon: > I've sent some patchsets previously to fixes examples: > - "fix build for default machine" > - "fix compilation of examples for ARM" > > Gather the non-rejected patches of these series here. > > Thomas Monjalon (4): > examples/l3fwd: fix build without SSE4.1 > examples/ip_pipeline: fix build for x86_64 without SSE4.2 > examples/ethtool: fix build > examples: fix build dependencies Applied ^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2016-03-31 20:51 UTC | newest] Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2016-02-16 6:46 [dpdk-dev] [PATCH v2 0/4] fix examples build Thomas Monjalon 2016-02-16 6:46 ` [dpdk-dev] [PATCH v2 1/4] examples/l3fwd: fix build without SSE4.1 Thomas Monjalon 2016-02-16 6:46 ` [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for x86_64 without SSE4.2 Thomas Monjalon 2016-03-30 13:24 ` Dumitrescu, Cristian 2016-03-30 13:58 ` Thomas Monjalon 2016-03-30 13:57 ` Dumitrescu, Cristian 2016-03-30 14:06 ` Thomas Monjalon 2016-03-30 14:15 ` Dumitrescu, Cristian 2016-03-30 15:50 ` Thomas Monjalon 2016-03-30 16:31 ` Dumitrescu, Cristian 2016-03-30 18:06 ` [dpdk-dev] [PATCH] examples/ip_pipeline: fix SSE4.2 optimization branch Thomas Monjalon 2016-03-31 20:49 ` Thomas Monjalon 2016-02-16 6:46 ` [dpdk-dev] [PATCH v2 3/4] examples/ethtool: fix build Thomas Monjalon 2016-02-16 6:46 ` [dpdk-dev] [PATCH v2 4/4] examples: fix build dependencies Thomas Monjalon 2016-02-16 6:56 ` [dpdk-dev] [PATCH v2 0/4] fix examples build Thomas Monjalon
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).