[PATCH] Also look for dmi information in /sys/class
Guido Günther
agx at sigxcpu.org
Thu Jan 7 09:13:51 UTC 2010
older kernels such as 2.6.26 have it there.
---
src/node_device/node_device_udev.c | 7 ++++++-
src/node_device/node_device_udev.h | 1 +
2 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/src/node_device/node_device_udev.c b/src/node_device/node_device_udev.c
index 22c5f2b..7a9c1e5 100644
--- a/src/node_device/node_device_udev.c
+++ b/src/node_device/node_device_udev.c
@@ -1407,7 +1407,12 @@ static int udevSetupSystemDev(void)
device = udev_device_new_from_syspath(udev, DMI_DEVPATH);
if (device == NULL) {
VIR_ERROR("Failed to get udev device for syspath '%s'\n", DMI_DEVPATH);
- goto out;
+
+ device = udev_device_new_from_syspath(udev, DMI_DEVPATH_FALLBACK);
+ if (device == NULL) {
+ VIR_ERROR("Failed to get udev device for syspath '%s'\n", DMI_DEVPATH_FALLBACK);
+ goto out;
+ }
}
data = &def->caps->data;
diff --git a/src/node_device/node_device_udev.h b/src/node_device/node_device_udev.h
index 0fd39ae..6c83412 100644
--- a/src/node_device/node_device_udev.h
+++ b/src/node_device/node_device_udev.h
@@ -26,6 +26,7 @@
#define SYSFS_DATA_SIZE 4096
#define DRV_STATE_UDEV_MONITOR(ds) ((struct udev_monitor *)((ds)->privateData))
#define DMI_DEVPATH "/sys/devices/virtual/dmi/id"
+#define DMI_DEVPATH_FALLBACK "/sys/class/dmi/id"
#define PROPERTY_FOUND 0
#define PROPERTY_MISSING 1
#define PROPERTY_ERROR -1
--
1.6.6
--OXfL5xGRrasGEqWY--
More information about the Pkg-libvirt-maintainers
mailing list