[dpdk-dev] [PATCH v3] eal: fix libabi macro for device generalization patches

Shreyansh Jain shreyansh.jain at nxp.com
Thu Oct 27 13:10:31 CEST 2016


Hello Thomas,

On Thursday 27 October 2016 03:45 PM, Thomas Monjalon wrote:
> 2016-10-27 12:38, Shreyansh Jain:
>> rte_device/driver generalization patches [1] were merged without a change
>> in the LIBABIVER macro. This patches bumps the macro of affected libs.
>
> It is not a macro but a Makefile variable.

Yes, I will change that.

>
>> (librte_eal was already bumped; libcryptodev and libetherdev have been
>> bumped).
>
> Please provide the commit id where EAL was bumped.

Ok. Will do.

>
>> Details of ABI/API changes:
>> - EAL (version not bumped)
>
> not bumped -> already bumped

Ok.

>
>>   |- type field was removed from rte_driver
>>   |- rte_pci_device now embeds rte_device
>>   |- rte_pci_resource renamed to rte_mem_resource
>>   |- numa_node and devargs of rte_pci_driver is moved to rte_driver
>>   |- APIs for device hotplug (attach/detach) moved into EAL
>>   |- API rte_eal_pci_device_name added for PCI device naming
>>   |- vdev registration API introduced (rte_eal_vdrv_register,
>>   |  rte_eal_vdrv_unregister
>>
>> - librte_crypto (v 1=>2)
>>   |- removed rte_cryptodev_create_unique_device_name API
>>   |- moved device naming to EAL
>>
>> - librte_ethdev (v 4=>5)
>>   |- rte_eth_dev_type is removed
>>   |- removed dev_type from rte_eth_dev_allocate API
>>   |- removed API rte_eth_dev_get_device_type
>>   |- removed API rte_eth_dev_get_addr_by_port
>>   |- removed API rte_eth_dev_get_port_by_addr
>>   |- removed rte_cryptodev_create_unique_device_name API
>>   |- moved device naming to EAL
>>
>> Also, deprecation notice from 16.07 has been removed and release notes for
>> 16.11 added.
>>
>> [1] http://dpdk.org/ml/archives/dev/2016-September/047087.html
>>
>> Signed-off-by: Shreyansh Jain <shreyansh.jain at nxp.com>
> [...]
>> --- a/doc/guides/rel_notes/release_16_11.rst
>> +++ b/doc/guides/rel_notes/release_16_11.rst
>> @@ -149,6 +149,32 @@ Resolved Issues
>
> It is the "Resolved Issues" section.
> Please move in the "API Changes" section.

Ok.

>
>>  EAL
>>  ~~~
>>
>> +* **Improved device/driver heirarchy and generalized hotplugging**
>
> typo: hierarchy

Yes.

>
>> +  Device and driver relationship has been restructured by introducing generic
>> +  classes. This paves way for having PCI, VDEV and other device types as
>> +  just instantiated objects rather than classes in themselves. Hotplugging too
>> +  has been generalized into EAL so that ethernet or crypto devices can use the
>> +  common infrastructure.
>> +
>> +  * removed ``pmd_type`` as way of segragation of devices
>> +  * moved ``numa_node`` and ``devargs`` into ``rte_driver`` from
>> +    ``rte_pci_driver``. These can now be used by any instantiated object of
>> +    ``rte_driver``.
>> +  * added ``rte_device`` class and all PCI and VDEV devices inherit from it
>> +  * renamed devinit/devuninit handlers to probe/remove to make it more
>> +    semantically correct with respect to device<=>driver relationship
>> +  * moved hotplugging support to EAL. Hereafter, PCI and vdev can use the
>> +    APIs ``rte_eal_dev_attach`` and ``rte_eal_dev_detach``.
>> +  * helpers and support macros have been renamed to make them more synonymous
>> +    with their device types
>> +    (e.g. ``PMD_REGISTER_DRIVER`` => ``DRIVER_REGISTER_PCI``)
>
> It is RTE_PMD_REGISTER_PCI

It seems my Friday is earlier than usual :(
I was the one who changed it and I completely forgot about it.

>
>> +  * Device naming functions have been generalized from ethdev and cryptodev
>> +    to EAL. ``rte_eal_pci_device_name`` has been introduced for obtaining
>> +    unique device name from PCI Domain-BDF description.
>> +  * Virtual device registration APIs have been added: ``rte_eal_vdrv_register``
>> +    and ``rte_eal_vdrv_unregister``.
>
> Thanks
>

I am sending v4 soon.

-
Shreyansh


More information about the dev mailing list