[dpdk-dev] doc: announce API changes for device objects

Message ID 1460043197-13707-1-git-send-email-david.marchand@6wind.com (mailing list archive)
State Accepted, archived
Headers

Commit Message

David Marchand April 7, 2016, 3:33 p.m. UTC
  Following discussions with Jan, here is a deprecation notice to prepare for
hotplug and rte_device changes to come in 16.07.

Signed-off-by: David Marchand <david.marchand@6wind.com>
---
 doc/guides/rel_notes/deprecation.rst | 12 ++++++++++++
 1 file changed, 12 insertions(+)
  

Comments

Jan Viktorin April 7, 2016, 3:46 p.m. UTC | #1
On Thu,  7 Apr 2016 17:33:17 +0200
David Marchand <david.marchand@6wind.com> wrote:

> Following discussions with Jan, here is a deprecation notice to prepare for
> hotplug and rte_device changes to come in 16.07.
> 
> Signed-off-by: David Marchand <david.marchand@6wind.com>
> ---
>  doc/guides/rel_notes/deprecation.rst | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
> index 98d5529..d749e5d 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -8,6 +8,18 @@ API and ABI deprecation notices are to be posted here.
>  Deprecation Notices
>  -------------------
>  
> +* 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.

As a result, the current rte_driver structure will be renamed to
rte_module and probably reworked in some way due to its semantics and
potential name clash with the new rte_driver struct.

Regards
Jan

> +
>  * The EAL function pci_config_space_set is deprecated in release 16.04
>    and will be removed from 16.07.
>    Macros CONFIG_RTE_PCI_CONFIG, CONFIG_RTE_PCI_EXTENDED_TAG and
  
David Marchand April 7, 2016, 5 p.m. UTC | #2
On Thu, Apr 7, 2016 at 5:46 PM, Jan Viktorin <viktorin@rehivetech.com> wrote:
> On Thu,  7 Apr 2016 17:33:17 +0200
> David Marchand <david.marchand@6wind.com> wrote:
>
>> Following discussions with Jan, here is a deprecation notice to prepare for
>> hotplug and rte_device changes to come in 16.07.
>>
>> Signed-off-by: David Marchand <david.marchand@6wind.com>
>> ---
>>  doc/guides/rel_notes/deprecation.rst | 12 ++++++++++++
>>  1 file changed, 12 insertions(+)
>>
>> diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
>> index 98d5529..d749e5d 100644
>> --- a/doc/guides/rel_notes/deprecation.rst
>> +++ b/doc/guides/rel_notes/deprecation.rst
>> @@ -8,6 +8,18 @@ API and ABI deprecation notices are to be posted here.
>>  Deprecation Notices
>>  -------------------
>>
>> +* 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.
>
> As a result, the current rte_driver structure will be renamed to
> rte_module and probably reworked in some way due to its semantics and
> potential name clash with the new rte_driver struct.

If we just introduce some macros like RTE_MODULE_INIT() /
RTE_MODULE_EXIT(), we don't need a rte_module object at the moment ?
  
Jan Viktorin April 7, 2016, 5:09 p.m. UTC | #3
On Thu, 7 Apr 2016 19:00:43 +0200
David Marchand <david.marchand@6wind.com> wrote:

> On Thu, Apr 7, 2016 at 5:46 PM, Jan Viktorin <viktorin@rehivetech.com> wrote:
> > On Thu,  7 Apr 2016 17:33:17 +0200
> > David Marchand <david.marchand@6wind.com> wrote:
> >  
> >> Following discussions with Jan, here is a deprecation notice to prepare for
> >> hotplug and rte_device changes to come in 16.07.
> >>
> >> Signed-off-by: David Marchand <david.marchand@6wind.com>
> >> ---
> >>  doc/guides/rel_notes/deprecation.rst | 12 ++++++++++++
> >>  1 file changed, 12 insertions(+)
> >>
> >> diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
> >> index 98d5529..d749e5d 100644
> >> --- a/doc/guides/rel_notes/deprecation.rst
> >> +++ b/doc/guides/rel_notes/deprecation.rst
> >> @@ -8,6 +8,18 @@ API and ABI deprecation notices are to be posted here.
> >>  Deprecation Notices
> >>  -------------------
> >>
> >> +* 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.  
> >
> > As a result, the current rte_driver structure will be renamed to
> > rte_module and probably reworked in some way due to its semantics and
> > potential name clash with the new rte_driver struct.  
> 
> If we just introduce some macros like RTE_MODULE_INIT() /
> RTE_MODULE_EXIT(), we don't need a rte_module object at the moment ?
> 

Well, possibly, we don't need it. At least, it might be hidden and not
being a part of the API/ABI. Do you need an ack for this?
  
David Marchand April 7, 2016, 5:24 p.m. UTC | #4
On Thu, Apr 7, 2016 at 7:09 PM, Jan Viktorin <viktorin@rehivetech.com> wrote:
> On Thu, 7 Apr 2016 19:00:43 +0200
> David Marchand <david.marchand@6wind.com> wrote:
>> >> Following discussions with Jan, here is a deprecation notice to prepare for
>> >> hotplug and rte_device changes to come in 16.07.
>> > As a result, the current rte_driver structure will be renamed to
>> > rte_module and probably reworked in some way due to its semantics and
>> > potential name clash with the new rte_driver struct.
>>
>> If we just introduce some macros like RTE_MODULE_INIT() /
>> RTE_MODULE_EXIT(), we don't need a rte_module object at the moment ?
>>
>
> Well, possibly, we don't need it. At least, it might be hidden and not
> being a part of the API/ABI. Do you need an ack for this?

Yes, please, the process requires 3 acks for this kind of changes.
  
Jan Viktorin April 7, 2016, 5:27 p.m. UTC | #5
On Thu,  7 Apr 2016 17:33:17 +0200
David Marchand <david.marchand@6wind.com> wrote:

> Following discussions with Jan, here is a deprecation notice to prepare for
> hotplug and rte_device changes to come in 16.07.
> 
> Signed-off-by: David Marchand <david.marchand@6wind.com>
> ---
Acked-by: Jan Viktorin <viktorin@rehivetech.com>
  
Olivier Matz April 8, 2016, 9:35 a.m. UTC | #6
On 04/07/2016 07:27 PM, Jan Viktorin wrote:
> On Thu,  7 Apr 2016 17:33:17 +0200
> David Marchand <david.marchand@6wind.com> wrote:
> 
>> Following discussions with Jan, here is a deprecation notice to prepare for
>> hotplug and rte_device changes to come in 16.07.
>>
>> Signed-off-by: David Marchand <david.marchand@6wind.com>
>> ---
> Acked-by: Jan Viktorin <viktorin@rehivetech.com>
> 

Acked-by: Olivier Matz <olivier.matz@6wind.com>
  
Thomas Monjalon April 8, 2016, 3:50 p.m. UTC | #7
2016-04-08 11:35, Olivier Matz:
> On 04/07/2016 07:27 PM, Jan Viktorin wrote:
> > On Thu,  7 Apr 2016 17:33:17 +0200
> > David Marchand <david.marchand@6wind.com> wrote:
> > 
> >> Following discussions with Jan, here is a deprecation notice to prepare for
> >> hotplug and rte_device changes to come in 16.07.
> >>
> >> Signed-off-by: David Marchand <david.marchand@6wind.com>
> >> ---
> > Acked-by: Jan Viktorin <viktorin@rehivetech.com>
> 
> Acked-by: Olivier Matz <olivier.matz@6wind.com>

Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
  
Thomas Monjalon April 10, 2016, 10:05 a.m. UTC | #8
> > >> Following discussions with Jan, here is a deprecation notice to prepare for
> > >> hotplug and rte_device changes to come in 16.07.
> > >>
> > >> Signed-off-by: David Marchand <david.marchand@6wind.com>
> > >> ---
> > > Acked-by: Jan Viktorin <viktorin@rehivetech.com>
> > 
> > Acked-by: Olivier Matz <olivier.matz@6wind.com>
> 
> Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>

Applied, thanks
  

Patch

diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
index 98d5529..d749e5d 100644
--- a/doc/guides/rel_notes/deprecation.rst
+++ b/doc/guides/rel_notes/deprecation.rst
@@ -8,6 +8,18 @@  API and ABI deprecation notices are to be posted here.
 Deprecation Notices
 -------------------
 
+* 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.
+
 * The EAL function pci_config_space_set is deprecated in release 16.04
   and will be removed from 16.07.
   Macros CONFIG_RTE_PCI_CONFIG, CONFIG_RTE_PCI_EXTENDED_TAG and