20/01/2022 15:51, Rohit Raj:
> Hi Thomas,
> 
> This "rte_bus_close" API is introduced to do the opposite of what 
> "rte_bus_probe" does. Just like there are plug and unplug APIs for plugging 
> and unplugging a single device.
> 
> The API you mentioned, "rte_dev_remove" supports only rte_device.  But we 
> also need to close/remove private devices of dpaa and fslmc buses which are 
> not exposed directly to user (eg: mempool device). 
> Note that these private devices/bus objects are not associated with a 
> particular rte_device but they are available as a resource to be used by any 
> of the device based on these hardware specific buses. 
> So, to close these devices, we need a new API which can do this for us. That 
> is why "rte_bus_close" is required.

You mean some resources are associated to a bus but not to a device?
It lools very weird. A resource on a bus *is* a device.

PS: please avoid top-post

> From: Thomas Monjalon <tho...@monjalon.net>
> > 10/01/2022 06:26, rohit....@nxp.com:
> > > From: Rohit Raj <rohit....@nxp.com>
> > >
> > > As per the current code we have API for bus probe, but the bus close
> > > API is missing. This breaks the multi process scenarios as objects are
> > > not cleaned while terminating the secondary processes.
> > >
> > > This patch adds a new API rte_bus_close() for cleanup of bus objects
> > > which were acquired during probe.
> > 
> > I don't understand how closing all devices of a bus will help better than 
> > just
> > closing all devices.
> > 
> > As Ferruh already suggested in the past, we could force closing all devices 
> > in
> > rte_eal_cleanup().
> > And we already have the function rte_dev_remove().



Reply via email to