[dpdk-dev] Remaining old offloading API usage in PMDs

Ferruh Yigit ferruh.yigit at intel.com
Tue May 22 16:12:16 CEST 2018


On 5/11/2018 11:45 AM, Ferruh Yigit wrote:
> Some PMDs are still using old offloading API related variables, thanks to Andrew
> for reporting it.
> 
> Maintainers of related PMDs are cc'ed.
> Please check following list and provide a fix ASAP for it, thanks.
> 
> 
> # git grep header_split drivers/
> drivers/net/i40e/i40e_rxtx_vec_common.h:        if (rxmode->header_split == 1)
> 
> # git grep hw_vlan_filter drivers/
> drivers/net/i40e/i40e_vf_representor.c:         if
> (ethdev->data->dev_conf.rxmode.hw_vlan_filter)
> drivers/net/vhost/rte_eth_vhost.c:      if (rxmode->hw_vlan_filter)
> 
> # git grep hw_vlan_strip drivers/
> drivers/net/dpaa2/dpaa2_rxtx.c:         if
> (dev->data->dev_conf.rxmode.hw_vlan_strip)
> drivers/net/i40e/i40e_vf_representor.c:         if
> (ethdev->data->dev_conf.rxmode.hw_vlan_strip)T
> drivers/net/vhost/rte_eth_vhost.c:      internal->vlan_strip =
> rxmode->hw_vlan_strip;
> 
> # git grep hw_vlan_extend drivers/
> drivers/net/i40e/i40e_rxtx_vec_common.h:        if (rxmode->hw_vlan_extend == 1)
> 
> # git grep hw_strip_crc drivers/
> drivers/net/nfp/nfp_net.c:      rxq->crc_len = (uint8_t)
> ((dev->data->dev_conf.rxmode.hw_strip_crc) ? 0
> drivers/net/sfc/sfc_rx.c:               rxmode->hw_strip_crc = 1;
> 


Code (almost [1]) cleaned up from old API usage, thanks everybody.

But driver documentation still has some pointers from old API usage, Andrew also
reported some.

Related maintainers are cc'ed, can you please check and fix following usages:

doc/guides/prog_guide/poll_mode_drv.rst
331:For an application to use the Tx offloads API it should set the
``ETH_TXQ_FLAGS_IGNORE`` flag in the ``txq_flags`` field located in
``rte_eth_txconf`` struct.
332:In such cases it is not required to set other flags in ``txq_flags``.

doc/guides/nics/virtio.rst
237:*   ``txq_flags`` is set to ``VIRTIO_SIMPLE_FLAGS`` (0xF01), which implies:

doc/guides/nics/ixgbe.rst
105:TX vPMD only works when txq_flags is set to IXGBE_SIMPLE_FLAGS.
110:*   ETH_TXQ_FLAGS_NOMULTSEGS
112:*   ETH_TXQ_FLAGS_NOVLANOFFL
114:*   ETH_TXQ_FLAGS_NOXSUMSCTP
116:*   ETH_TXQ_FLAGS_NOXSUMUDP
118:*   ETH_TXQ_FLAGS_NOXSUMTCP

doc/guides/nics/fm10k.rst
109:TX vPMD only works when ``txq_flags`` is set to ``FM10K_SIMPLE_TX_FLAG``.
113:*   ``ETH_TXQ_FLAGS_NOMULTSEGS``
115:*   ``ETH_TXQ_FLAGS_NOVLANOFFL``
117:*   ``ETH_TXQ_FLAGS_NOXSUMSCTP``
119:*   ``ETH_TXQ_FLAGS_NOXSUMUDP``
121:*   ``ETH_TXQ_FLAGS_NOXSUMTCP``



doc/guides/nics/thunderx.rst
323:``rxmode.hw_strip_crc`` member is set to 0 in ``struct rte_eth_conf``.
329:is fixed and cannot be changed. So, even when the ``rxmode.max_rx_pkt_len``

doc/guides/nics/ixgbe.rst
71:To guarantee the constraint, configuration flags in dev_conf.rxmode will be
checked:
133:In the configuration, ensure that port_conf.rxmode.hw_ip_checksum=0.
139:As in the case of l3fwd, set configure port_conf.rxmode.hw_ip_checksum=0 to
enable vPMD.

doc/guides/nics/fm10k.rst
82:To guarantee the constraint, the following configuration flags in
``dev_conf.rxmode``
153:``rxmode.hw_strip_crc`` member is set to 0 in ``struct rte_eth_conf``.
160:is fixed and cannot be changed. So, even when the ``rxmode.max_rx_pkt_len``

doc/guides/nics/octeontx.rst
169:``rxmode.hw_strip_crc`` member is set to 0 in ``struct rte_eth_conf``.
175:is fixed and cannot be changed. So, even when the ``rxmode.max_rx_pkt_len``

doc/guides/nics/liquidio.rst
205:interface. So, CRC will be stripped even when the ``rxmode.hw_strip_crc``


[1]
Waiting nfp.


More information about the dev mailing list