From: Mike Sowka <msowka@gmail.com>
To: dev@dpdk.org
Cc: Mike Sowka <msowka@gmail.com>
Subject: [PATCH] sched: fix build on Atom without SSE4 support
Date: Sat, 5 Dec 2015 17:27:56 -0500 [thread overview]
Message-ID: <1449354476-8275-1-git-send-email-msowka@gmail.com> (raw)
Thanks for the pointers Thomas. Here is a signed-off patch
re-submission with some explanation, to the best of my experience.
Irrelevant of the target, the preprocessor #ifdef SSE2 for the
grinder_pipe_exists function is inadequate since the __mm_testz_si128
function requires SSE4.1, PTEST instruction described in
https://en.wikipedia.org/wiki/SSE4#SSE4.1 (I do no have better spec
reference). I have bumped the preprocessor #ifdef to require SSE4.
The Atom N2600 does not have SSE4, http://ark.intel.com/products/58916,
and so I had trouble building rte_sched with optimized version of
grinder_pipe_exists, with following:
error: inlining failed in call to always_inline _mm_testz_si128’:
target specific option mismatch
GCC 4.9 correctly identifies my target as not having SSE4, and with
provided patch builds the non-optimized version of grinder_pipe_exists.
Signed-off-by: Mike Sowka <msowka@gmail.com>
---
lib/librte_sched/rte_sched.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/lib/librte_sched/rte_sched.c b/lib/librte_sched/rte_sched.c
index 21ebf25..6f92aa6 100644
--- a/lib/librte_sched/rte_sched.c
+++ b/lib/librte_sched/rte_sched.c
@@ -55,8 +55,8 @@
#ifdef RTE_SCHED_VECTOR
#include <rte_vect.h>
-#if defined(__SSE2__)
-#define SCHED_VECTOR_SSE2
+#if defined(__SSE4__)
+#define SCHED_VECTOR_SSE4
#endif
#endif
@@ -1672,7 +1672,7 @@ grinder_schedule(struct rte_sched_port *port, uint32_t pos)
return 1;
}
-#ifdef SCHED_VECTOR_SSE2
+#ifdef SCHED_VECTOR_SSE4
static inline int
grinder_pipe_exists(struct rte_sched_port *port, uint32_t base_pipe)
--
2.1.0
next reply other threads:[~2015-12-05 22:28 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-05 22:27 Mike Sowka [this message]
2015-12-05 23:47 ` [PATCH] sched: fix build on Atom without SSE4 support Thomas Monjalon
-- strict thread matches above, loose matches on Subject: below --
2015-12-05 5:00 [PATCH] " Mike Sowka
2015-12-05 5:00 ` [PATCH] sched: " Mike Sowka
2015-12-05 21:07 ` Thomas Monjalon
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=1449354476-8275-1-git-send-email-msowka@gmail.com \
--to=msowka@gmail.com \
--cc=dev@dpdk.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.