On 9/24/2019 1:56 PM, Andrew Rybchenko wrote: > m> > References: <1568031190-16510-1-git-send-email-arybche...@solarflare.co > m> > > It is the fourth patch series to get rid of void returning functions > in ethdev in accordance with deprecation notice [1]. > > It should be applied on top of [2], [3] and [4] which are already > accepted in dpdk-next-net. > > Functions which return void are bad since they do not provide explicit > information to the caller if everything is OK or not. > It is especially painful in the case of all-multicast mode since it is > not always supported, there are real cases when it fails to apply and > it affects traffic which is received by the port. > > Driver maintainrs are encouraged to review the patch which changes > driver callbacks prototype. Changes are not always trivial when I tried > to provide real status of the operation. I used -EAGAIN when I failed > to choose better error code. > > The following two drivers ignore status of internal functions and > definitely could be improved: > > net/bnx2x: bnx2x_set_rx_mode() can report failure, but it is used in > other places and should be updated carefully. > > net/igbvf: e1000_promisc_set_vf() provides return status, but it is > unclear how handle it properly. > > [1] https://patches.dpdk.org/patch/56969/ > [2] https://patches.dpdk.org/project/dpdk/list/?series=6391 > [3] https://patches.dpdk.org/project/dpdk/list/?series=6407 > [4] https://patches.dpdk.org/project/dpdk/list/?series=6308 > > v2: > - add documentation for enable/disable callbacks > - apply eth_err() to callback return status in > rte_eth_dev_config_restore() > - do not check callback vs NULL if settings match > - reword logs in net/failsafe in accordance with review notes > - use -E_RTE_SECONDARY in net/enic as requested in review notes > - add acks > - rebase > > Andrew Rybchenko (1): > ethdev: do nothing if all-multicast mode is applied again > > Ivan Ilchenko (6): > ethdev: change allmulticast mode API to return errors > net/failsafe: check code of allmulticast mode switch > net/bonding: check code of allmulticast mode switch > ethdev: change allmulticast callbacks to return status > app/testpmd: check code of allmulticast mode switch > examples/ipv4_multicast: check allmulticast enable status
Series applied to dpdk-next-net/master, thanks.