pci: remove unused unbind support

No device driver sets the unbind flag in current public code base.
Therefore it is good time to remove the unused dead code.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
This commit is contained in:
Stephen Hemminger 2016-12-07 10:04:36 -08:00 committed by Thomas Monjalon
parent f4ce209a8c
commit 3030127eb2
4 changed files with 0 additions and 55 deletions

View File

@ -87,15 +87,6 @@
* enabling bus master.
*/
/* unbind kernel driver for this device */
int
pci_unbind_kernel_driver(struct rte_pci_device *dev __rte_unused)
{
RTE_LOG(ERR, EAL, "RTE_PCI_DRV_FORCE_UNBIND flag is not implemented "
"for BSD\n");
return -ENOTSUP;
}
/* Map pci device */
int
rte_eal_pci_map_device(struct rte_pci_device *dev)

View File

@ -203,11 +203,6 @@ rte_eal_pci_probe_one_driver(struct rte_pci_driver *dr, struct rte_pci_device *d
ret = rte_eal_pci_map_device(dev);
if (ret != 0)
return ret;
} else if (dr->drv_flags & RTE_PCI_DRV_FORCE_UNBIND &&
rte_eal_process_type() == RTE_PROC_PRIMARY) {
/* unbind current driver */
if (pci_unbind_kernel_driver(dev) < 0)
return -1;
}
/* reference driver structure */

View File

@ -208,8 +208,6 @@ struct rte_pci_driver {
/** Device needs PCI BAR mapping (done with either IGB_UIO or VFIO) */
#define RTE_PCI_DRV_NEED_MAPPING 0x0001
/** Device needs to be unbound even if no module is provided */
#define RTE_PCI_DRV_FORCE_UNBIND 0x0004
/** Device driver supports link state interrupt */
#define RTE_PCI_DRV_INTR_LSC 0x0008
/** Device driver supports detaching capability */

View File

@ -54,45 +54,6 @@
* IGB_UIO driver (or doesn't initialize, if the device wasn't bound to it).
*/
/* unbind kernel driver for this device */
int
pci_unbind_kernel_driver(struct rte_pci_device *dev)
{
int n;
FILE *f;
char filename[PATH_MAX];
char buf[BUFSIZ];
struct rte_pci_addr *loc = &dev->addr;
/* open /sys/bus/pci/devices/AAAA:BB:CC.D/driver */
snprintf(filename, sizeof(filename),
"%s/" PCI_PRI_FMT "/driver/unbind", pci_get_sysfs_path(),
loc->domain, loc->bus, loc->devid, loc->function);
f = fopen(filename, "w");
if (f == NULL) /* device was not bound */
return 0;
n = snprintf(buf, sizeof(buf), PCI_PRI_FMT "\n",
loc->domain, loc->bus, loc->devid, loc->function);
if ((n < 0) || (n >= (int)sizeof(buf))) {
RTE_LOG(ERR, EAL, "%s(): snprintf failed\n", __func__);
goto error;
}
if (fwrite(buf, n, 1, f) == 0) {
RTE_LOG(ERR, EAL, "%s(): could not write to %s\n", __func__,
filename);
goto error;
}
fclose(f);
return 0;
error:
fclose(f);
return -1;
}
static int
pci_get_kernel_driver_by_path(const char *filename, char *dri_name)
{