[dpdk-dev] [PATCH] rte_flow: mark rte_flow_error_set as cold

Stephen Hemminger stephen at networkplumber.org
Tue May 21 00:52:00 CEST 2019


A minor optimization that save a few cycles during flow setup.

Use the GCC cold attribute for the rte_flow_error_set function.
This attribute implicitly marks all code paths that arrive at
this function as unlikely.

Signed-off-by: Stephen Hemminger <stephen at networkplumber.org>
---
 lib/librte_ethdev/rte_flow.h | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/lib/librte_ethdev/rte_flow.h b/lib/librte_ethdev/rte_flow.h
index 63f84fca65c4..dc821be43f19 100644
--- a/lib/librte_ethdev/rte_flow.h
+++ b/lib/librte_ethdev/rte_flow.h
@@ -2591,7 +2591,13 @@ rte_flow_error_set(struct rte_flow_error *error,
 		   int code,
 		   enum rte_flow_error_type type,
 		   const void *cause,
-		   const char *message);
+		   const char *message)
+#ifdef __GNUC__
+#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 2))
+	__attribute__((cold))
+#endif
+#endif
+	;
 
 /**
  * @deprecated
-- 
2.20.1



More information about the dev mailing list