eal: simplify meson build of common directory
[dpdk.git] / lib / librte_eal / common / include / rte_fbarray.h
index 980b496..6dccdbe 100644 (file)
@@ -34,7 +34,6 @@
 extern "C" {
 #endif
 
-#include <stdbool.h>
 #include <stdio.h>
 
 #include <rte_compat.h>
@@ -75,7 +74,8 @@ struct rte_fbarray {
  *  - 0 on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_init(struct rte_fbarray *arr, const char *name, unsigned int len,
                unsigned int elt_sz);
 
@@ -97,7 +97,8 @@ rte_fbarray_init(struct rte_fbarray *arr, const char *name, unsigned int len,
  *  - 0 on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_attach(struct rte_fbarray *arr);
 
 
@@ -118,7 +119,8 @@ rte_fbarray_attach(struct rte_fbarray *arr);
  *  - 0 on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_destroy(struct rte_fbarray *arr);
 
 
@@ -136,7 +138,8 @@ rte_fbarray_destroy(struct rte_fbarray *arr);
  *  - 0 on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_detach(struct rte_fbarray *arr);
 
 
@@ -153,7 +156,8 @@ rte_fbarray_detach(struct rte_fbarray *arr);
  *  - non-NULL pointer on success.
  *  - NULL on failure, with ``rte_errno`` indicating reason for failure.
  */
-void * __rte_experimental
+__rte_experimental
+void *
 rte_fbarray_get(const struct rte_fbarray *arr, unsigned int idx);
 
 
@@ -170,7 +174,8 @@ rte_fbarray_get(const struct rte_fbarray *arr, unsigned int idx);
  *  - non-negative integer on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_find_idx(const struct rte_fbarray *arr, const void *elt);
 
 
@@ -187,7 +192,8 @@ rte_fbarray_find_idx(const struct rte_fbarray *arr, const void *elt);
  *  - 0 on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_set_used(struct rte_fbarray *arr, unsigned int idx);
 
 
@@ -204,7 +210,8 @@ rte_fbarray_set_used(struct rte_fbarray *arr, unsigned int idx);
  *  - 0 on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_set_free(struct rte_fbarray *arr, unsigned int idx);
 
 
@@ -222,7 +229,8 @@ rte_fbarray_set_free(struct rte_fbarray *arr, unsigned int idx);
  *  - 0 if element is unused.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_is_used(struct rte_fbarray *arr, unsigned int idx);
 
 
@@ -239,7 +247,8 @@ rte_fbarray_is_used(struct rte_fbarray *arr, unsigned int idx);
  *  - non-negative integer on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_find_next_free(struct rte_fbarray *arr, unsigned int start);
 
 
@@ -256,7 +265,8 @@ rte_fbarray_find_next_free(struct rte_fbarray *arr, unsigned int start);
  *  - non-negative integer on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_find_next_used(struct rte_fbarray *arr, unsigned int start);
 
 
@@ -276,7 +286,8 @@ rte_fbarray_find_next_used(struct rte_fbarray *arr, unsigned int start);
  *  - non-negative integer on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_find_next_n_free(struct rte_fbarray *arr, unsigned int start,
                unsigned int n);
 
@@ -297,7 +308,8 @@ rte_fbarray_find_next_n_free(struct rte_fbarray *arr, unsigned int start,
  *  - non-negative integer on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_find_next_n_used(struct rte_fbarray *arr, unsigned int start,
                unsigned int n);
 
@@ -315,7 +327,8 @@ rte_fbarray_find_next_n_used(struct rte_fbarray *arr, unsigned int start,
  *  - non-negative integer on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_find_contig_free(struct rte_fbarray *arr,
                unsigned int start);
 
@@ -333,7 +346,8 @@ rte_fbarray_find_contig_free(struct rte_fbarray *arr,
  *  - non-negative integer on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_find_contig_used(struct rte_fbarray *arr, unsigned int start);
 
 /**
@@ -349,7 +363,8 @@ rte_fbarray_find_contig_used(struct rte_fbarray *arr, unsigned int start);
  *  - non-negative integer on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_find_prev_free(struct rte_fbarray *arr, unsigned int start);
 
 
@@ -366,7 +381,8 @@ rte_fbarray_find_prev_free(struct rte_fbarray *arr, unsigned int start);
  *  - non-negative integer on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_find_prev_used(struct rte_fbarray *arr, unsigned int start);
 
 
@@ -387,7 +403,8 @@ rte_fbarray_find_prev_used(struct rte_fbarray *arr, unsigned int start);
  *  - non-negative integer on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_find_prev_n_free(struct rte_fbarray *arr, unsigned int start,
                unsigned int n);
 
@@ -409,11 +426,124 @@ rte_fbarray_find_prev_n_free(struct rte_fbarray *arr, unsigned int start,
  *  - non-negative integer on success.
  *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
  */
-int __rte_experimental
+__rte_experimental
+int
 rte_fbarray_find_prev_n_used(struct rte_fbarray *arr, unsigned int start,
                unsigned int n);
 
 
+/**
+ * Find how many more free entries there are before specified index (like
+ * ``rte_fbarray_find_contig_free`` but going in reverse).
+ *
+ * @param arr
+ *   Valid pointer to allocated and correctly set up ``rte_fbarray`` structure.
+ *
+ * @param start
+ *   Element index to start search from.
+ *
+ * @return
+ *  - non-negative integer on success.
+ *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
+ */
+__rte_experimental
+int
+rte_fbarray_find_rev_contig_free(struct rte_fbarray *arr,
+               unsigned int start);
+
+
+/**
+ * Find how many more used entries there are before specified index (like
+ * ``rte_fbarray_find_contig_used`` but going in reverse).
+ *
+ * @param arr
+ *   Valid pointer to allocated and correctly set up ``rte_fbarray`` structure.
+ *
+ * @param start
+ *   Element index to start search from.
+ *
+ * @return
+ *  - non-negative integer on success.
+ *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
+ */
+__rte_experimental
+int
+rte_fbarray_find_rev_contig_used(struct rte_fbarray *arr, unsigned int start);
+
+
+/**
+ * Find index of biggest chunk of free elements, starting at specified index.
+ *
+ * @param arr
+ *   Valid pointer to allocated and correctly set up ``rte_fbarray`` structure.
+ *
+ * @param start
+ *   Element index to start search from.
+ *
+ * @return
+ *  - non-negative integer on success.
+ *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
+ */
+__rte_experimental
+int
+rte_fbarray_find_biggest_free(struct rte_fbarray *arr, unsigned int start);
+
+
+/**
+ * Find index of biggest chunk of used elements, starting at specified index.
+ *
+ * @param arr
+ *   Valid pointer to allocated and correctly set up ``rte_fbarray`` structure.
+ *
+ * @param start
+ *   Element index to start search from.
+ *
+ * @return
+ *  - non-negative integer on success.
+ *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
+ */
+__rte_experimental
+int
+rte_fbarray_find_biggest_used(struct rte_fbarray *arr, unsigned int start);
+
+
+/**
+ * Find index of biggest chunk of free elements before a specified index (like
+ * ``rte_fbarray_find_biggest_free``, but going in reverse).
+ *
+ * @param arr
+ *   Valid pointer to allocated and correctly set up ``rte_fbarray`` structure.
+ *
+ * @param start
+ *   Element index to start search from.
+ *
+ * @return
+ *  - non-negative integer on success.
+ *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
+ */
+__rte_experimental
+int
+rte_fbarray_find_rev_biggest_free(struct rte_fbarray *arr, unsigned int start);
+
+
+/**
+ * Find index of biggest chunk of used elements before a specified index (like
+ * ``rte_fbarray_find_biggest_used``, but going in reverse).
+ *
+ * @param arr
+ *   Valid pointer to allocated and correctly set up ``rte_fbarray`` structure.
+ *
+ * @param start
+ *   Element index to start search from.
+ *
+ * @return
+ *  - non-negative integer on success.
+ *  - -1 on failure, with ``rte_errno`` indicating reason for failure.
+ */
+__rte_experimental
+int
+rte_fbarray_find_rev_biggest_used(struct rte_fbarray *arr, unsigned int start);
+
 
 /**
  * Dump ``rte_fbarray`` metadata.
@@ -424,7 +554,8 @@ rte_fbarray_find_prev_n_used(struct rte_fbarray *arr, unsigned int start,
  * @param f
  *   File object to dump information into.
  */
-void __rte_experimental
+__rte_experimental
+void
 rte_fbarray_dump_metadata(struct rte_fbarray *arr, FILE *f);
 
 #ifdef __cplusplus