Some minor comments style may need adjust.

With above fixed,
Acked-by: Chengwen Feng <fengcheng...@huawei.com>

On 2024/2/15 14:21, Tyler Retzlaff wrote:
> Provide a macro that allows conditional expansion of RTE_MARKER fields
> to empty to allow rte_mbuf to be used with MSVC. It is proposed that
> we announce the fields to be __rte_deprecated (currently disabled).
> 
> Introduce C11 anonymous unions to permit aliasing of well-known
> offsets by name into the rte_mbuf structure by a *new* name and to
> provide padding for cache alignment.
> 
> Signed-off-by: Tyler Retzlaff <roret...@linux.microsoft.com>
> ---

...

>  
> -     /* remaining bytes are set on RX when pulling packet from descriptor */
> -     RTE_MARKER rx_descriptor_fields1;
> +                     uint64_t ol_flags;        /**< Offload features. */
>  
> -     /*
> -      * The packet type, which is the combination of outer/inner L2, L3, L4
> -      * and tunnel types. The packet_type is about data really present in the
> -      * mbuf. Example: if vlan stripping is enabled, a received vlan packet
> -      * would have RTE_PTYPE_L2_ETHER and not RTE_PTYPE_L2_VLAN because the
> -      * vlan is stripped from the data.
> -      */
> -     union {
> -             uint32_t packet_type; /**< L2/L3/L4 and tunnel information. */
> -             __extension__
> -             struct {
> -                     uint8_t l2_type:4;   /**< (Outer) L2 type. */
> -                     uint8_t l3_type:4;   /**< (Outer) L3 type. */
> -                     uint8_t l4_type:4;   /**< (Outer) L4 type. */
> -                     uint8_t tun_type:4;  /**< Tunnel type. */
> +                     /* remaining bytes are set on RX when pulling packet 
> from descriptor */
> +                     __rte_marker(RTE_MARKER, rx_descriptor_fields1);
>                       union {
> -                             uint8_t inner_esp_next_proto;
> -                             /**< ESP next protocol type, valid if
> -                              * RTE_PTYPE_TUNNEL_ESP tunnel type is set
> -                              * on both Tx and Rx.
> -                              */
> +                             char mbuf_rx_descriptor_fields1[8];
>                               __extension__
>                               struct {
> -                                     uint8_t inner_l2_type:4;
> -                                     /**< Inner L2 type. */
> -                                     uint8_t inner_l3_type:4;
> -                                     /**< Inner L3 type. */
> +                                     /*
> +                                      * The packet type, which is the 
> combination of outer/inner
> +                                      * L2, L3, L4 and tunnel types. The 
> packet_type is about
> +                                      * data really present in the mbuf. 
> Example: if vlan
> +                                      * stripping is enabled, a received 
> vlan packet would have
> +                                      * RTE_PTYPE_L2_ETHER and not 
> RTE_PTYPE_L2_VLAN because the
> +                                      * vlan is stripped from the data.
> +                                      */
> +                                     union {
> +                                             uint32_t packet_type;
> +                                             /**< L2/L3/L4 and tunnel 
> information. */

According dpdk doxygen guidelines [1], prefer prefix comment in above case.

[1] 
https://doc.dpdk.org/guides/contributing/documentation.html#doxygen-guidelines

> +                                             __extension__
> +                                             struct {
> +                                                     uint8_t l2_type:4;
> +                                                     /**< (Outer) L2 type. */
> +                                                     uint8_t l3_type:4;
> +                                                     /**< (Outer) L3 type. */
> +                                                     uint8_t l4_type:4;
> +                                                     /**< (Outer) L4 type. */
> +                                                     uint8_t tun_type:4;
> +                                                     /**< Tunnel type. */
> +                                                     union {
> +                                                             uint8_t 
> inner_esp_next_proto;
> +                                                             /**< ESP next 
> protocol type, valid
> +                                                              * if 
> RTE_PTYPE_TUNNEL_ESP tunnel
> +                                                              * type is set 
> on both Tx and Rx.
> +                                                              */
> +                                                             __extension__
> +                                                             struct {
> +                                                                     uint8_t 
> inner_l2_type:4;
> +                                                                     /**< 
> Inner L2 type. */
> +                                                                     uint8_t 
> inner_l3_type:4;
> +                                                                     /**< 
> Inner L3 type. */
> +                                                             };
> +                                                     };
> +                                                     uint8_t inner_l4_type:4;
> +                                                     /**< Inner L4 type. */
> +                                             };
> +                                     };
> +                                     uint32_t pkt_len;
> +                                     /**< Total pkt len: sum of all 
> segments. */

The above should also use prefix comment type.

>                               };
>                       };
> -                     uint8_t inner_l4_type:4; /**< Inner L4 type. */
> -             };
> -     };
>  

...

Reply via email to