| 547 | } |
| 548 | |
| 549 | static int |
| 550 | vdev_probe(void) |
| 551 | { |
| 552 | struct rte_vdev_device *dev; |
| 553 | int r, ret = 0; |
| 554 | |
| 555 | /* call the init function for each virtual device */ |
| 556 | TAILQ_FOREACH(dev, &vdev_device_list, next) { |
| 557 | /* we don't use the vdev lock here, as it's only used in DPDK |
| 558 | * initialization; and we don't want to hold such a lock when |
| 559 | * we call each driver probe. |
| 560 | */ |
| 561 | |
| 562 | r = vdev_probe_all_drivers(dev); |
| 563 | if (r != 0) { |
| 564 | if (r == -EEXIST) |
| 565 | continue; |
| 566 | VDEV_LOG(ERR, "failed to initialize %s device", |
| 567 | rte_vdev_device_name(dev)); |
| 568 | ret = -1; |
| 569 | } |
| 570 | } |
| 571 | |
| 572 | return ret; |
| 573 | } |
| 574 | |
| 575 | static int |
| 576 | vdev_cleanup(void) |
nothing calls this directly
no test coverage detected