18/01/2018 08:52, Andrew Rybchenko:
> On 01/18/2018 10:16 AM, Andrew Rybchenko wrote:
> > On 01/17/2018 08:33 PM, Thomas Monjalon wrote:
> >> Hi, 2 comments below
> >>
> >> 11/01/2018 09:12, Andrew Rybchenko:
> >>> From: Ivan Malov <ivan.ma...@oktetlabs.ru>
> >>>
> >>> +#define    RTE_RX_OFFLOAD_BIT2STR(_name)    \
> >>> +    { DEV_RX_OFFLOAD_##_name, #_name }
> >>> +
> >>> +static const struct {
> >>> +    uint64_t offload;
> >>> +    const char *name;
> >>> +} rte_rx_offload_names[] = {
> >>> +    RTE_RX_OFFLOAD_BIT2STR(VLAN_STRIP),
> >>> +    RTE_RX_OFFLOAD_BIT2STR(IPV4_CKSUM),
> >>> +    RTE_RX_OFFLOAD_BIT2STR(UDP_CKSUM),
> >>> +    RTE_RX_OFFLOAD_BIT2STR(TCP_CKSUM),
> >>> +    RTE_RX_OFFLOAD_BIT2STR(TCP_LRO),
> >>> +    RTE_RX_OFFLOAD_BIT2STR(QINQ_STRIP),
> >>> +    RTE_RX_OFFLOAD_BIT2STR(OUTER_IPV4_CKSUM),
> >>> +    RTE_RX_OFFLOAD_BIT2STR(MACSEC_STRIP),
> >>> +    RTE_RX_OFFLOAD_BIT2STR(HEADER_SPLIT),
> >>> +    RTE_RX_OFFLOAD_BIT2STR(VLAN_FILTER),
> >>> +    RTE_RX_OFFLOAD_BIT2STR(VLAN_EXTEND),
> >>> +    RTE_RX_OFFLOAD_BIT2STR(JUMBO_FRAME),
> >>> +    RTE_RX_OFFLOAD_BIT2STR(CRC_STRIP),
> >>> +    RTE_RX_OFFLOAD_BIT2STR(SCATTER),
> >>> +    RTE_RX_OFFLOAD_BIT2STR(TIMESTAMP),
> >>> +    RTE_RX_OFFLOAD_BIT2STR(SECURITY),
> >>> +};
> >>> +
> >>> +#undef RTE_RX_OFFLOAD_BIT2STR
> >> Why this undef?
> >
> > It is a constant-local macro with assumption to be used as
> 
> I mean context-local, sorry.
> 
> > initializer of the corresponding structure. So, under is just to
> > limit its context and be sure that it is will not clash or be reused
> > most likely in a wrong way.

We do not take this precaution usually in DPDK.
No strong opinion however.

Reply via email to