forked from rpms/libvirt
52 lines
1.8 KiB
Diff
52 lines
1.8 KiB
Diff
From dce9613ddab9d780ce9aabeb9a084ffec307899c Mon Sep 17 00:00:00 2001
|
|
Message-Id: <dce9613ddab9d780ce9aabeb9a084ffec307899c@dist-git>
|
|
From: Pavel Hrdina <phrdina@redhat.com>
|
|
Date: Mon, 20 May 2019 10:12:55 +0200
|
|
Subject: [PATCH] util: skip RDMA detection for non-PCI network devices
|
|
|
|
Only PCI devices have '/sys/class/net/<ifname>/device/resource' so we
|
|
need to skip this check for all other network devices.
|
|
|
|
Without this patch and RDMA enabled libvirt will not detect any network
|
|
device that doesn't have the path above which includes 'lo', 'virbr',
|
|
'tun', etc.
|
|
|
|
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1639258
|
|
|
|
Reviewed-by: Andrea Bolognani <abologna@redhat.com>
|
|
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
|
|
(cherry picked from commit f38ef0fac0582ac0cbb749af9d3f8ba515a6084a)
|
|
|
|
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1693299
|
|
|
|
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
|
|
Message-Id: <5d2c32fd3f2d7e3f9664d395c00cdfc942c738ce.1558339954.git.phrdina@redhat.com>
|
|
Reviewed-by: Andrea Bolognani <abologna@redhat.com>
|
|
---
|
|
src/util/virnetdev.c | 8 +++++++-
|
|
1 file changed, 7 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/src/util/virnetdev.c b/src/util/virnetdev.c
|
|
index b250af9e2c..9ca3ce69bc 100644
|
|
--- a/src/util/virnetdev.c
|
|
+++ b/src/util/virnetdev.c
|
|
@@ -3016,8 +3016,14 @@ virNetDevRDMAFeature(const char *ifname,
|
|
|
|
if (virAsprintf(ð_devpath, SYSFS_NET_DIR "%s/device/resource", ifname) < 0)
|
|
goto cleanup;
|
|
- if (!virFileExists(eth_devpath))
|
|
+
|
|
+ /* If /sys/class/net/<ifname>/device/resource doesn't exist it is not a PCI
|
|
+ * device and therefore it will not have RDMA. */
|
|
+ if (!virFileExists(eth_devpath)) {
|
|
+ ret = 0;
|
|
goto cleanup;
|
|
+ }
|
|
+
|
|
if (virFileReadAll(eth_devpath, RESOURCE_FILE_LEN, ð_res_buf) < 0)
|
|
goto cleanup;
|
|
|
|
--
|
|
2.22.0
|
|
|