From c52dd39411299ce83c5d8227b676b1229a9e9e11 Mon Sep 17 00:00:00 2001 From: Thomas Monjalon Date: Mon, 6 Nov 2017 02:56:09 +0100 Subject: [PATCH] bus/pci: fix namespace of sysfs path function The function pci_get_sysfs_path was moved from EAL to the PCI driver. The namespace is now fixed by adding "rte_" prefix. The map files are fixed by removing the symbol from EAL and adding it to the PCI driver. It is an API break but it is probably not used by applications. Anyway this API is already broken by the move in a new header file. Fixes: c752998b5e2e ("pci: introduce library and driver") Signed-off-by: Thomas Monjalon Acked-by: Gaetan Rivet --- drivers/bus/pci/linux/pci.c | 6 +++--- drivers/bus/pci/linux/pci_uio.c | 10 +++++----- drivers/bus/pci/linux/pci_vfio.c | 6 +++--- drivers/bus/pci/pci_common.c | 2 +- drivers/bus/pci/rte_bus_pci.h | 2 +- drivers/bus/pci/rte_bus_pci_version.map | 1 + drivers/net/szedata2/rte_eth_szedata2.c | 2 +- lib/librte_eal/rte_eal_version.map | 1 - 8 files changed, 15 insertions(+), 15 deletions(-) diff --git a/drivers/bus/pci/linux/pci.c b/drivers/bus/pci/linux/pci.c index 7be74708ab..85c90e47ef 100644 --- a/drivers/bus/pci/linux/pci.c +++ b/drivers/bus/pci/linux/pci.c @@ -395,7 +395,7 @@ pci_update_device(const struct rte_pci_addr *addr) char filename[PATH_MAX]; snprintf(filename, sizeof(filename), "%s/" PCI_PRI_FMT, - pci_get_sysfs_path(), addr->domain, addr->bus, addr->devid, + rte_pci_get_sysfs_path(), addr->domain, addr->bus, addr->devid, addr->function); return pci_scan_one(filename, addr); @@ -468,7 +468,7 @@ rte_pci_scan(void) RTE_LOG(DEBUG, EAL, "VFIO PCI modules not loaded\n"); #endif - dir = opendir(pci_get_sysfs_path()); + dir = opendir(rte_pci_get_sysfs_path()); if (dir == NULL) { RTE_LOG(ERR, EAL, "%s(): opendir failed: %s\n", __func__, strerror(errno)); @@ -483,7 +483,7 @@ rte_pci_scan(void) continue; snprintf(dirname, sizeof(dirname), "%s/%s", - pci_get_sysfs_path(), e->d_name); + rte_pci_get_sysfs_path(), e->d_name); if (pci_scan_one(dirname, &addr) < 0) goto error; diff --git a/drivers/bus/pci/linux/pci_uio.c b/drivers/bus/pci/linux/pci_uio.c index 8cf6218fb4..92b7f02755 100644 --- a/drivers/bus/pci/linux/pci_uio.c +++ b/drivers/bus/pci/linux/pci_uio.c @@ -164,14 +164,14 @@ pci_get_uio_dev(struct rte_pci_device *dev, char *dstbuf, * or uio:uioX */ snprintf(dirname, sizeof(dirname), - "%s/" PCI_PRI_FMT "/uio", pci_get_sysfs_path(), + "%s/" PCI_PRI_FMT "/uio", rte_pci_get_sysfs_path(), loc->domain, loc->bus, loc->devid, loc->function); dir = opendir(dirname); if (dir == NULL) { /* retry with the parent directory */ snprintf(dirname, sizeof(dirname), - "%s/" PCI_PRI_FMT, pci_get_sysfs_path(), + "%s/" PCI_PRI_FMT, rte_pci_get_sysfs_path(), loc->domain, loc->bus, loc->devid, loc->function); dir = opendir(dirname); @@ -323,7 +323,7 @@ pci_uio_map_resource_by_index(struct rte_pci_device *dev, int res_idx, /* update devname for mmap */ snprintf(devname, sizeof(devname), "%s/" PCI_PRI_FMT "/resource%d", - pci_get_sysfs_path(), + rte_pci_get_sysfs_path(), loc->domain, loc->bus, loc->devid, loc->function, res_idx); @@ -432,7 +432,7 @@ pci_uio_ioport_map(struct rte_pci_device *dev, int bar, /* open and read addresses of the corresponding resource in sysfs */ snprintf(filename, sizeof(filename), "%s/" PCI_PRI_FMT "/resource", - pci_get_sysfs_path(), dev->addr.domain, dev->addr.bus, + rte_pci_get_sysfs_path(), dev->addr.domain, dev->addr.bus, dev->addr.devid, dev->addr.function); f = fopen(filename, "r"); if (f == NULL) { @@ -454,7 +454,7 @@ pci_uio_ioport_map(struct rte_pci_device *dev, int bar, goto error; } snprintf(filename, sizeof(filename), "%s/" PCI_PRI_FMT "/resource%d", - pci_get_sysfs_path(), dev->addr.domain, dev->addr.bus, + rte_pci_get_sysfs_path(), dev->addr.domain, dev->addr.bus, dev->addr.devid, dev->addr.function, bar); /* mmap the pci resource */ diff --git a/drivers/bus/pci/linux/pci_vfio.c b/drivers/bus/pci/linux/pci_vfio.c index 543baa2ed1..1f93fa4d98 100644 --- a/drivers/bus/pci/linux/pci_vfio.c +++ b/drivers/bus/pci/linux/pci_vfio.c @@ -465,7 +465,7 @@ pci_vfio_map_resource_primary(struct rte_pci_device *dev) snprintf(pci_addr, sizeof(pci_addr), PCI_PRI_FMT, loc->domain, loc->bus, loc->devid, loc->function); - ret = rte_vfio_setup_device(pci_get_sysfs_path(), pci_addr, + ret = rte_vfio_setup_device(rte_pci_get_sysfs_path(), pci_addr, &vfio_dev_fd, &device_info); if (ret) return ret; @@ -582,7 +582,7 @@ pci_vfio_map_resource_secondary(struct rte_pci_device *dev) snprintf(pci_addr, sizeof(pci_addr), PCI_PRI_FMT, loc->domain, loc->bus, loc->devid, loc->function); - ret = rte_vfio_setup_device(pci_get_sysfs_path(), pci_addr, + ret = rte_vfio_setup_device(rte_pci_get_sysfs_path(), pci_addr, &vfio_dev_fd, &device_info); if (ret) return ret; @@ -662,7 +662,7 @@ pci_vfio_unmap_resource(struct rte_pci_device *dev) return -1; } - ret = rte_vfio_release_device(pci_get_sysfs_path(), pci_addr, + ret = rte_vfio_release_device(rte_pci_get_sysfs_path(), pci_addr, dev->intr_handle.vfio_dev_fd); if (ret < 0) { RTE_LOG(ERR, EAL, diff --git a/drivers/bus/pci/pci_common.c b/drivers/bus/pci/pci_common.c index 754219b0cf..104fdf9049 100644 --- a/drivers/bus/pci/pci_common.c +++ b/drivers/bus/pci/pci_common.c @@ -59,7 +59,7 @@ extern struct rte_pci_bus rte_pci_bus; #define SYSFS_PCI_DEVICES "/sys/bus/pci/devices" -const char *pci_get_sysfs_path(void) +const char *rte_pci_get_sysfs_path(void) { const char *path = NULL; diff --git a/drivers/bus/pci/rte_bus_pci.h b/drivers/bus/pci/rte_bus_pci.h index c0b619f29d..d4a2996419 100644 --- a/drivers/bus/pci/rte_bus_pci.h +++ b/drivers/bus/pci/rte_bus_pci.h @@ -60,7 +60,7 @@ extern "C" { #include /** Pathname of PCI devices directory. */ -const char *pci_get_sysfs_path(void); +const char *rte_pci_get_sysfs_path(void); /* Forward declarations */ struct rte_pci_device; diff --git a/drivers/bus/pci/rte_bus_pci_version.map b/drivers/bus/pci/rte_bus_pci_version.map index ee67033b09..27e9c4f101 100644 --- a/drivers/bus/pci/rte_bus_pci_version.map +++ b/drivers/bus/pci/rte_bus_pci_version.map @@ -2,6 +2,7 @@ DPDK_17.11 { global: rte_pci_dump; + rte_pci_get_sysfs_path; rte_pci_ioport_map; rte_pci_ioport_read; rte_pci_ioport_unmap; diff --git a/drivers/net/szedata2/rte_eth_szedata2.c b/drivers/net/szedata2/rte_eth_szedata2.c index c5486b72d9..403cfdbb39 100644 --- a/drivers/net/szedata2/rte_eth_szedata2.c +++ b/drivers/net/szedata2/rte_eth_szedata2.c @@ -1540,7 +1540,7 @@ rte_szedata2_eth_dev_init(struct rte_eth_dev *dev) return -EINVAL; } snprintf(rsc_filename, PATH_MAX, - "%s/" PCI_PRI_FMT "/resource%u", pci_get_sysfs_path(), + "%s/" PCI_PRI_FMT "/resource%u", rte_pci_get_sysfs_path(), pci_addr->domain, pci_addr->bus, pci_addr->devid, pci_addr->function, PCI_RESOURCE_NUMBER); fd = open(rsc_filename, O_RDWR); diff --git a/lib/librte_eal/rte_eal_version.map b/lib/librte_eal/rte_eal_version.map index 10f4452ef9..19b1119bf3 100644 --- a/lib/librte_eal/rte_eal_version.map +++ b/lib/librte_eal/rte_eal_version.map @@ -124,7 +124,6 @@ DPDK_16.04 { DPDK_16.07 { global: - pci_get_sysfs_path; rte_keepalive_mark_sleep; rte_keepalive_register_relay_callback; rte_rtm_supported; -- 2.20.1