[dpdk-dev] [PATCH 1/6] ethdev: add a function to look up Rx offload names

Andrew Rybchenko arybchenko at solarflare.com
Thu Jan 18 08:52:30 CET 2018


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.malov at 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.


More information about the dev mailing list