[dpdk-dev] [PATCH 02/12] eal: avoid calling rte_vdev_init()
Tan, Jianfeng
jianfeng.tan at intel.com
Wed Aug 30 00:25:06 CEST 2017
Hi Gaetan,
On 8/29/2017 5:50 AM, Gaëtan Rivet wrote:
> Hi,
>
> On Fri, Aug 25, 2017 at 09:40:42AM +0000, Jianfeng Tan wrote:
>> We can call bus->plug() to avoid calling rte_vdev_init() explicitly.
>>
>> Signed-off-by: Jianfeng Tan <jianfeng.tan at intel.com>
>> ---
>> lib/librte_eal/common/eal_common_dev.c | 21 +++++----------------
>> 1 file changed, 5 insertions(+), 16 deletions(-)
>>
>> diff --git a/lib/librte_eal/common/eal_common_dev.c b/lib/librte_eal/common/eal_common_dev.c
>> index e251275..066dfbf 100644
>> --- a/lib/librte_eal/common/eal_common_dev.c
>> +++ b/lib/librte_eal/common/eal_common_dev.c
>> @@ -67,7 +67,6 @@ static int cmp_dev_name(const struct rte_device *dev, const void *_name)
>> int rte_eal_dev_attach(const char *name, const char *devargs)
>> {
>> struct rte_bus *bus;
>> - int ret;
>>
>> if (name == NULL || devargs == NULL) {
>> RTE_LOG(ERR, EAL, "Invalid device or arguments provided\n");
>> @@ -80,22 +79,12 @@ int rte_eal_dev_attach(const char *name, const char *devargs)
>> name);
>> return -EINVAL;
>> }
>> - if (strcmp(bus->name, "pci") == 0)
>> - return rte_eal_hotplug_add("pci", name, devargs);
>> - if (strcmp(bus->name, "vdev") != 0) {
>> - RTE_LOG(ERR, EAL, "Device attach is only supported for PCI and vdev devices.\n");
>> - return -ENOTSUP;
>> - }
>> + if (strcmp(bus->name, "pci") == 0 || strcmp(bus->name, "vdev") != 0)
> It seems to be a copy / paste error, it should probably be:
>
> + if (strcmp(bus->name, "pci") == 0 || strcmp(bus->name, "vdev") == 0)
Nice catch. Will fix it in next version.
>
> Now, one could question the relevancy of keeping this API
> (rte_eal_dev_attach / detach), but I guess this is beyond the scope of
> this series.
This is a valid ask. It seems a duplication of
rte_eal_hotplug_add()/rte_eal_hotplug_remove().
Thanks,
Jianfeng
>> + return rte_eal_hotplug_add(bus->name, name, devargs);
>>
>> - /*
>> - * If we haven't found a bus device the user meant to "hotplug" a
>> - * virtual device instead.
>> - */
>> - ret = rte_vdev_init(name, devargs);
>> - if (ret)
>> - RTE_LOG(ERR, EAL, "Driver cannot attach the device (%s)\n",
>> - name);
>> - return ret;
>> + RTE_LOG(ERR, EAL, "Device attach is only supported for PCI and vdev devices.\n");
>> +
>> + return -ENOTSUP;
>> }
>>
>> int rte_eal_dev_detach(struct rte_device *dev)
>> --
>> 2.7.4
>>
More information about the dev
mailing list