The functions rte_dev_probe() and rte_dev_remove() are new
in DPDK 18.11 so they got the experimental tag by policy.
However they are too much basic functions for being skipped
by strict applications which do not use experimental functions.
The alternative is to use rte_eal_hotplug_add() and
rte_eal_hotplug_remove(), but their API requires the application
to parse the devargs string in order to provide bus name,
device name and driver arguments.
The new function rte_dev_probe() is really simpler to use and
more flexible by accepting any devargs string.
Let's encourage applications to use it.
The old functions rte_eal_hotplug_* may be deprecated later.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Kevin Traynor <ktraynor@redhat.com>
Tested-by: Kevin Traynor <ktraynor@redhat.com>
rte_dev_probe(const char *devargs)
{
struct eal_dev_mp_req req;
rte_dev_probe(const char *devargs)
{
struct eal_dev_mp_req req;
rte_dev_remove(struct rte_device *dev)
{
struct eal_dev_mp_req req;
rte_dev_remove(struct rte_device *dev)
{
struct eal_dev_mp_req req;
const char *drvargs);
/**
const char *drvargs);
/**
- * @warning
- * @b EXPERIMENTAL: this API may change without prior notice
- *
* Add matching devices.
*
* In multi-process, it will request other processes to add the same device.
* Add matching devices.
*
* In multi-process, it will request other processes to add the same device.
* @return
* 0 on success, negative on error.
*/
* @return
* 0 on success, negative on error.
*/
-int __rte_experimental rte_dev_probe(const char *devargs);
+int rte_dev_probe(const char *devargs);
/**
* Hotplug remove a given device from a specific bus.
/**
* Hotplug remove a given device from a specific bus.
int rte_eal_hotplug_remove(const char *busname, const char *devname);
/**
int rte_eal_hotplug_remove(const char *busname, const char *devname);
/**
- * @warning
- * @b EXPERIMENTAL: this API may change without prior notice
- *
* Remove one device.
*
* In multi-process, it will request other processes to remove the same device.
* Remove one device.
*
* In multi-process, it will request other processes to remove the same device.
* @return
* 0 on success, negative on error.
*/
* @return
* 0 on success, negative on error.
*/
-int __rte_experimental rte_dev_remove(struct rte_device *dev);
+int rte_dev_remove(struct rte_device *dev);
/**
* Device comparison function.
/**
* Device comparison function.
+ rte_dev_probe;
+ rte_dev_remove;
rte_eal_get_runtime_dir;
rte_eal_hotplug_add;
rte_eal_hotplug_remove;
rte_eal_get_runtime_dir;
rte_eal_hotplug_add;
rte_eal_hotplug_remove;
rte_dev_is_probed;
rte_dev_iterator_init;
rte_dev_iterator_next;
rte_dev_is_probed;
rte_dev_iterator_init;
rte_dev_iterator_next;
- rte_dev_probe;
- rte_dev_remove;
rte_devargs_add;
rte_devargs_dump;
rte_devargs_insert;
rte_devargs_add;
rte_devargs_dump;
rte_devargs_insert;