DPDK patches and discussions
 help / color / mirror / Atom feed
* [PATCH] doc: announce some raw/ifpga API removal
@ 2022-06-30  9:41 David Marchand
  2022-07-01  6:15 ` Xu, Rosen
                   ` (3 more replies)
  0 siblings, 4 replies; 16+ messages in thread
From: David Marchand @ 2022-06-30  9:41 UTC (permalink / raw)
  To: dev, rosen.xu, tianfei.zhang; +Cc: Ray Kinsella

rte_pmd_ifpga_get_pci_bus() documentation is vague and it is unclear
what could be done with it.
On the other hand, EAL provides a standard API to retrieve a bus object
by name.

Announce removal of this driver specific API for v22.11.

Signed-off-by: David Marchand <david.marchand@redhat.com>
---
A RFC series of the intended changes is available at:
https://patches.dpdk.org/project/dpdk/list/?series=23811&state=%2A&archive=both

---
 doc/guides/rel_notes/deprecation.rst | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
index 4e5b23c53d..64d649777a 100644
--- a/doc/guides/rel_notes/deprecation.rst
+++ b/doc/guides/rel_notes/deprecation.rst
@@ -119,6 +119,8 @@ Deprecation Notices
 * metrics: The function ``rte_metrics_init`` will have a non-void return
   in order to notify errors instead of calling ``rte_exit``.
 
+* raw/ifgpa: The ``rte_pmd_ifpga_get_pci_bus`` will be removed in 22.11.
+
 * raw/ioat: The ``ioat`` rawdev driver has been deprecated, since it's
   functionality is provided through the new ``dmadev`` infrastructure.
   To continue to use hardware previously supported by the ``ioat`` rawdev driver,
-- 
2.36.1


^ permalink raw reply	[flat|nested] 16+ messages in thread

* RE: [PATCH] doc: announce some raw/ifpga API removal
  2022-06-30  9:41 [PATCH] doc: announce some raw/ifpga API removal David Marchand
@ 2022-07-01  6:15 ` Xu, Rosen
  2022-07-01  6:25   ` Huang, Wei
  2022-07-12 14:24 ` Thomas Monjalon
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 16+ messages in thread
From: Xu, Rosen @ 2022-07-01  6:15 UTC (permalink / raw)
  To: David Marchand, dev, Zhang, Tianfei, Huang, Wei; +Cc: Ray Kinsella

Hi  David,

Got, thank you so much.


> -----Original Message-----
> From: David Marchand <david.marchand@redhat.com>
> Sent: Thursday, June 30, 2022 17:41
> To: dev@dpdk.org; Xu, Rosen <rosen.xu@intel.com>; Zhang, Tianfei
> <tianfei.zhang@intel.com>
> Cc: Ray Kinsella <mdr@ashroe.eu>
> Subject: [PATCH] doc: announce some raw/ifpga API removal
> 
> rte_pmd_ifpga_get_pci_bus() documentation is vague and it is unclear what
> could be done with it.
> On the other hand, EAL provides a standard API to retrieve a bus object by
> name.
> 
> Announce removal of this driver specific API for v22.11.
> 
> Signed-off-by: David Marchand <david.marchand@redhat.com>
> ---
> A RFC series of the intended changes is available at:
> https://patches.dpdk.org/project/dpdk/list/?series=23811&state=%2A&arch
> ive=both
> 
> ---
>  doc/guides/rel_notes/deprecation.rst | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/doc/guides/rel_notes/deprecation.rst
> b/doc/guides/rel_notes/deprecation.rst
> index 4e5b23c53d..64d649777a 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -119,6 +119,8 @@ Deprecation Notices
>  * metrics: The function ``rte_metrics_init`` will have a non-void return
>    in order to notify errors instead of calling ``rte_exit``.
> 
> +* raw/ifgpa: The ``rte_pmd_ifpga_get_pci_bus`` will be removed in 22.11.
> +
>  * raw/ioat: The ``ioat`` rawdev driver has been deprecated, since it's
>    functionality is provided through the new ``dmadev`` infrastructure.
>    To continue to use hardware previously supported by the ``ioat`` rawdev
> driver,
> --
> 2.36.1


^ permalink raw reply	[flat|nested] 16+ messages in thread

* RE: [PATCH] doc: announce some raw/ifpga API removal
  2022-07-01  6:15 ` Xu, Rosen
@ 2022-07-01  6:25   ` Huang, Wei
  2022-07-01  7:00     ` David Marchand
  0 siblings, 1 reply; 16+ messages in thread
From: Huang, Wei @ 2022-07-01  6:25 UTC (permalink / raw)
  To: Xu, Rosen, David Marchand, dev, Zhang, Tianfei; +Cc: Ray Kinsella

Hi David,

> -----Original Message-----
> From: Xu, Rosen <rosen.xu@intel.com>
> Sent: Friday, July 1, 2022 14:16
> To: David Marchand <david.marchand@redhat.com>; dev@dpdk.org; Zhang,
> Tianfei <tianfei.zhang@intel.com>; Huang, Wei <wei.huang@intel.com>
> Cc: Ray Kinsella <mdr@ashroe.eu>
> Subject: RE: [PATCH] doc: announce some raw/ifpga API removal
> 
> Hi  David,
> 
> Got, thank you so much.
> 
> 
> > -----Original Message-----
> > From: David Marchand <david.marchand@redhat.com>
> > Sent: Thursday, June 30, 2022 17:41
> > To: dev@dpdk.org; Xu, Rosen <rosen.xu@intel.com>; Zhang, Tianfei
> > <tianfei.zhang@intel.com>
> > Cc: Ray Kinsella <mdr@ashroe.eu>
> > Subject: [PATCH] doc: announce some raw/ifpga API removal
> >
> > rte_pmd_ifpga_get_pci_bus() documentation is vague and it is unclear
> > what could be done with it.
> > On the other hand, EAL provides a standard API to retrieve a bus
> > object by name.
> >
Agree, this API is used in an external application, I can use rte_get_bus_by_name() to replace it.
I will submit a patch to remove rte_pmd_ifpga_get_pci_bus() after DPDK22.07 is released.

> > Announce removal of this driver specific API for v22.11.
> >
> > Signed-off-by: David Marchand <david.marchand@redhat.com>
> > ---
> > A RFC series of the intended changes is available at:
> >
> https://patches.dpdk.org/project/dpdk/list/?series=23811&state=%2A&arc
> > h
> > ive=both
> >
> > ---
> >  doc/guides/rel_notes/deprecation.rst | 2 ++
> >  1 file changed, 2 insertions(+)
> >
> > diff --git a/doc/guides/rel_notes/deprecation.rst
> > b/doc/guides/rel_notes/deprecation.rst
> > index 4e5b23c53d..64d649777a 100644
> > --- a/doc/guides/rel_notes/deprecation.rst
> > +++ b/doc/guides/rel_notes/deprecation.rst
> > @@ -119,6 +119,8 @@ Deprecation Notices
> >  * metrics: The function ``rte_metrics_init`` will have a non-void return
> >    in order to notify errors instead of calling ``rte_exit``.
> >
> > +* raw/ifgpa: The ``rte_pmd_ifpga_get_pci_bus`` will be removed in 22.11.
> > +
> >  * raw/ioat: The ``ioat`` rawdev driver has been deprecated, since it's
> >    functionality is provided through the new ``dmadev`` infrastructure.
> >    To continue to use hardware previously supported by the ``ioat``
> > rawdev driver,
> > --
> > 2.36.1


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH] doc: announce some raw/ifpga API removal
  2022-07-01  6:25   ` Huang, Wei
@ 2022-07-01  7:00     ` David Marchand
  2022-07-01  7:16       ` Huang, Wei
  0 siblings, 1 reply; 16+ messages in thread
From: David Marchand @ 2022-07-01  7:00 UTC (permalink / raw)
  To: Huang, Wei, Xu, Rosen, Zhang, Tianfei; +Cc: dev, Ray Kinsella

On Fri, Jul 1, 2022 at 8:25 AM Huang, Wei <wei.huang@intel.com> wrote:
> > >
> > > rte_pmd_ifpga_get_pci_bus() documentation is vague and it is unclear
> > > what could be done with it.
> > > On the other hand, EAL provides a standard API to retrieve a bus
> > > object by name.
> > >
> Agree, this API is used in an external application, I can use rte_get_bus_by_name() to replace it.

What is the PCI bus used for, in this application?


> I will submit a patch to remove rte_pmd_ifpga_get_pci_bus() after DPDK22.07 is released.

I sent a patch a few days ago:
https://patches.dpdk.org/project/dpdk/patch/20220628144643.1213026-3-david.marchand@redhat.com/


-- 
David Marchand


^ permalink raw reply	[flat|nested] 16+ messages in thread

* RE: [PATCH] doc: announce some raw/ifpga API removal
  2022-07-01  7:00     ` David Marchand
@ 2022-07-01  7:16       ` Huang, Wei
  2022-07-01  7:21         ` David Marchand
  0 siblings, 1 reply; 16+ messages in thread
From: Huang, Wei @ 2022-07-01  7:16 UTC (permalink / raw)
  To: David Marchand, Xu, Rosen, Zhang, Tianfei; +Cc: dev, Ray Kinsella



> -----Original Message-----
> From: David Marchand <david.marchand@redhat.com>
> Sent: Friday, July 1, 2022 15:01
> To: Huang, Wei <wei.huang@intel.com>; Xu, Rosen <rosen.xu@intel.com>;
> Zhang, Tianfei <tianfei.zhang@intel.com>
> Cc: dev@dpdk.org; Ray Kinsella <mdr@ashroe.eu>
> Subject: Re: [PATCH] doc: announce some raw/ifpga API removal
> 
> On Fri, Jul 1, 2022 at 8:25 AM Huang, Wei <wei.huang@intel.com> wrote:
> > > >
> > > > rte_pmd_ifpga_get_pci_bus() documentation is vague and it is
> > > > unclear what could be done with it.
> > > > On the other hand, EAL provides a standard API to retrieve a bus
> > > > object by name.
> > > >
> > Agree, this API is used in an external application, I can use
> rte_get_bus_by_name() to replace it.
> 
> What is the PCI bus used for, in this application?
> 
In this application, target PCI device is Intel FPGA, it supports some special operation like removing it from PCI bus and rescanning it back from PCI bus,
So there are two things need to be done directly on rte_pci_bus:
1. Rescan PCI bus
     pci_bus->bus.scan()
2. Get pci_dev by specified PCI address, and remove it
    TAILQ_FOREACH(pci_dev, &pci_bus->device_list, next) {
	if (!rte_pci_addr_cmp(&pci_dev->addr, &addr))
		return pci_dev;
    }
    ....
    pci_drv = pci_dev->driver;
    pci_drv->remove(pci_dev);
> 
> > I will submit a patch to remove rte_pmd_ifpga_get_pci_bus() after DPDK22.07
> is released.
> 
> I sent a patch a few days ago:
> https://patches.dpdk.org/project/dpdk/patch/20220628144643.1213026-3-
> david.marchand@redhat.com/
> 
> 
> --
> David Marchand


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH] doc: announce some raw/ifpga API removal
  2022-07-01  7:16       ` Huang, Wei
@ 2022-07-01  7:21         ` David Marchand
  2022-07-01  8:02           ` Huang, Wei
  0 siblings, 1 reply; 16+ messages in thread
From: David Marchand @ 2022-07-01  7:21 UTC (permalink / raw)
  To: Huang, Wei; +Cc: Xu, Rosen, Zhang, Tianfei, dev, Ray Kinsella

On Fri, Jul 1, 2022 at 9:16 AM Huang, Wei <wei.huang@intel.com> wrote:
> > What is the PCI bus used for, in this application?
> >
> In this application, target PCI device is Intel FPGA, it supports some special operation like removing it from PCI bus and rescanning it back from PCI bus,
> So there are two things need to be done directly on rte_pci_bus:
> 1. Rescan PCI bus
>      pci_bus->bus.scan()
> 2. Get pci_dev by specified PCI address, and remove it
>     TAILQ_FOREACH(pci_dev, &pci_bus->device_list, next) {
>         if (!rte_pci_addr_cmp(&pci_dev->addr, &addr))
>                 return pci_dev;
>     }
>     ....
>     pci_drv = pci_dev->driver;
>     pci_drv->remove(pci_dev);

Can't this application use rte_dev_remove and rte_dev_probe?
If not, we should add the missing parts in the API.


-- 
David Marchand


^ permalink raw reply	[flat|nested] 16+ messages in thread

* RE: [PATCH] doc: announce some raw/ifpga API removal
  2022-07-01  7:21         ` David Marchand
@ 2022-07-01  8:02           ` Huang, Wei
  2022-07-01  8:09             ` David Marchand
  0 siblings, 1 reply; 16+ messages in thread
From: Huang, Wei @ 2022-07-01  8:02 UTC (permalink / raw)
  To: David Marchand; +Cc: Xu, Rosen, Zhang, Tianfei, dev, Ray Kinsella



> -----Original Message-----
> From: David Marchand <david.marchand@redhat.com>
> Sent: Friday, July 1, 2022 15:22
> To: Huang, Wei <wei.huang@intel.com>
> Cc: Xu, Rosen <rosen.xu@intel.com>; Zhang, Tianfei <tianfei.zhang@intel.com>;
> dev@dpdk.org; Ray Kinsella <mdr@ashroe.eu>
> Subject: Re: [PATCH] doc: announce some raw/ifpga API removal
> 
> On Fri, Jul 1, 2022 at 9:16 AM Huang, Wei <wei.huang@intel.com> wrote:
> > > What is the PCI bus used for, in this application?
> > >
> > In this application, target PCI device is Intel FPGA, it supports some
> > special operation like removing it from PCI bus and rescanning it back from PCI
> bus, So there are two things need to be done directly on rte_pci_bus:
> > 1. Rescan PCI bus
> >      pci_bus->bus.scan()
> > 2. Get pci_dev by specified PCI address, and remove it
> >     TAILQ_FOREACH(pci_dev, &pci_bus->device_list, next) {
> >         if (!rte_pci_addr_cmp(&pci_dev->addr, &addr))
> >                 return pci_dev;
> >     }
> >     ....
> >     pci_drv = pci_dev->driver;
> >     pci_drv->remove(pci_dev);
> 
> Can't this application use rte_dev_remove and rte_dev_probe?
> If not, we should add the missing parts in the API.
> 
Both rte_dev_remove and rte_dev_probe need rte_device pointer. In this application, it only know the device's PCI address, is there an
existing API to get the rte_pci_device pointer by its PCI address ?

For PCI rescan, I know there is an API called rte_bus_scan(), which seems to be able to replace pci_bus->bus.scan(). But is it reasonable to scan all buses
when I want to only scan PCI ?
Why I need to rescan PCI bus, the answer is current PCI scan only add PCI device to rte_pci_bus when it is bound to kernel driver. In our case, a FPGA
may not bind to any driver, this application bind vfio-pci to it and call bus scan to add it to rte_pci_bus.
> 
> --
> David Marchand


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH] doc: announce some raw/ifpga API removal
  2022-07-01  8:02           ` Huang, Wei
@ 2022-07-01  8:09             ` David Marchand
  2022-07-01  8:14               ` David Marchand
  0 siblings, 1 reply; 16+ messages in thread
From: David Marchand @ 2022-07-01  8:09 UTC (permalink / raw)
  To: Huang, Wei; +Cc: Xu, Rosen, Zhang, Tianfei, dev, Ray Kinsella

On Fri, Jul 1, 2022 at 10:02 AM Huang, Wei <wei.huang@intel.com> wrote:
>
>
>
> > -----Original Message-----
> > From: David Marchand <david.marchand@redhat.com>
> > Sent: Friday, July 1, 2022 15:22
> > To: Huang, Wei <wei.huang@intel.com>
> > Cc: Xu, Rosen <rosen.xu@intel.com>; Zhang, Tianfei <tianfei.zhang@intel.com>;
> > dev@dpdk.org; Ray Kinsella <mdr@ashroe.eu>
> > Subject: Re: [PATCH] doc: announce some raw/ifpga API removal
> >
> > On Fri, Jul 1, 2022 at 9:16 AM Huang, Wei <wei.huang@intel.com> wrote:
> > > > What is the PCI bus used for, in this application?
> > > >
> > > In this application, target PCI device is Intel FPGA, it supports some
> > > special operation like removing it from PCI bus and rescanning it back from PCI
> > bus, So there are two things need to be done directly on rte_pci_bus:
> > > 1. Rescan PCI bus
> > >      pci_bus->bus.scan()
> > > 2. Get pci_dev by specified PCI address, and remove it
> > >     TAILQ_FOREACH(pci_dev, &pci_bus->device_list, next) {
> > >         if (!rte_pci_addr_cmp(&pci_dev->addr, &addr))
> > >                 return pci_dev;
> > >     }
> > >     ....
> > >     pci_drv = pci_dev->driver;
> > >     pci_drv->remove(pci_dev);
> >
> > Can't this application use rte_dev_remove and rte_dev_probe?
> > If not, we should add the missing parts in the API.
> >
> Both rte_dev_remove and rte_dev_probe need rte_device pointer. In this application, it only know the device's PCI address, is there an
> existing API to get the rte_pci_device pointer by its PCI address ?

rte_dev_probe takes a devargs string as input.
int rte_dev_probe(const char *devargs);

You need the rte_device for removing which can be retrieved from
rte_rawdev_info_get.

>
> For PCI rescan, I know there is an API called rte_bus_scan(), which seems to be able to replace pci_bus->bus.scan(). But is it reasonable to scan all buses
> when I want to only scan PCI ?
> Why I need to rescan PCI bus, the answer is current PCI scan only add PCI device to rte_pci_bus when it is bound to kernel driver. In our case, a FPGA
> may not bind to any driver, this application bind vfio-pci to it and call bus scan to add it to rte_pci_bus.

Scanning is called on the relevant bus when probing, see local_dev_probe.


-- 
David Marchand


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH] doc: announce some raw/ifpga API removal
  2022-07-01  8:09             ` David Marchand
@ 2022-07-01  8:14               ` David Marchand
  2022-07-01  8:32                 ` Huang, Wei
  0 siblings, 1 reply; 16+ messages in thread
From: David Marchand @ 2022-07-01  8:14 UTC (permalink / raw)
  To: Huang, Wei; +Cc: Xu, Rosen, Zhang, Tianfei, dev, Ray Kinsella

On Fri, Jul 1, 2022 at 10:09 AM David Marchand
<david.marchand@redhat.com> wrote:
> > > > 2. Get pci_dev by specified PCI address, and remove it
> > > >     TAILQ_FOREACH(pci_dev, &pci_bus->device_list, next) {
> > > >         if (!rte_pci_addr_cmp(&pci_dev->addr, &addr))
> > > >                 return pci_dev;
> > > >     }
> > > >     ....
> > > >     pci_drv = pci_dev->driver;
> > > >     pci_drv->remove(pci_dev);
> > >
> > > Can't this application use rte_dev_remove and rte_dev_probe?
> > > If not, we should add the missing parts in the API.
> > >
> > Both rte_dev_remove and rte_dev_probe need rte_device pointer. In this application, it only know the device's PCI address, is there an
> > existing API to get the rte_pci_device pointer by its PCI address ?
>
> rte_dev_probe takes a devargs string as input.
> int rte_dev_probe(const char *devargs);
>
> You need the rte_device for removing which can be retrieved from
> rte_rawdev_info_get.

Additionnaly, rte_eal_hotplug_{add,remove} do the same jobs, but with
an easier(?) interface.


-- 
David Marchand


^ permalink raw reply	[flat|nested] 16+ messages in thread

* RE: [PATCH] doc: announce some raw/ifpga API removal
  2022-07-01  8:14               ` David Marchand
@ 2022-07-01  8:32                 ` Huang, Wei
  2022-07-01  8:35                   ` David Marchand
  0 siblings, 1 reply; 16+ messages in thread
From: Huang, Wei @ 2022-07-01  8:32 UTC (permalink / raw)
  To: David Marchand; +Cc: Xu, Rosen, Zhang, Tianfei, dev, Ray Kinsella



> -----Original Message-----
> From: David Marchand <david.marchand@redhat.com>
> Sent: Friday, July 1, 2022 16:15
> To: Huang, Wei <wei.huang@intel.com>
> Cc: Xu, Rosen <rosen.xu@intel.com>; Zhang, Tianfei <tianfei.zhang@intel.com>;
> dev@dpdk.org; Ray Kinsella <mdr@ashroe.eu>
> Subject: Re: [PATCH] doc: announce some raw/ifpga API removal
> 
> On Fri, Jul 1, 2022 at 10:09 AM David Marchand <david.marchand@redhat.com>
> wrote:
> > > > > 2. Get pci_dev by specified PCI address, and remove it
> > > > >     TAILQ_FOREACH(pci_dev, &pci_bus->device_list, next) {
> > > > >         if (!rte_pci_addr_cmp(&pci_dev->addr, &addr))
> > > > >                 return pci_dev;
> > > > >     }
> > > > >     ....
> > > > >     pci_drv = pci_dev->driver;
> > > > >     pci_drv->remove(pci_dev);
> > > >
> > > > Can't this application use rte_dev_remove and rte_dev_probe?
> > > > If not, we should add the missing parts in the API.
> > > >
> > > Both rte_dev_remove and rte_dev_probe need rte_device pointer. In
> > > this application, it only know the device's PCI address, is there an existing API
> to get the rte_pci_device pointer by its PCI address ?
> >
> > rte_dev_probe takes a devargs string as input.
> > int rte_dev_probe(const char *devargs);
> >
> > You need the rte_device for removing which can be retrieved from
> > rte_rawdev_info_get.
> 
> Additionnaly, rte_eal_hotplug_{add,remove} do the same jobs, but with an
> easier(?) interface.
> 
> 
I checked rte_eal_hotplug_{add,remove}, they should meet my requirements, thanks a lot.
> --
> David Marchand


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH] doc: announce some raw/ifpga API removal
  2022-07-01  8:32                 ` Huang, Wei
@ 2022-07-01  8:35                   ` David Marchand
  2022-07-07  9:29                     ` David Marchand
  0 siblings, 1 reply; 16+ messages in thread
From: David Marchand @ 2022-07-01  8:35 UTC (permalink / raw)
  To: Huang, Wei; +Cc: Xu, Rosen, Zhang, Tianfei, dev, Ray Kinsella

On Fri, Jul 1, 2022 at 10:32 AM Huang, Wei <wei.huang@intel.com> wrote:
> > > > > > 2. Get pci_dev by specified PCI address, and remove it
> > > > > >     TAILQ_FOREACH(pci_dev, &pci_bus->device_list, next) {
> > > > > >         if (!rte_pci_addr_cmp(&pci_dev->addr, &addr))
> > > > > >                 return pci_dev;
> > > > > >     }
> > > > > >     ....
> > > > > >     pci_drv = pci_dev->driver;
> > > > > >     pci_drv->remove(pci_dev);
> > > > >
> > > > > Can't this application use rte_dev_remove and rte_dev_probe?
> > > > > If not, we should add the missing parts in the API.
> > > > >
> > > > Both rte_dev_remove and rte_dev_probe need rte_device pointer. In
> > > > this application, it only know the device's PCI address, is there an existing API
> > to get the rte_pci_device pointer by its PCI address ?
> > >
> > > rte_dev_probe takes a devargs string as input.
> > > int rte_dev_probe(const char *devargs);
> > >
> > > You need the rte_device for removing which can be retrieved from
> > > rte_rawdev_info_get.
> >
> > Additionnaly, rte_eal_hotplug_{add,remove} do the same jobs, but with an
> > easier(?) interface.
> >
> >
> I checked rte_eal_hotplug_{add,remove}, they should meet my requirements, thanks a lot.

Cool, thanks.


-- 
David Marchand


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH] doc: announce some raw/ifpga API removal
  2022-07-01  8:35                   ` David Marchand
@ 2022-07-07  9:29                     ` David Marchand
  2022-07-07  9:34                       ` Huang, Wei
  0 siblings, 1 reply; 16+ messages in thread
From: David Marchand @ 2022-07-07  9:29 UTC (permalink / raw)
  To: Huang, Wei, Zhang, Tianfei, Xu, Rosen; +Cc: dev, Ray Kinsella

On Fri, Jul 1, 2022 at 10:35 AM David Marchand
<david.marchand@redhat.com> wrote:
> > > > > > Can't this application use rte_dev_remove and rte_dev_probe?
> > > > > > If not, we should add the missing parts in the API.
> > > > > >
> > > > > Both rte_dev_remove and rte_dev_probe need rte_device pointer. In
> > > > > this application, it only know the device's PCI address, is there an existing API
> > > to get the rte_pci_device pointer by its PCI address ?
> > > >
> > > > rte_dev_probe takes a devargs string as input.
> > > > int rte_dev_probe(const char *devargs);
> > > >
> > > > You need the rte_device for removing which can be retrieved from
> > > > rte_rawdev_info_get.
> > >
> > > Additionnaly, rte_eal_hotplug_{add,remove} do the same jobs, but with an
> > > easier(?) interface.
> > >
> > >
> > I checked rte_eal_hotplug_{add,remove}, they should meet my requirements, thanks a lot.
>
> Cool, thanks.

So it seems there is nothing blocking for this API change.
Could you ack the deprecation notice?

Thanks.

-- 
David Marchand


^ permalink raw reply	[flat|nested] 16+ messages in thread

* RE: [PATCH] doc: announce some raw/ifpga API removal
  2022-07-07  9:29                     ` David Marchand
@ 2022-07-07  9:34                       ` Huang, Wei
  0 siblings, 0 replies; 16+ messages in thread
From: Huang, Wei @ 2022-07-07  9:34 UTC (permalink / raw)
  To: David Marchand, Zhang, Tianfei, Xu, Rosen; +Cc: dev, Ray Kinsella



> -----Original Message-----
> From: David Marchand <david.marchand@redhat.com>
> Sent: Thursday, July 7, 2022 17:30
> To: Huang, Wei <wei.huang@intel.com>; Zhang, Tianfei
> <tianfei.zhang@intel.com>; Xu, Rosen <rosen.xu@intel.com>
> Cc: dev@dpdk.org; Ray Kinsella <mdr@ashroe.eu>
> Subject: Re: [PATCH] doc: announce some raw/ifpga API removal
> 
> On Fri, Jul 1, 2022 at 10:35 AM David Marchand <david.marchand@redhat.com>
> wrote:
> > > > > > > Can't this application use rte_dev_remove and rte_dev_probe?
> > > > > > > If not, we should add the missing parts in the API.
> > > > > > >
> > > > > > Both rte_dev_remove and rte_dev_probe need rte_device pointer.
> > > > > > In this application, it only know the device's PCI address, is
> > > > > > there an existing API
> > > > to get the rte_pci_device pointer by its PCI address ?
> > > > >
> > > > > rte_dev_probe takes a devargs string as input.
> > > > > int rte_dev_probe(const char *devargs);
> > > > >
> > > > > You need the rte_device for removing which can be retrieved from
> > > > > rte_rawdev_info_get.
> > > >
> > > > Additionnaly, rte_eal_hotplug_{add,remove} do the same jobs, but
> > > > with an
> > > > easier(?) interface.
> > > >
> > > >
> > > I checked rte_eal_hotplug_{add,remove}, they should meet my requirements,
> thanks a lot.
> >
> > Cool, thanks.
> 
> So it seems there is nothing blocking for this API change.
> Could you ack the deprecation notice?
> 
This API can be removed.
Acked

> Thanks.
> 
> --
> David Marchand


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH] doc: announce some raw/ifpga API removal
  2022-06-30  9:41 [PATCH] doc: announce some raw/ifpga API removal David Marchand
  2022-07-01  6:15 ` Xu, Rosen
@ 2022-07-12 14:24 ` Thomas Monjalon
  2022-07-12 15:33 ` Maxime Coquelin
  2022-07-16 16:56 ` Thomas Monjalon
  3 siblings, 0 replies; 16+ messages in thread
From: Thomas Monjalon @ 2022-07-12 14:24 UTC (permalink / raw)
  To: David Marchand; +Cc: dev, rosen.xu, tianfei.zhang, Ray Kinsella

30/06/2022 11:41, David Marchand:
> rte_pmd_ifpga_get_pci_bus() documentation is vague and it is unclear
> what could be done with it.
> On the other hand, EAL provides a standard API to retrieve a bus object
> by name.
> 
> Announce removal of this driver specific API for v22.11.
> 
> Signed-off-by: David Marchand <david.marchand@redhat.com>

Acked-by: Thomas Monjalon <thomas@monjalon.net>

Some educational work is required to better explain probing mechanisms
to the users it seems.



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH] doc: announce some raw/ifpga API removal
  2022-06-30  9:41 [PATCH] doc: announce some raw/ifpga API removal David Marchand
  2022-07-01  6:15 ` Xu, Rosen
  2022-07-12 14:24 ` Thomas Monjalon
@ 2022-07-12 15:33 ` Maxime Coquelin
  2022-07-16 16:56 ` Thomas Monjalon
  3 siblings, 0 replies; 16+ messages in thread
From: Maxime Coquelin @ 2022-07-12 15:33 UTC (permalink / raw)
  To: David Marchand, dev, rosen.xu, tianfei.zhang; +Cc: Ray Kinsella



On 6/30/22 11:41, David Marchand wrote:
> rte_pmd_ifpga_get_pci_bus() documentation is vague and it is unclear
> what could be done with it.
> On the other hand, EAL provides a standard API to retrieve a bus object
> by name.
> 
> Announce removal of this driver specific API for v22.11.
> 
> Signed-off-by: David Marchand <david.marchand@redhat.com>
> ---
> A RFC series of the intended changes is available at:
> https://patches.dpdk.org/project/dpdk/list/?series=23811&state=%2A&archive=both
> 
> ---
>   doc/guides/rel_notes/deprecation.rst | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
> index 4e5b23c53d..64d649777a 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -119,6 +119,8 @@ Deprecation Notices
>   * metrics: The function ``rte_metrics_init`` will have a non-void return
>     in order to notify errors instead of calling ``rte_exit``.
>   
> +* raw/ifgpa: The ``rte_pmd_ifpga_get_pci_bus`` will be removed in 22.11.
> +
>   * raw/ioat: The ``ioat`` rawdev driver has been deprecated, since it's
>     functionality is provided through the new ``dmadev`` infrastructure.
>     To continue to use hardware previously supported by the ``ioat`` rawdev driver,

Acked-by: Maxime Coquelin <maxime.coquelin@redhat.com>

Thanks,
Maxime


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH] doc: announce some raw/ifpga API removal
  2022-06-30  9:41 [PATCH] doc: announce some raw/ifpga API removal David Marchand
                   ` (2 preceding siblings ...)
  2022-07-12 15:33 ` Maxime Coquelin
@ 2022-07-16 16:56 ` Thomas Monjalon
  3 siblings, 0 replies; 16+ messages in thread
From: Thomas Monjalon @ 2022-07-16 16:56 UTC (permalink / raw)
  To: dev, David Marchand; +Cc: rosen.xu, tianfei.zhang, Ray Kinsella

30/06/2022 11:41, David Marchand:
> rte_pmd_ifpga_get_pci_bus() documentation is vague and it is unclear
> what could be done with it.
> On the other hand, EAL provides a standard API to retrieve a bus object
> by name.
> 
> Announce removal of this driver specific API for v22.11.
> 
> Signed-off-by: David Marchand <david.marchand@redhat.com>

Acked-by: Wei Huang <wei.huang@intel.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Maxime Coquelin <maxime.coquelin@redhat.com>

Applied, thanks.



^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2022-07-16 16:56 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-30  9:41 [PATCH] doc: announce some raw/ifpga API removal David Marchand
2022-07-01  6:15 ` Xu, Rosen
2022-07-01  6:25   ` Huang, Wei
2022-07-01  7:00     ` David Marchand
2022-07-01  7:16       ` Huang, Wei
2022-07-01  7:21         ` David Marchand
2022-07-01  8:02           ` Huang, Wei
2022-07-01  8:09             ` David Marchand
2022-07-01  8:14               ` David Marchand
2022-07-01  8:32                 ` Huang, Wei
2022-07-01  8:35                   ` David Marchand
2022-07-07  9:29                     ` David Marchand
2022-07-07  9:34                       ` Huang, Wei
2022-07-12 14:24 ` Thomas Monjalon
2022-07-12 15:33 ` Maxime Coquelin
2022-07-16 16:56 ` Thomas Monjalon

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).