From: "Kinsella, Ray" <mdr@ashroe.eu>
To: Feifei Wang <Feifei.Wang2@arm.com>,
Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>,
Konstantin Ananyev <konstantin.ananyev@intel.com>,
Neil Horman <nhorman@tuxdriver.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>, nd <nd@arm.com>
Subject: Re: [dpdk-dev] [PATCH 1/3] ring: remove experimental tag for ring reset API
Date: Tue, 7 Jul 2020 08:40:37 +0100 [thread overview]
Message-ID: <e434ce66-a292-1172-93f2-11d01c227f76@ashroe.eu> (raw)
In-Reply-To: <VI1PR08MB3023C753D22BCBEADBF7AE30C8660@VI1PR08MB3023.eurprd08.prod.outlook.com>
On 07/07/2020 04:19, Feifei Wang wrote:
>
>
>> -----Original Message-----
>> From: Kinsella, Ray <mdr@ashroe.eu>
>> Sent: 2020年7月6日 14:23
>> To: Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>; Feifei Wang
>> <Feifei.Wang2@arm.com>; Konstantin Ananyev
>> <konstantin.ananyev@intel.com>; Neil Horman <nhorman@tuxdriver.com>
>> Cc: dev@dpdk.org; nd <nd@arm.com>
>> Subject: Re: [PATCH 1/3] ring: remove experimental tag for ring reset API
>>
>>
>>
>> On 03/07/2020 19:46, Honnappa Nagarahalli wrote:
>>> <snip>
>>>
>>>>
>>>> On 03/07/2020 11:26, Feifei Wang wrote:
>>>>> Remove the experimental tag for rte_ring_reset API that have been
>>>>> around for 4 releases.
>>>>>
>>>>> Signed-off-by: Feifei Wang <feifei.wang2@arm.com>
>>>>> Reviewed-by: Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>
>>>>> Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
>>>>> ---
>>>>> lib/librte_ring/rte_ring.h | 3 ---
>>>>> lib/librte_ring/rte_ring_version.map | 4 +---
>>>>> 2 files changed, 1 insertion(+), 6 deletions(-)
>>>>>
>>>>> diff --git a/lib/librte_ring/rte_ring.h b/lib/librte_ring/rte_ring.h
>>>>> index f67141482..7181c33b4 100644
>>>>> --- a/lib/librte_ring/rte_ring.h
>>>>> +++ b/lib/librte_ring/rte_ring.h
>>>>> @@ -663,15 +663,12 @@ rte_ring_dequeue(struct rte_ring *r, void
>> **obj_p)
>>>>> *
>>>>> * This function flush all the elements in a ring
>>>>> *
>>>>> - * @b EXPERIMENTAL: this API may change without prior notice
>>>>> - *
>>>>> * @warning
>>>>> * Make sure the ring is not in use while calling this function.
>>>>> *
>>>>> * @param r
>>>>> * A pointer to the ring structure.
>>>>> */
>>>>> -__rte_experimental
>>>>> void
>>>>> rte_ring_reset(struct rte_ring *r);
>>>>>
>>>>> diff --git a/lib/librte_ring/rte_ring_version.map
>>>>> b/lib/librte_ring/rte_ring_version.map
>>>>> index e88c143cf..aec6f3820 100644
>>>>> --- a/lib/librte_ring/rte_ring_version.map
>>>>> +++ b/lib/librte_ring/rte_ring_version.map
>>>>> @@ -8,6 +8,7 @@ DPDK_20.0 {
>>>>> rte_ring_init;
>>>>> rte_ring_list_dump;
>>>>> rte_ring_lookup;
>>>>> + rte_ring_reset;
>>>>>
>>>>> local: *;
>>>>> };
>>>>> @@ -15,9 +16,6 @@ DPDK_20.0 {
>>>>> EXPERIMENTAL {
>>>>> global:
>>>>>
>>>>> - # added in 19.08
>>>>> - rte_ring_reset;
>>>>> -
>>>>> # added in 20.02
>>>>> rte_ring_create_elem;
>>>>> rte_ring_get_memsize_elem;
>>>>
>>>> So strictly speaking, rte_ring_reset is part of the DPDK_21 ABI, not
>>>> the v20.0 ABI.
>>> Thanks Ray for clarifying this.
>>>
> Thanks very much for pointing this.
>>>>
>>>> The way to solve is to add it the DPDK_21 ABI in the map file.
>>>> And then use the VERSION_SYMBOL_EXPERIMENTAL to alias to
>> experimental
>>>> if necessary.
>>> Is using VERSION_SYMBOL_EXPERIMENTAL a must?
>>
>> Purely at the discretion of the contributor and maintainer.
>> If it has been around for a while, applications are using it and changing the
>> symbol will break them.
>>
>> You may choose to provide the alias or not.
> Ok, in the new patch version, I will add it into the DPDK_21 ABI but the
> VERSION_SYMBOL_EXPERIMENTAL will not be added, because if it is added in this
> version, it is still needed to be removed in the near future.
>
> Thanks very much for your review.
That is 100%
>>
>>> The documentation also seems to be vague. It says " The macro is used
>> when a symbol matures to become part of the stable ABI, to provide an alias
>> to experimental for some time". What does 'some time' mean?
>>
>> "Some time" is a bit vague alright, should be "until the next major ABI
>> version" - I will fix.
>>
>>>
>>>>
>>>> https://doc.dpdk.org/guides/contributing/abi_versioning.html#versioni
>>>> ng-
>>>> macros
next prev parent reply other threads:[~2020-07-07 7:40 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-03 10:26 [dpdk-dev] [PATCH 0/3] ring clean up Feifei Wang
2020-07-03 10:26 ` [dpdk-dev] [PATCH 1/3] ring: remove experimental tag for ring reset API Feifei Wang
2020-07-03 16:16 ` Kinsella, Ray
2020-07-03 18:46 ` Honnappa Nagarahalli
2020-07-06 6:23 ` Kinsella, Ray
2020-07-07 3:19 ` Feifei Wang
2020-07-07 7:40 ` Kinsella, Ray [this message]
2020-07-03 10:26 ` [dpdk-dev] [PATCH 2/3] ring: remove experimental tag for ring element APIs Feifei Wang
2020-07-03 16:17 ` Kinsella, Ray
2020-07-07 14:44 ` Ananyev, Konstantin
2020-07-03 10:26 ` [dpdk-dev] [PATCH 3/3] ring: use element APIs to implement legacy APIs Feifei Wang
2020-07-07 5:19 ` Feifei Wang
2020-07-07 14:04 ` Ananyev, Konstantin
2020-07-07 16:21 ` Honnappa Nagarahalli
2020-07-08 3:19 ` Feifei Wang
2020-07-07 20:07 ` David Christensen
2020-07-08 1:30 ` Feifei Wang
2020-07-08 1:21 ` Feifei Wang
2020-07-07 14:45 ` Ananyev, Konstantin
2020-07-08 14:51 ` [dpdk-dev] [PATCH 0/3] ring clean up David Marchand
2020-07-08 17:05 ` Ananyev, Konstantin
2020-07-08 20:33 ` Honnappa Nagarahalli
2020-07-09 2:27 ` Feifei Wang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=e434ce66-a292-1172-93f2-11d01c227f76@ashroe.eu \
--to=mdr@ashroe.eu \
--cc=Feifei.Wang2@arm.com \
--cc=Honnappa.Nagarahalli@arm.com \
--cc=dev@dpdk.org \
--cc=konstantin.ananyev@intel.com \
--cc=nd@arm.com \
--cc=nhorman@tuxdriver.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).