lib: work around unnamed structs/unions
[dpdk.git] / lib / librte_mbuf / rte_mbuf.h
index 101485f..23b7bf8 100644 (file)
@@ -756,8 +756,11 @@ const char *rte_get_tx_ol_flag_name(uint64_t mask);
 
 /* define a set of marker types that can be used to refer to set points in the
  * mbuf */
+__extension__
 typedef void    *MARKER[0];   /**< generic marker for a point in a structure */
+__extension__
 typedef uint8_t  MARKER8[0];  /**< generic marker with 1B alignment */
+__extension__
 typedef uint64_t MARKER64[0]; /**< marker that allows us to overwrite 8 bytes
                                * with a single assignment */
 
@@ -784,6 +787,7 @@ struct rte_mbuf {
         * or non-atomic) is controlled by the CONFIG_RTE_MBUF_REFCNT_ATOMIC
         * config option.
         */
+       RTE_STD_C11
        union {
                rte_atomic16_t refcnt_atomic; /**< Atomically accessed refcnt */
                uint16_t refcnt;              /**< Non-atomically accessed refcnt */
@@ -803,6 +807,7 @@ struct rte_mbuf {
         * would have RTE_PTYPE_L2_ETHER and not RTE_PTYPE_L2_VLAN because the
         * vlan is stripped from the data.
         */
+       RTE_STD_C11
        union {
                uint32_t packet_type; /**< L2/L3/L4 and tunnel information. */
                struct {
@@ -824,6 +829,7 @@ struct rte_mbuf {
        union {
                uint32_t rss;     /**< RSS hash result if RSS enabled */
                struct {
+                       RTE_STD_C11
                        union {
                                struct {
                                        uint16_t hash;
@@ -851,6 +857,7 @@ struct rte_mbuf {
        /* second cache line - fields only used in slow path or on TX */
        MARKER cacheline1 __rte_cache_min_aligned;
 
+       RTE_STD_C11
        union {
                void *userdata;   /**< Can be used for external metadata */
                uint64_t udata64; /**< Allow 8-byte userdata on 32-bit */
@@ -860,8 +867,10 @@ struct rte_mbuf {
        struct rte_mbuf *next;    /**< Next segment of scattered packet. */
 
        /* fields to support TX offloads */
+       RTE_STD_C11
        union {
                uint64_t tx_offload;       /**< combined for easy fetch */
+               __extension__
                struct {
                        uint64_t l2_len:7; /**< L2 (MAC) Header Length. */
                        uint64_t l3_len:9; /**< L3 (IP) Header Length. */
@@ -1157,13 +1166,6 @@ static inline struct rte_mbuf *rte_mbuf_raw_alloc(struct rte_mempool *mp)
        return m;
 }
 
-/* compat with older versions */
-__rte_deprecated static inline struct rte_mbuf *
-__rte_mbuf_raw_alloc(struct rte_mempool *mp)
-{
-       return rte_mbuf_raw_alloc(mp);
-}
-
 /**
  * @internal Put mbuf back into its original mempool.
  * The use of that function is reserved for RTE internal needs.