The type of value parameter to rte_service_attr_get should be uint64_t *, since the attributes are of type uint64_t. Fixes: 4d55194d76a4 ("service: add attribute get function") Reviewed-by: Gage Eads <gage.eads@intel.com> Signed-off-by: Nikhil Rao <nikhil.rao@intel.com> --- lib/librte_eal/common/include/rte_service.h | 2 +- lib/librte_eal/common/rte_service.c | 2 +- test/test/test_service_cores.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) For 19.02, I assume this will require the ABI change announcement. I will post it once this patch is acked. diff --git a/lib/librte_eal/common/include/rte_service.h b/lib/librte_eal/common/include/rte_service.h index 34b41af..670c89a 100644 --- a/lib/librte_eal/common/include/rte_service.h +++ b/lib/librte_eal/common/include/rte_service.h @@ -372,7 +372,7 @@ int32_t rte_service_run_iter_on_app_lcore(uint32_t id, * -EINVAL Invalid id, attr_id or attr_value was NULL. */ int32_t rte_service_attr_get(uint32_t id, uint32_t attr_id, - uint32_t *attr_value); + uint64_t *attr_value); /** * Reset all attribute values of a service. diff --git a/lib/librte_eal/common/rte_service.c b/lib/librte_eal/common/rte_service.c index 03fde97..5f75e5a 100644 --- a/lib/librte_eal/common/rte_service.c +++ b/lib/librte_eal/common/rte_service.c @@ -734,7 +734,7 @@ int32_t rte_service_run_iter_on_app_lcore(uint32_t id, } int32_t -rte_service_attr_get(uint32_t id, uint32_t attr_id, uint32_t *attr_value) +rte_service_attr_get(uint32_t id, uint32_t attr_id, uint64_t *attr_value) { struct rte_service_spec_impl *s; SERVICE_VALID_GET_OR_ERR_RET(id, s, -EINVAL); diff --git a/test/test/test_service_cores.c b/test/test/test_service_cores.c index ec31882..82bb2ce 100644 --- a/test/test/test_service_cores.c +++ b/test/test/test_service_cores.c @@ -259,7 +259,7 @@ static int32_t dummy_mt_safe_cb(void *args) rte_service_set_stats_enable(id, 1); uint32_t attr_id = UINT32_MAX; - uint32_t attr_value = 0xdead; + uint64_t attr_value = 0xdead; /* check error return values */ TEST_ASSERT_EQUAL(-EINVAL, rte_service_attr_get(id, attr_id, &attr_value), -- 1.8.3.1
> -----Original Message----- > From: Rao, Nikhil > Sent: Saturday, January 19, 2019 2:01 PM > To: Van Haaren, Harry <harry.van.haaren@intel.com> > Cc: dev@dpdk.org; Rao, Nikhil <nikhil.rao@intel.com> > Subject: [PATCH] service: fix parameter type > > The type of value parameter to rte_service_attr_get > should be uint64_t *, since the attributes > are of type uint64_t. > > Fixes: 4d55194d76a4 ("service: add attribute get function") > > Reviewed-by: Gage Eads <gage.eads@intel.com> > Signed-off-by: Nikhil Rao <nikhil.rao@intel.com> Acked-by: Harry van Haaren <harry.van.haaren@intel.com> > --- > lib/librte_eal/common/include/rte_service.h | 2 +- > lib/librte_eal/common/rte_service.c | 2 +- > test/test/test_service_cores.c | 2 +- > 3 files changed, 3 insertions(+), 3 deletions(-) > > For 19.02, I assume this will require the ABI change announcement. I will > post it once this patch is acked. Correct - this breaks API and ABI, so certainly will need an announce. Thanks for the fixup, -Harry
On 1/21/2019 11:43 AM, Van Haaren, Harry wrote: >> -----Original Message----- >> From: Rao, Nikhil >> Sent: Saturday, January 19, 2019 2:01 PM >> To: Van Haaren, Harry <harry.van.haaren@intel.com> >> Cc: dev@dpdk.org; Rao, Nikhil <nikhil.rao@intel.com> >> Subject: [PATCH] service: fix parameter type >> >> The type of value parameter to rte_service_attr_get >> should be uint64_t *, since the attributes >> are of type uint64_t. >> >> Fixes: 4d55194d76a4 ("service: add attribute get function") >> >> Reviewed-by: Gage Eads <gage.eads@intel.com> >> Signed-off-by: Nikhil Rao <nikhil.rao@intel.com> > > Acked-by: Harry van Haaren <harry.van.haaren@intel.com> > >> --- >> lib/librte_eal/common/include/rte_service.h | 2 +- >> lib/librte_eal/common/rte_service.c | 2 +- >> test/test/test_service_cores.c | 2 +- >> 3 files changed, 3 insertions(+), 3 deletions(-) >> >> For 19.02, I assume this will require the ABI change announcement. I will >> post it once this patch is acked. > > Correct - this breaks API and ABI, so certainly will need an announce. Hi Nikhil P, Can you please send a new version of this patch, that includes removing the deprecation notice too? (Keeping the ack) Thanks, ferruh > > Thanks for the fixup, -Harry >
The type of value parameter to rte_service_attr_get should be uint64_t *, since the attributes are of type uint64_t. Fixes: 4d55194d76a4 ("service: add attribute get function") Reviewed-by: Gage Eads <gage.eads@intel.com> Signed-off-by: Nikhil Rao <nikhil.rao@intel.com> Acked-by: Harry van Haaren <harry.van.haaren@intel.com> --- lib/librte_eal/common/include/rte_service.h | 2 +- lib/librte_eal/common/rte_service.c | 2 +- test/test/test_service_cores.c | 2 +- doc/guides/rel_notes/release_19_05.rst | 5 ++++- lib/librte_eal/bsdapp/eal/Makefile | 2 +- lib/librte_eal/linuxapp/eal/Makefile | 2 +- lib/librte_eal/meson.build | 2 +- 7 files changed, 10 insertions(+), 7 deletions(-) diff --git a/lib/librte_eal/common/include/rte_service.h b/lib/librte_eal/common/include/rte_service.h index 34b41af..670c89a 100644 --- a/lib/librte_eal/common/include/rte_service.h +++ b/lib/librte_eal/common/include/rte_service.h @@ -372,7 +372,7 @@ int32_t rte_service_run_iter_on_app_lcore(uint32_t id, * -EINVAL Invalid id, attr_id or attr_value was NULL. */ int32_t rte_service_attr_get(uint32_t id, uint32_t attr_id, - uint32_t *attr_value); + uint64_t *attr_value); /** * Reset all attribute values of a service. diff --git a/lib/librte_eal/common/rte_service.c b/lib/librte_eal/common/rte_service.c index 03fde97..5f75e5a 100644 --- a/lib/librte_eal/common/rte_service.c +++ b/lib/librte_eal/common/rte_service.c @@ -734,7 +734,7 @@ int32_t rte_service_run_iter_on_app_lcore(uint32_t id, } int32_t -rte_service_attr_get(uint32_t id, uint32_t attr_id, uint32_t *attr_value) +rte_service_attr_get(uint32_t id, uint32_t attr_id, uint64_t *attr_value) { struct rte_service_spec_impl *s; SERVICE_VALID_GET_OR_ERR_RET(id, s, -EINVAL); diff --git a/test/test/test_service_cores.c b/test/test/test_service_cores.c index ec31882..82bb2ce 100644 --- a/test/test/test_service_cores.c +++ b/test/test/test_service_cores.c @@ -259,7 +259,7 @@ static int32_t dummy_mt_safe_cb(void *args) rte_service_set_stats_enable(id, 1); uint32_t attr_id = UINT32_MAX; - uint32_t attr_value = 0xdead; + uint64_t attr_value = 0xdead; /* check error return values */ TEST_ASSERT_EQUAL(-EINVAL, rte_service_attr_get(id, attr_id, &attr_value), diff --git a/doc/guides/rel_notes/release_19_05.rst b/doc/guides/rel_notes/release_19_05.rst index 2b0f60d..b8ed3d3 100644 --- a/doc/guides/rel_notes/release_19_05.rst +++ b/doc/guides/rel_notes/release_19_05.rst @@ -94,6 +94,9 @@ API Changes Also, make sure to start the actual text at the margin. ========================================================= +eal: as shown in the 19.02 deprecation notice, the type of the ``attr_value`` + parameter of the function ``rte_service_attr_get()`` has been changed + from ``uint32_t *`` to ``uint64_t *``. ABI Changes ----------- @@ -143,7 +146,7 @@ The libraries prepended with a plus sign were incremented in this version. librte_compressdev.so.1 librte_cryptodev.so.6 librte_distributor.so.1 - librte_eal.so.9 + +librte_eal.so.10 librte_efd.so.1 librte_ethdev.so.11 librte_eventdev.so.6 diff --git a/lib/librte_eal/bsdapp/eal/Makefile b/lib/librte_eal/bsdapp/eal/Makefile index bfeddaa..4bc8555 100644 --- a/lib/librte_eal/bsdapp/eal/Makefile +++ b/lib/librte_eal/bsdapp/eal/Makefile @@ -22,7 +22,7 @@ LDLIBS += -lrte_kvargs EXPORT_MAP := ../../rte_eal_version.map -LIBABIVER := 9 +LIBABIVER := 10 # 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 51deb57..db6aca3 100644 --- a/lib/librte_eal/linuxapp/eal/Makefile +++ b/lib/librte_eal/linuxapp/eal/Makefile @@ -10,7 +10,7 @@ ARCH_DIR ?= $(RTE_ARCH) EXPORT_MAP := ../../rte_eal_version.map VPATH += $(RTE_SDK)/lib/librte_eal/common/arch/$(ARCH_DIR) -LIBABIVER := 9 +LIBABIVER := 10 VPATH += $(RTE_SDK)/lib/librte_eal/common diff --git a/lib/librte_eal/meson.build b/lib/librte_eal/meson.build index a18f3a8..030171e 100644 --- a/lib/librte_eal/meson.build +++ b/lib/librte_eal/meson.build @@ -21,7 +21,7 @@ else error('unsupported system type "@0@"'.format(host_machine.system())) endif -version = 9 # the version of the EAL API +version = 10 # the version of the EAL API allow_experimental_apis = true deps += 'compat' deps += 'kvargs' -- 1.8.3.1
The type of value parameter to rte_service_attr_get should be uint64_t *, since the attributes are of type uint64_t. Fixes: 4d55194d76a4 ("service: add attribute get function") Reviewed-by: Gage Eads <gage.eads@intel.com> Signed-off-by: Nikhil Rao <nikhil.rao@intel.com> Acked-by: Harry van Haaren <harry.van.haaren@intel.com> --- lib/librte_eal/common/include/rte_service.h | 2 +- lib/librte_eal/common/rte_service.c | 2 +- test/test/test_service_cores.c | 2 +- doc/guides/rel_notes/deprecation.rst | 4 ---- doc/guides/rel_notes/release_19_05.rst | 5 ++++- lib/librte_eal/bsdapp/eal/Makefile | 2 +- lib/librte_eal/linuxapp/eal/Makefile | 2 +- lib/librte_eal/meson.build | 2 +- 8 files changed, 10 insertions(+), 11 deletions(-) v2: * Update release notes. * Update library version in makefiles. v3: * Remove deprecation notice. diff --git a/lib/librte_eal/common/include/rte_service.h b/lib/librte_eal/common/include/rte_service.h index 34b41af..670c89a 100644 --- a/lib/librte_eal/common/include/rte_service.h +++ b/lib/librte_eal/common/include/rte_service.h @@ -372,7 +372,7 @@ int32_t rte_service_run_iter_on_app_lcore(uint32_t id, * -EINVAL Invalid id, attr_id or attr_value was NULL. */ int32_t rte_service_attr_get(uint32_t id, uint32_t attr_id, - uint32_t *attr_value); + uint64_t *attr_value); /** * Reset all attribute values of a service. diff --git a/lib/librte_eal/common/rte_service.c b/lib/librte_eal/common/rte_service.c index 03fde97..5f75e5a 100644 --- a/lib/librte_eal/common/rte_service.c +++ b/lib/librte_eal/common/rte_service.c @@ -734,7 +734,7 @@ int32_t rte_service_run_iter_on_app_lcore(uint32_t id, } int32_t -rte_service_attr_get(uint32_t id, uint32_t attr_id, uint32_t *attr_value) +rte_service_attr_get(uint32_t id, uint32_t attr_id, uint64_t *attr_value) { struct rte_service_spec_impl *s; SERVICE_VALID_GET_OR_ERR_RET(id, s, -EINVAL); diff --git a/test/test/test_service_cores.c b/test/test/test_service_cores.c index ec31882..82bb2ce 100644 --- a/test/test/test_service_cores.c +++ b/test/test/test_service_cores.c @@ -259,7 +259,7 @@ static int32_t dummy_mt_safe_cb(void *args) rte_service_set_stats_enable(id, 1); uint32_t attr_id = UINT32_MAX; - uint32_t attr_value = 0xdead; + uint64_t attr_value = 0xdead; /* check error return values */ TEST_ASSERT_EQUAL(-EINVAL, rte_service_attr_get(id, attr_id, &attr_value), diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index 1b4fcb7..93ed31f 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -20,10 +20,6 @@ Deprecation Notices * kvargs: The function ``rte_kvargs_process`` will get a new parameter for returning key match count. It will ease handling of no-match case. -* eal: The ``attr_value`` parameter of ``rte_service_attr_get()`` - will be changed from ``uint32_t *`` to ``uint64_t *`` - as the attributes are of type ``uint64_t``. - * eal: both declaring and identifying devices will be streamlined in v18.11. New functions will appear to query a specific port from buses, classes of device and device drivers. Device declaration will be made coherent with the diff --git a/doc/guides/rel_notes/release_19_05.rst b/doc/guides/rel_notes/release_19_05.rst index 2b0f60d..b8ed3d3 100644 --- a/doc/guides/rel_notes/release_19_05.rst +++ b/doc/guides/rel_notes/release_19_05.rst @@ -94,6 +94,9 @@ API Changes Also, make sure to start the actual text at the margin. ========================================================= +eal: as shown in the 19.02 deprecation notice, the type of the ``attr_value`` + parameter of the function ``rte_service_attr_get()`` has been changed + from ``uint32_t *`` to ``uint64_t *``. ABI Changes ----------- @@ -143,7 +146,7 @@ The libraries prepended with a plus sign were incremented in this version. librte_compressdev.so.1 librte_cryptodev.so.6 librte_distributor.so.1 - librte_eal.so.9 + +librte_eal.so.10 librte_efd.so.1 librte_ethdev.so.11 librte_eventdev.so.6 diff --git a/lib/librte_eal/bsdapp/eal/Makefile b/lib/librte_eal/bsdapp/eal/Makefile index bfeddaa..4bc8555 100644 --- a/lib/librte_eal/bsdapp/eal/Makefile +++ b/lib/librte_eal/bsdapp/eal/Makefile @@ -22,7 +22,7 @@ LDLIBS += -lrte_kvargs EXPORT_MAP := ../../rte_eal_version.map -LIBABIVER := 9 +LIBABIVER := 10 # 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 51deb57..db6aca3 100644 --- a/lib/librte_eal/linuxapp/eal/Makefile +++ b/lib/librte_eal/linuxapp/eal/Makefile @@ -10,7 +10,7 @@ ARCH_DIR ?= $(RTE_ARCH) EXPORT_MAP := ../../rte_eal_version.map VPATH += $(RTE_SDK)/lib/librte_eal/common/arch/$(ARCH_DIR) -LIBABIVER := 9 +LIBABIVER := 10 VPATH += $(RTE_SDK)/lib/librte_eal/common diff --git a/lib/librte_eal/meson.build b/lib/librte_eal/meson.build index a18f3a8..030171e 100644 --- a/lib/librte_eal/meson.build +++ b/lib/librte_eal/meson.build @@ -21,7 +21,7 @@ else error('unsupported system type "@0@"'.format(host_machine.system())) endif -version = 9 # the version of the EAL API +version = 10 # the version of the EAL API allow_experimental_apis = true deps += 'compat' deps += 'kvargs' -- 1.8.3.1
Reviewed-by: Rami Rosen <ramirose@gmail.com>
On Fri, Feb 15, 2019 at 12:29 PM Nikhil Rao <nikhil.rao@intel.com> wrote:
> The type of value parameter to rte_service_attr_get
> should be uint64_t *, since the attributes
> are of type uint64_t.
>
> Fixes: 4d55194d76a4 ("service: add attribute get function")
>
> Reviewed-by: Gage Eads <gage.eads@intel.com>
> Signed-off-by: Nikhil Rao <nikhil.rao@intel.com>
> Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
> ---
> lib/librte_eal/common/include/rte_service.h | 2 +-
> lib/librte_eal/common/rte_service.c | 2 +-
> test/test/test_service_cores.c | 2 +-
> doc/guides/rel_notes/deprecation.rst | 4 ----
> doc/guides/rel_notes/release_19_05.rst | 5 ++++-
> lib/librte_eal/bsdapp/eal/Makefile | 2 +-
> lib/librte_eal/linuxapp/eal/Makefile | 2 +-
> lib/librte_eal/meson.build | 2 +-
> 8 files changed, 10 insertions(+), 11 deletions(-)
>
> v2:
> * Update release notes.
> * Update library version in makefiles.
>
> v3:
> * Remove deprecation notice.
>
> diff --git a/lib/librte_eal/common/include/rte_service.h
> b/lib/librte_eal/common/include/rte_service.h
> index 34b41af..670c89a 100644
> --- a/lib/librte_eal/common/include/rte_service.h
> +++ b/lib/librte_eal/common/include/rte_service.h
> @@ -372,7 +372,7 @@ int32_t rte_service_run_iter_on_app_lcore(uint32_t id,
> * -EINVAL Invalid id, attr_id or attr_value was NULL.
> */
> int32_t rte_service_attr_get(uint32_t id, uint32_t attr_id,
> - uint32_t *attr_value);
> + uint64_t *attr_value);
>
> /**
> * Reset all attribute values of a service.
> diff --git a/lib/librte_eal/common/rte_service.c
> b/lib/librte_eal/common/rte_service.c
> index 03fde97..5f75e5a 100644
> --- a/lib/librte_eal/common/rte_service.c
> +++ b/lib/librte_eal/common/rte_service.c
> @@ -734,7 +734,7 @@ int32_t rte_service_run_iter_on_app_lcore(uint32_t id,
> }
>
> int32_t
> -rte_service_attr_get(uint32_t id, uint32_t attr_id, uint32_t *attr_value)
> +rte_service_attr_get(uint32_t id, uint32_t attr_id, uint64_t *attr_value)
> {
> struct rte_service_spec_impl *s;
> SERVICE_VALID_GET_OR_ERR_RET(id, s, -EINVAL);
> diff --git a/test/test/test_service_cores.c
> b/test/test/test_service_cores.c
> index ec31882..82bb2ce 100644
> --- a/test/test/test_service_cores.c
> +++ b/test/test/test_service_cores.c
> @@ -259,7 +259,7 @@ static int32_t dummy_mt_safe_cb(void *args)
> rte_service_set_stats_enable(id, 1);
>
> uint32_t attr_id = UINT32_MAX;
> - uint32_t attr_value = 0xdead;
> + uint64_t attr_value = 0xdead;
> /* check error return values */
> TEST_ASSERT_EQUAL(-EINVAL, rte_service_attr_get(id, attr_id,
> &attr_value),
> diff --git a/doc/guides/rel_notes/deprecation.rst
> b/doc/guides/rel_notes/deprecation.rst
> index 1b4fcb7..93ed31f 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -20,10 +20,6 @@ Deprecation Notices
> * kvargs: The function ``rte_kvargs_process`` will get a new parameter
> for returning key match count. It will ease handling of no-match case.
>
> -* eal: The ``attr_value`` parameter of ``rte_service_attr_get()``
> - will be changed from ``uint32_t *`` to ``uint64_t *``
> - as the attributes are of type ``uint64_t``.
> -
> * eal: both declaring and identifying devices will be streamlined in
> v18.11.
> New functions will appear to query a specific port from buses, classes
> of
> device and device drivers. Device declaration will be made coherent
> with the
> diff --git a/doc/guides/rel_notes/release_19_05.rst
> b/doc/guides/rel_notes/release_19_05.rst
> index 2b0f60d..b8ed3d3 100644
> --- a/doc/guides/rel_notes/release_19_05.rst
> +++ b/doc/guides/rel_notes/release_19_05.rst
> @@ -94,6 +94,9 @@ API Changes
> Also, make sure to start the actual text at the margin.
> =========================================================
>
> +eal: as shown in the 19.02 deprecation notice, the type of the
> ``attr_value``
> + parameter of the function ``rte_service_attr_get()`` has been changed
> + from ``uint32_t *`` to ``uint64_t *``.
>
> ABI Changes
> -----------
> @@ -143,7 +146,7 @@ The libraries prepended with a plus sign were
> incremented in this version.
> librte_compressdev.so.1
> librte_cryptodev.so.6
> librte_distributor.so.1
> - librte_eal.so.9
> + +librte_eal.so.10
> librte_efd.so.1
> librte_ethdev.so.11
> librte_eventdev.so.6
> diff --git a/lib/librte_eal/bsdapp/eal/Makefile
> b/lib/librte_eal/bsdapp/eal/Makefile
> index bfeddaa..4bc8555 100644
> --- a/lib/librte_eal/bsdapp/eal/Makefile
> +++ b/lib/librte_eal/bsdapp/eal/Makefile
> @@ -22,7 +22,7 @@ LDLIBS += -lrte_kvargs
>
> EXPORT_MAP := ../../rte_eal_version.map
>
> -LIBABIVER := 9
> +LIBABIVER := 10
>
> # 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 51deb57..db6aca3 100644
> --- a/lib/librte_eal/linuxapp/eal/Makefile
> +++ b/lib/librte_eal/linuxapp/eal/Makefile
> @@ -10,7 +10,7 @@ ARCH_DIR ?= $(RTE_ARCH)
> EXPORT_MAP := ../../rte_eal_version.map
> VPATH += $(RTE_SDK)/lib/librte_eal/common/arch/$(ARCH_DIR)
>
> -LIBABIVER := 9
> +LIBABIVER := 10
>
> VPATH += $(RTE_SDK)/lib/librte_eal/common
>
> diff --git a/lib/librte_eal/meson.build b/lib/librte_eal/meson.build
> index a18f3a8..030171e 100644
> --- a/lib/librte_eal/meson.build
> +++ b/lib/librte_eal/meson.build
> @@ -21,7 +21,7 @@ else
> error('unsupported system type "@0@
> "'.format(host_machine.system()))
> endif
>
> -version = 9 # the version of the EAL API
> +version = 10 # the version of the EAL API
> allow_experimental_apis = true
> deps += 'compat'
> deps += 'kvargs'
> --
> 1.8.3.1
>
>
--
regards,
Rami Rosen
15/02/2019 11:29, Nikhil Rao: > The type of value parameter to rte_service_attr_get > should be uint64_t *, since the attributes > are of type uint64_t. > > Fixes: 4d55194d76a4 ("service: add attribute get function") > > Reviewed-by: Gage Eads <gage.eads@intel.com> > Signed-off-by: Nikhil Rao <nikhil.rao@intel.com> > Acked-by: Harry van Haaren <harry.van.haaren@intel.com> > --- > --- a/lib/librte_eal/common/include/rte_service.h > +++ b/lib/librte_eal/common/include/rte_service.h > int32_t rte_service_attr_get(uint32_t id, uint32_t attr_id, > - uint32_t *attr_value); > + uint64_t *attr_value); I'm seeing this error: app/test/test_service_cores.c:265:8: error: passing argument 3 of ‘rte_service_attr_get’ from incompatible pointer type > --- a/doc/guides/rel_notes/release_19_05.rst > +++ b/doc/guides/rel_notes/release_19_05.rst > - librte_eal.so.9 > + +librte_eal.so.10 A space is missing after the +
15/02/2019 11:29, Nikhil Rao: > The type of value parameter to rte_service_attr_get > should be uint64_t *, since the attributes > are of type uint64_t. > > Fixes: 4d55194d76a4 ("service: add attribute get function") > > Reviewed-by: Gage Eads <gage.eads@intel.com> > Signed-off-by: Nikhil Rao <nikhil.rao@intel.com> > Acked-by: Harry van Haaren <harry.van.haaren@intel.com> > --- > --- a/lib/librte_eal/common/include/rte_service.h > +++ b/lib/librte_eal/common/include/rte_service.h > int32_t rte_service_attr_get(uint32_t id, uint32_t attr_id, > - uint32_t *attr_value); > + uint64_t *attr_value); I'm seeing this error: app/test/test_service_cores.c:265:8: error: passing argument 3 of ‘rte_service_attr_get’ from incompatible pointer type > --- a/doc/guides/rel_notes/release_19_05.rst > +++ b/doc/guides/rel_notes/release_19_05.rst > - librte_eal.so.9 > + +librte_eal.so.10 A space is missing after the +
The type of value parameter to rte_service_attr_get should be uint64_t *, since the attributes are of type uint64_t. Fixes: 4d55194d76a4 ("service: add attribute get function") Reviewed-by: Gage Eads <gage.eads@intel.com> Signed-off-by: Nikhil Rao <nikhil.rao@intel.com> Acked-by: Harry van Haaren <harry.van.haaren@intel.com> Reviewed-by: Rami Rosen <ramirose@gmail.com> --- lib/librte_eal/common/include/rte_service.h | 2 +- app/test/test_service_cores.c | 2 +- lib/librte_eal/common/rte_service.c | 2 +- doc/guides/rel_notes/deprecation.rst | 4 ---- doc/guides/rel_notes/release_19_05.rst | 5 ++++- lib/librte_eal/bsdapp/eal/Makefile | 2 +- lib/librte_eal/linuxapp/eal/Makefile | 2 +- lib/librte_eal/meson.build | 2 +- 8 files changed, 10 insertions(+), 11 deletions(-) v2: * Update release notes. * Update library version in makefiles. v3: * Remove deprecation notice. v4: * Update path for test_service_cores.c. * Fix whitespace in release_19_05.rst. diff --git a/lib/librte_eal/common/include/rte_service.h b/lib/librte_eal/common/include/rte_service.h index 34b41af..670c89a 100644 --- a/lib/librte_eal/common/include/rte_service.h +++ b/lib/librte_eal/common/include/rte_service.h @@ -372,7 +372,7 @@ int32_t rte_service_run_iter_on_app_lcore(uint32_t id, * -EINVAL Invalid id, attr_id or attr_value was NULL. */ int32_t rte_service_attr_get(uint32_t id, uint32_t attr_id, - uint32_t *attr_value); + uint64_t *attr_value); /** * Reset all attribute values of a service. diff --git a/app/test/test_service_cores.c b/app/test/test_service_cores.c index ec31882..82bb2ce 100644 --- a/app/test/test_service_cores.c +++ b/app/test/test_service_cores.c @@ -259,7 +259,7 @@ static int32_t dummy_mt_safe_cb(void *args) rte_service_set_stats_enable(id, 1); uint32_t attr_id = UINT32_MAX; - uint32_t attr_value = 0xdead; + uint64_t attr_value = 0xdead; /* check error return values */ TEST_ASSERT_EQUAL(-EINVAL, rte_service_attr_get(id, attr_id, &attr_value), diff --git a/lib/librte_eal/common/rte_service.c b/lib/librte_eal/common/rte_service.c index 03fde97..5f75e5a 100644 --- a/lib/librte_eal/common/rte_service.c +++ b/lib/librte_eal/common/rte_service.c @@ -734,7 +734,7 @@ int32_t rte_service_run_iter_on_app_lcore(uint32_t id, } int32_t -rte_service_attr_get(uint32_t id, uint32_t attr_id, uint32_t *attr_value) +rte_service_attr_get(uint32_t id, uint32_t attr_id, uint64_t *attr_value) { struct rte_service_spec_impl *s; SERVICE_VALID_GET_OR_ERR_RET(id, s, -EINVAL); diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index 1b4fcb7..93ed31f 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -20,10 +20,6 @@ Deprecation Notices * kvargs: The function ``rte_kvargs_process`` will get a new parameter for returning key match count. It will ease handling of no-match case. -* eal: The ``attr_value`` parameter of ``rte_service_attr_get()`` - will be changed from ``uint32_t *`` to ``uint64_t *`` - as the attributes are of type ``uint64_t``. - * eal: both declaring and identifying devices will be streamlined in v18.11. New functions will appear to query a specific port from buses, classes of device and device drivers. Device declaration will be made coherent with the diff --git a/doc/guides/rel_notes/release_19_05.rst b/doc/guides/rel_notes/release_19_05.rst index 4a3e2a7..67e221a 100644 --- a/doc/guides/rel_notes/release_19_05.rst +++ b/doc/guides/rel_notes/release_19_05.rst @@ -106,6 +106,9 @@ API Changes Also, make sure to start the actual text at the margin. ========================================================= +eal: as shown in the 19.02 deprecation notice, the type of the ``attr_value`` + parameter of the function ``rte_service_attr_get()`` has been changed + from ``uint32_t *`` to ``uint64_t *``. ABI Changes ----------- @@ -155,7 +158,7 @@ The libraries prepended with a plus sign were incremented in this version. librte_compressdev.so.1 librte_cryptodev.so.6 librte_distributor.so.1 - librte_eal.so.9 + + librte_eal.so.10 librte_efd.so.1 librte_ethdev.so.11 librte_eventdev.so.6 diff --git a/lib/librte_eal/bsdapp/eal/Makefile b/lib/librte_eal/bsdapp/eal/Makefile index bfeddaa..4bc8555 100644 --- a/lib/librte_eal/bsdapp/eal/Makefile +++ b/lib/librte_eal/bsdapp/eal/Makefile @@ -22,7 +22,7 @@ LDLIBS += -lrte_kvargs EXPORT_MAP := ../../rte_eal_version.map -LIBABIVER := 9 +LIBABIVER := 10 # 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 51deb57..db6aca3 100644 --- a/lib/librte_eal/linuxapp/eal/Makefile +++ b/lib/librte_eal/linuxapp/eal/Makefile @@ -10,7 +10,7 @@ ARCH_DIR ?= $(RTE_ARCH) EXPORT_MAP := ../../rte_eal_version.map VPATH += $(RTE_SDK)/lib/librte_eal/common/arch/$(ARCH_DIR) -LIBABIVER := 9 +LIBABIVER := 10 VPATH += $(RTE_SDK)/lib/librte_eal/common diff --git a/lib/librte_eal/meson.build b/lib/librte_eal/meson.build index 98c1d1f..290239d 100644 --- a/lib/librte_eal/meson.build +++ b/lib/librte_eal/meson.build @@ -21,7 +21,7 @@ else error('unsupported system type "@0@"'.format(host_machine.system())) endif -version = 9 # the version of the EAL API +version = 10 # the version of the EAL API allow_experimental_apis = true deps += 'kvargs' if dpdk_conf.has('RTE_USE_LIBBSD') -- 1.8.3.1
The type of value parameter to rte_service_attr_get should be uint64_t *, since the attributes are of type uint64_t. Fixes: 4d55194d76a4 ("service: add attribute get function") Reviewed-by: Gage Eads <gage.eads@intel.com> Signed-off-by: Nikhil Rao <nikhil.rao@intel.com> Acked-by: Harry van Haaren <harry.van.haaren@intel.com> Reviewed-by: Rami Rosen <ramirose@gmail.com> --- lib/librte_eal/common/include/rte_service.h | 2 +- app/test/test_service_cores.c | 2 +- lib/librte_eal/common/rte_service.c | 2 +- doc/guides/rel_notes/deprecation.rst | 4 ---- doc/guides/rel_notes/release_19_05.rst | 5 ++++- lib/librte_eal/bsdapp/eal/Makefile | 2 +- lib/librte_eal/linuxapp/eal/Makefile | 2 +- lib/librte_eal/meson.build | 2 +- 8 files changed, 10 insertions(+), 11 deletions(-) v2: * Update release notes. * Update library version in makefiles. v3: * Remove deprecation notice. v4: * Update path for test_service_cores.c. * Fix whitespace in release_19_05.rst. diff --git a/lib/librte_eal/common/include/rte_service.h b/lib/librte_eal/common/include/rte_service.h index 34b41af..670c89a 100644 --- a/lib/librte_eal/common/include/rte_service.h +++ b/lib/librte_eal/common/include/rte_service.h @@ -372,7 +372,7 @@ int32_t rte_service_run_iter_on_app_lcore(uint32_t id, * -EINVAL Invalid id, attr_id or attr_value was NULL. */ int32_t rte_service_attr_get(uint32_t id, uint32_t attr_id, - uint32_t *attr_value); + uint64_t *attr_value); /** * Reset all attribute values of a service. diff --git a/app/test/test_service_cores.c b/app/test/test_service_cores.c index ec31882..82bb2ce 100644 --- a/app/test/test_service_cores.c +++ b/app/test/test_service_cores.c @@ -259,7 +259,7 @@ static int32_t dummy_mt_safe_cb(void *args) rte_service_set_stats_enable(id, 1); uint32_t attr_id = UINT32_MAX; - uint32_t attr_value = 0xdead; + uint64_t attr_value = 0xdead; /* check error return values */ TEST_ASSERT_EQUAL(-EINVAL, rte_service_attr_get(id, attr_id, &attr_value), diff --git a/lib/librte_eal/common/rte_service.c b/lib/librte_eal/common/rte_service.c index 03fde97..5f75e5a 100644 --- a/lib/librte_eal/common/rte_service.c +++ b/lib/librte_eal/common/rte_service.c @@ -734,7 +734,7 @@ int32_t rte_service_run_iter_on_app_lcore(uint32_t id, } int32_t -rte_service_attr_get(uint32_t id, uint32_t attr_id, uint32_t *attr_value) +rte_service_attr_get(uint32_t id, uint32_t attr_id, uint64_t *attr_value) { struct rte_service_spec_impl *s; SERVICE_VALID_GET_OR_ERR_RET(id, s, -EINVAL); diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index 1b4fcb7..93ed31f 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -20,10 +20,6 @@ Deprecation Notices * kvargs: The function ``rte_kvargs_process`` will get a new parameter for returning key match count. It will ease handling of no-match case. -* eal: The ``attr_value`` parameter of ``rte_service_attr_get()`` - will be changed from ``uint32_t *`` to ``uint64_t *`` - as the attributes are of type ``uint64_t``. - * eal: both declaring and identifying devices will be streamlined in v18.11. New functions will appear to query a specific port from buses, classes of device and device drivers. Device declaration will be made coherent with the diff --git a/doc/guides/rel_notes/release_19_05.rst b/doc/guides/rel_notes/release_19_05.rst index 4a3e2a7..67e221a 100644 --- a/doc/guides/rel_notes/release_19_05.rst +++ b/doc/guides/rel_notes/release_19_05.rst @@ -106,6 +106,9 @@ API Changes Also, make sure to start the actual text at the margin. ========================================================= +eal: as shown in the 19.02 deprecation notice, the type of the ``attr_value`` + parameter of the function ``rte_service_attr_get()`` has been changed + from ``uint32_t *`` to ``uint64_t *``. ABI Changes ----------- @@ -155,7 +158,7 @@ The libraries prepended with a plus sign were incremented in this version. librte_compressdev.so.1 librte_cryptodev.so.6 librte_distributor.so.1 - librte_eal.so.9 + + librte_eal.so.10 librte_efd.so.1 librte_ethdev.so.11 librte_eventdev.so.6 diff --git a/lib/librte_eal/bsdapp/eal/Makefile b/lib/librte_eal/bsdapp/eal/Makefile index bfeddaa..4bc8555 100644 --- a/lib/librte_eal/bsdapp/eal/Makefile +++ b/lib/librte_eal/bsdapp/eal/Makefile @@ -22,7 +22,7 @@ LDLIBS += -lrte_kvargs EXPORT_MAP := ../../rte_eal_version.map -LIBABIVER := 9 +LIBABIVER := 10 # 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 51deb57..db6aca3 100644 --- a/lib/librte_eal/linuxapp/eal/Makefile +++ b/lib/librte_eal/linuxapp/eal/Makefile @@ -10,7 +10,7 @@ ARCH_DIR ?= $(RTE_ARCH) EXPORT_MAP := ../../rte_eal_version.map VPATH += $(RTE_SDK)/lib/librte_eal/common/arch/$(ARCH_DIR) -LIBABIVER := 9 +LIBABIVER := 10 VPATH += $(RTE_SDK)/lib/librte_eal/common diff --git a/lib/librte_eal/meson.build b/lib/librte_eal/meson.build index 98c1d1f..290239d 100644 --- a/lib/librte_eal/meson.build +++ b/lib/librte_eal/meson.build @@ -21,7 +21,7 @@ else error('unsupported system type "@0@"'.format(host_machine.system())) endif -version = 9 # the version of the EAL API +version = 10 # the version of the EAL API allow_experimental_apis = true deps += 'kvargs' if dpdk_conf.has('RTE_USE_LIBBSD') -- 1.8.3.1
28/03/2019 07:29, Nikhil Rao:
> The type of value parameter to rte_service_attr_get
> should be uint64_t *, since the attributes
> are of type uint64_t.
>
> Fixes: 4d55194d76a4 ("service: add attribute get function")
>
> Reviewed-by: Gage Eads <gage.eads@intel.com>
> Signed-off-by: Nikhil Rao <nikhil.rao@intel.com>
> Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
> Reviewed-by: Rami Rosen <ramirose@gmail.com>
Rebased for master and applied, thanks.
28/03/2019 07:29, Nikhil Rao:
> The type of value parameter to rte_service_attr_get
> should be uint64_t *, since the attributes
> are of type uint64_t.
>
> Fixes: 4d55194d76a4 ("service: add attribute get function")
>
> Reviewed-by: Gage Eads <gage.eads@intel.com>
> Signed-off-by: Nikhil Rao <nikhil.rao@intel.com>
> Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
> Reviewed-by: Rami Rosen <ramirose@gmail.com>
Rebased for master and applied, thanks.