summaryrefslogtreecommitdiff
path: root/lib/librte_meter
diff options
context:
space:
mode:
authorDavid Marchand <david.marchand@redhat.com>2019-06-29 13:58:53 +0200
committerThomas Monjalon <thomas@monjalon.net>2019-06-29 19:04:48 +0200
commit18218713bf4248c4c6b97a12231e7d59b8a86865 (patch)
tree380e87a089b57686fc4c8f99043a1ea4da4d5b8f /lib/librte_meter
parentcfe3aeb170b2f6277e6f96173599da51eab0654f (diff)
downloaddpdk-18218713bf4248c4c6b97a12231e7d59b8a86865.zip
dpdk-18218713bf4248c4c6b97a12231e7d59b8a86865.tar.gz
dpdk-18218713bf4248c4c6b97a12231e7d59b8a86865.tar.xz
enforce experimental tag at beginning of declarations
Putting a '__attribute__((deprecated))' in the middle of a function prototype does not result in the expected result with gcc (while clang is fine with this syntax). $ cat deprecated.c void * __attribute__((deprecated)) incorrect() { return 0; } __attribute__((deprecated)) void *correct(void) { return 0; } int main(int argc, char *argv[]) { incorrect(); correct(); return 0; } $ gcc -o deprecated.o -c deprecated.c deprecated.c: In function ‘main’: deprecated.c:3:1: warning: ‘correct’ is deprecated (declared at deprecated.c:2) [-Wdeprecated-declarations] int main(int argc, char *argv[]) { incorrect(); correct(); return 0; } ^ Move the tag on a separate line and make it the first thing of function prototypes. This is not perfect but we will trust reviewers to catch the other not so easy to detect patterns. sed -i \ -e '/^\([^#].*\)\?__rte_experimental */{' \ -e 's//\1/; s/ *$//; i\' \ -e __rte_experimental \ -e '/^$/d}' \ $(git grep -l __rte_experimental -- '*.h') Special mention for rte_mbuf_data_addr_default(): There is either a bug or a (not yet understood) issue with gcc. gcc won't drop this inline when unused and rte_mbuf_data_addr_default() calls rte_mbuf_buf_addr() which itself is experimental. This results in a build warning when not accepting experimental apis from sources just including rte_mbuf.h. For this specific case, we hide the call to rte_mbuf_buf_addr() under the ALLOW_EXPERIMENTAL_API flag. Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com> Signed-off-by: David Marchand <david.marchand@redhat.com>
Diffstat (limited to 'lib/librte_meter')
-rw-r--r--lib/librte_meter/rte_meter.h18
1 files changed, 12 insertions, 6 deletions
diff --git a/lib/librte_meter/rte_meter.h b/lib/librte_meter/rte_meter.h
index 3e383d2..d69b118 100644
--- a/lib/librte_meter/rte_meter.h
+++ b/lib/librte_meter/rte_meter.h
@@ -140,7 +140,8 @@ rte_meter_trtcm_profile_config(struct rte_meter_trtcm_profile *p,
* @return
* 0 upon success, error code otherwise
*/
-int __rte_experimental
+__rte_experimental
+int
rte_meter_trtcm_rfc4115_profile_config(
struct rte_meter_trtcm_rfc4115_profile *p,
struct rte_meter_trtcm_rfc4115_params *params);
@@ -186,7 +187,8 @@ rte_meter_trtcm_config(struct rte_meter_trtcm *m,
* @return
* 0 upon success, error code otherwise
*/
-int __rte_experimental
+__rte_experimental
+int
rte_meter_trtcm_rfc4115_config(struct rte_meter_trtcm_rfc4115 *m,
struct rte_meter_trtcm_rfc4115_profile *p);
@@ -293,7 +295,8 @@ rte_meter_trtcm_color_aware_check(struct rte_meter_trtcm *m,
* @return
* Color assigned to the current IP packet
*/
-static inline enum rte_color __rte_experimental
+__rte_experimental
+static inline enum rte_color
rte_meter_trtcm_rfc4115_color_blind_check(
struct rte_meter_trtcm_rfc4115 *m,
struct rte_meter_trtcm_rfc4115_profile *p,
@@ -319,7 +322,8 @@ rte_meter_trtcm_rfc4115_color_blind_check(
* @return
* Color assigned to the current IP packet
*/
-static inline enum rte_color __rte_experimental
+__rte_experimental
+static inline enum rte_color
rte_meter_trtcm_rfc4115_color_aware_check(
struct rte_meter_trtcm_rfc4115 *m,
struct rte_meter_trtcm_rfc4115_profile *p,
@@ -578,7 +582,8 @@ rte_meter_trtcm_color_aware_check(struct rte_meter_trtcm *m,
return RTE_COLOR_GREEN;
}
-static inline enum rte_color __rte_experimental
+__rte_experimental
+static inline enum rte_color
rte_meter_trtcm_rfc4115_color_blind_check(
struct rte_meter_trtcm_rfc4115 *m,
struct rte_meter_trtcm_rfc4115_profile *p,
@@ -621,7 +626,8 @@ rte_meter_trtcm_rfc4115_color_blind_check(
return RTE_COLOR_RED;
}
-static inline enum rte_color __rte_experimental
+__rte_experimental
+static inline enum rte_color
rte_meter_trtcm_rfc4115_color_aware_check(
struct rte_meter_trtcm_rfc4115 *m,
struct rte_meter_trtcm_rfc4115_profile *p,