MCPcopy Create free account
hub / github.com/F-Stack/f-stack / ifpga_rawdev_destroy

Function ifpga_rawdev_destroy

dpdk/drivers/raw/ifpga/ifpga_rawdev.c:1633–1665  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1631}
1632
1633static int
1634ifpga_rawdev_destroy(struct rte_pci_device *pci_dev)
1635{
1636 int ret;
1637 struct rte_rawdev *rawdev;
1638 char name[RTE_RAWDEV_NAME_MAX_LEN];
1639
1640 if (!pci_dev) {
1641 IFPGA_RAWDEV_PMD_ERR("Invalid pci_dev of the device!");
1642 ret = -EINVAL;
1643 return ret;
1644 }
1645
1646 memset(name, 0, sizeof(name));
1647 snprintf(name, RTE_RAWDEV_NAME_MAX_LEN, IFPGA_RAWDEV_NAME_FMT,
1648 pci_dev->addr.bus, pci_dev->addr.devid, pci_dev->addr.function);
1649
1650 IFPGA_RAWDEV_PMD_INFO("Closing %s on NUMA node %d",
1651 name, rte_socket_id());
1652
1653 rawdev = rte_rawdev_pmd_get_named_dev(name);
1654 if (!rawdev) {
1655 IFPGA_RAWDEV_PMD_ERR("Invalid device name (%s)", name);
1656 return -EINVAL;
1657 }
1658
1659 /* rte_rawdev_close is called by pmd_release */
1660 ret = rte_rawdev_pmd_release(rawdev);
1661 if (ret)
1662 IFPGA_RAWDEV_PMD_DEBUG("Device cleanup failed");
1663
1664 return ret;
1665}
1666
1667static int
1668ifpga_rawdev_pci_probe(struct rte_pci_driver *pci_drv __rte_unused,

Callers 1

ifpga_rawdev_pci_removeFunction · 0.85

Calls 5

memsetFunction · 0.85
snprintfFunction · 0.85
rte_socket_idFunction · 0.85
rte_rawdev_pmd_releaseFunction · 0.85

Tested by

no test coverage detected