[dpdk-dev] [PATCH v6] ethdev: add sanity checks in control APIs
Min Hu (Connor)
humin29 at huawei.com
Fri Apr 16 13:00:54 CEST 2021
Hi, Kevin and all
fixed in v7, thanks.
在 2021/4/16 18:22, Kevin Traynor 写道:
> On 16/04/2021 07:52, Min Hu (Connor) wrote:
>> This patch adds more sanity checks in control path APIs.
>>
>> Fixes: 214ed1acd125 ("ethdev: add iterator to match devargs input")
>> Fixes: 3d98f921fbe9 ("ethdev: unify prefix for static functions and variables")
>> Fixes: 0366137722a0 ("ethdev: check for invalid device name")
>> Fixes: d948f596fee2 ("ethdev: fix port data mismatched in multiple process model")
>> Fixes: 5b7ba31148a8 ("ethdev: add port ownership")
>> Fixes: f8244c6399d9 ("ethdev: increase port id range")
>> Cc: stable at dpdk.org
>>
>> Signed-off-by: Min Hu (Connor) <humin29 at huawei.com>
>> Reviewed-by: Andrew Rybchenko <andrew.rybchenko at oktetlabs.ru>
>
> <snip>
>
>> @@ -1298,9 +1342,15 @@ rte_eth_dev_configure(uint16_t port_id, uint16_t nb_rx_q, uint16_t nb_tx_q,
>> uint16_t old_mtu;
>>
>> RTE_ETH_VALID_PORTID_OR_ERR_RET(port_id, -ENODEV);
>> -
>> dev = &rte_eth_devices[port_id];
>>
>> + if (dev_conf == NULL) {
>> + RTE_ETHDEV_LOG(ERR,
>> + "Cannot configure ethdev port %u to NULL dev_conf\n",
>
> The others use a natural sounding names instead of argument name. If you
> wanted to match that it could be "..to NULL conf"
>
>> + port_id);
>> + return -EINVAL;
>> + }
>> +
>> RTE_FUNC_PTR_OR_ERR_RET(*dev->dev_ops->dev_configure, -ENOTSUP);
>>
>> if (dev->data->dev_started) {
>
> <snip>
>
>> @@ -2609,6 +2680,13 @@ rte_eth_link_get(uint16_t port_id, struct rte_eth_link *eth_link)
>> RTE_ETH_VALID_PORTID_OR_ERR_RET(port_id, -ENODEV);
>> dev = &rte_eth_devices[port_id];
>>
>> + if (eth_link == NULL) {
>> + RTE_ETHDEV_LOG(ERR,
>> + "Cannot get ethdev port %u link for NULL eth_link\n",
>
> ^^^
>
>> + port_id);
>> + return -EINVAL;
>> + }
>> +
>> if (dev->data->dev_conf.intr_conf.lsc &&
>> dev->data->dev_started)
>> rte_eth_linkstatus_get(dev, eth_link);
>> @@ -2629,6 +2707,13 @@ rte_eth_link_get_nowait(uint16_t port_id, struct rte_eth_link *eth_link)
>> RTE_ETH_VALID_PORTID_OR_ERR_RET(port_id, -ENODEV);
>> dev = &rte_eth_devices[port_id];
>>
>> + if (eth_link == NULL) {
>> + RTE_ETHDEV_LOG(ERR,
>> + "Cannot get nowait ethdev port %u for NULL link\n",
>
> ^^^
> I would probably stick with "link" for both these functions, rather than
> argument name "eth_link" in one "link" in other.
>
>> + port_id);
>> + return -EINVAL;
>> + }
>> +
>> if (dev->data->dev_conf.intr_conf.lsc &&
>> dev->data->dev_started)
>> rte_eth_linkstatus_get(dev, eth_link);
>
> Thanks Connor. There are only minor nits, so
> Acked-by: Kevin Traynor <ktraynor at redhat.com>
>
> .
>
More information about the dev
mailing list