From ec8729040244b889de4cb004804a4e5009806cc5 Mon Sep 17 00:00:00 2001 From: Jean Delvare Date: Fri, 5 Dec 2008 22:56:30 +0000 Subject: [PATCH] Alternatively look for DMI data in /sys/class/dmi/id, as /sys/devices/virtual/dmi/id only exists since kernel 2.6.28. git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@5530 7894878c-1315-0410-8ee3-d5d059ff63e0 --- prog/detect/sensors-detect | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/prog/detect/sensors-detect b/prog/detect/sensors-detect index 754b5da3..3c17afe9 100755 --- a/prog/detect/sensors-detect +++ b/prog/detect/sensors-detect @@ -2150,11 +2150,13 @@ sub initialize_dmi_data 'System Manufacturer' => 1, 'System Name' => 1, ); + my $dmi_id_dir; # First try reading the strings from sysfs if available - if (-d "$sysfs_root/devices/virtual/dmi/id") { + if (-d ($dmi_id_dir = "$sysfs_root/devices/virtual/dmi/id") # kernel >= 2.6.28 + || -d ($dmi_id_dir = "$sysfs_root/class/dmi/id")) { foreach my $k (keys %items) { - $dmi{$k} = sysfs_device_attribute("$sysfs_root/devices/virtual/dmi/id", $k); + $dmi{$k} = sysfs_device_attribute($dmi_id_dir, $k); } } else { # Else fallback on calling dmidecode