[dpdk-dev] [PATCH 3/3] net: run-time function selection

Bruce Richardson bruce.richardson at intel.com
Mon Jan 22 18:36:34 CET 2018


On Mon, Dec 11, 2017 at 03:31:16PM +0000, Bruce Richardson wrote:
> On Mon, Nov 06, 2017 at 10:05:43AM -0800, Elza Mathew wrote:
> > Compile-time function selection can potentially lead to
> > lower performance on generic builds done by distros.
> > Replaced compile time flag checks with run-time
> > function selection.
> > 
> > Signed-off-by: Elza Mathew <elza.mathew at intel.com>
> > ---
> >  lib/librte_net/rte_net_crc.c | 22 +++++++++++++---------
> >  1 file changed, 13 insertions(+), 9 deletions(-)
> > 
> Patch looks good to me, but unfortunately the compilation testing shows
> an issue with clang compliation on FreeBSD 10. I've also tested with gcc
> on both BSD 10 and 11 and saw no issues, and BSD 11 clang compilation is
> also fine. 
> 
> The compilation error is due to missing _mm_clmulepi64_si128 instrinsic:
> In file included from /home/patchWorkOrg/compilation/lib/librte_net/rte_net_crc.c:43:
> /home/patchWorkOrg/compilation/lib/librte_net/net_crc_sse.h:81:17: error: implicit declaration of function '_mm_clmulepi64_si128' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
>         __m128i tmp0 = _mm_clmulepi64_si128(fold, precomp, 0x01);
> 
> /Bruce

Checking with latest images for 10.3 or 10.4 no longer shows this
problem. I think the patch can be merged as-is.

Acked-by: Bruce Richardson <bruce.richardson at intel.com>

Thomas, do you need a resubmit to appear as a new patch in patchwork?


More information about the dev mailing list