[dpdk-dev] [PATCH v2] eal: fix libabi macro for device generalization patches
Shreyansh Jain
shreyansh.jain at nxp.com
Wed Oct 26 15:12:46 CEST 2016
On Wednesday 26 October 2016 06:30 PM, Shreyansh Jain wrote:
> rte_device/driver generalization patches [1] were merged without a change
> in the LIBABIVER macro. This patches bumps the macro of affected libs.
>
> Also, deprecation notice from 16.07 has been removed and release notes for
> 16.11 added.
>
> Signed-off-by: Shreyansh Jain <shreyansh.jain at nxp.com>
> --
> v2:
> - Mark bumped libraries in release_16_11.rst file
> - change code symbol names from text to code layout
>
> ---
> doc/guides/rel_notes/deprecation.rst | 12 ------------
> doc/guides/rel_notes/release_16_11.rst | 21 +++++++++++++++++++--
> lib/librte_cryptodev/Makefile | 2 +-
> lib/librte_eal/bsdapp/eal/Makefile | 2 +-
> lib/librte_eal/linuxapp/eal/Makefile | 2 +-
> lib/librte_ether/Makefile | 2 +-
> 6 files changed, 23 insertions(+), 18 deletions(-)
>
> diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
> index d5c1490..884a231 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -18,18 +18,6 @@ Deprecation Notices
> ``nb_seg_max`` and ``nb_mtu_seg_max`` providing information about number of
> segments limit to be transmitted by device for TSO/non-TSO packets.
>
> -* The ethdev hotplug API is going to be moved to EAL with a notification
> - mechanism added to crypto and ethdev libraries so that hotplug is now
> - available to both of them. This API will be stripped of the device arguments
> - so that it only cares about hotplugging.
> -
> -* Structures embodying pci and vdev devices are going to be reworked to
> - integrate new common rte_device / rte_driver objects (see
> - http://dpdk.org/ml/archives/dev/2016-January/031390.html).
> - ethdev and crypto libraries will then only handle those objects so that they
> - do not need to care about the kind of devices that are being used, making it
> - easier to add new buses later.
> -
> * ABI changes are planned for 16.11 in the ``rte_mbuf`` structure: some fields
> may be reordered to facilitate the writing of ``data_off``, ``refcnt``, and
> ``nb_segs`` in one operation, because some platforms have an overhead if the
> diff --git a/doc/guides/rel_notes/release_16_11.rst b/doc/guides/rel_notes/release_16_11.rst
> index 26cdd62..2d5636c 100644
> --- a/doc/guides/rel_notes/release_16_11.rst
> +++ b/doc/guides/rel_notes/release_16_11.rst
> @@ -149,6 +149,23 @@ Resolved Issues
> EAL
> ~~~
>
> +* **Improved device/driver heirarchy and generalized hotplugging**
> +
> + 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
> + * 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
> + * helpers and support macros have been renamed to make them more synonymous
> + with their device types
> + (e.g. ``PMD_REGISTER_DRIVER`` => ``DRIVER_REGISTER_PCI``)
> +
>
> Drivers
> ~~~~~~~
> @@ -232,11 +249,11 @@ The libraries prepended with a plus sign were incremented in this version.
>
> .. code-block:: diff
>
> - libethdev.so.4
> + + libethdev.so.4
Just noticed:
Should the '4' here reflect the current LIBABIVER number?
If so, I will send this patch again.
> librte_acl.so.2
> librte_cfgfile.so.2
> librte_cmdline.so.2
> - librte_cryptodev.so.1
> + + librte_cryptodev.so.1
> librte_distributor.so.1
> + librte_eal.so.3
> librte_hash.so.2
> diff --git a/lib/librte_cryptodev/Makefile b/lib/librte_cryptodev/Makefile
> index 314a046..aebf5d9 100644
> --- a/lib/librte_cryptodev/Makefile
> +++ b/lib/librte_cryptodev/Makefile
> @@ -34,7 +34,7 @@ include $(RTE_SDK)/mk/rte.vars.mk
> LIB = librte_cryptodev.a
>
> # library version
> -LIBABIVER := 1
> +LIBABIVER := 2
>
> # build flags
> CFLAGS += -O3
> diff --git a/lib/librte_eal/bsdapp/eal/Makefile b/lib/librte_eal/bsdapp/eal/Makefile
> index a15b762..122798c 100644
> --- a/lib/librte_eal/bsdapp/eal/Makefile
> +++ b/lib/librte_eal/bsdapp/eal/Makefile
> @@ -48,7 +48,7 @@ LDLIBS += -lgcc_s
>
> EXPORT_MAP := rte_eal_version.map
>
> -LIBABIVER := 3
> +LIBABIVER := 4
>
> # specific to bsdapp exec-env
> SRCS-$(CONFIG_RTE_EXEC_ENV_BSDAPP) := eal.c
> diff --git a/lib/librte_eal/linuxapp/eal/Makefile b/lib/librte_eal/linuxapp/eal/Makefile
> index 4e206f0..4ad7c85 100644
> --- a/lib/librte_eal/linuxapp/eal/Makefile
> +++ b/lib/librte_eal/linuxapp/eal/Makefile
> @@ -37,7 +37,7 @@ ARCH_DIR ?= $(RTE_ARCH)
> EXPORT_MAP := rte_eal_version.map
> VPATH += $(RTE_SDK)/lib/librte_eal/common/arch/$(ARCH_DIR)
>
> -LIBABIVER := 3
> +LIBABIVER := 4
>
> VPATH += $(RTE_SDK)/lib/librte_eal/common
>
> diff --git a/lib/librte_ether/Makefile b/lib/librte_ether/Makefile
> index 488b7c8..bc2e5f6 100644
> --- a/lib/librte_ether/Makefile
> +++ b/lib/librte_ether/Makefile
> @@ -41,7 +41,7 @@ CFLAGS += $(WERROR_FLAGS)
>
> EXPORT_MAP := rte_ether_version.map
>
> -LIBABIVER := 4
> +LIBABIVER := 5
>
> SRCS-y += rte_ethdev.c
>
>
Sorry for repeated versions.
-
Shreyansh
More information about the dev
mailing list