From 90ae175f1e0f126d93db1f9c29a3f44d76087e8d Mon Sep 17 00:00:00 2001
From: Bob Gilligan <gilligan@vyatta.com>
Date: Fri, 28 Aug 2009 15:38:56 -0700
Subject: Bugfix 4793: Load the acpi_cpufreq module on certain processors.
 (cherry picked from commit 6202e7c5f0e8e0657c49e9d8422b6ef45b9ff84b)

---
 etc/init.d/vyatta-ofr | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

(limited to 'etc/init.d/vyatta-ofr')

diff --git a/etc/init.d/vyatta-ofr b/etc/init.d/vyatta-ofr
index 4fb4c1e..39e9904 100755
--- a/etc/init.d/vyatta-ofr
+++ b/etc/init.d/vyatta-ofr
@@ -125,7 +125,20 @@ cleanup_raid()
     rmmod $MD_MODULES > /tmp/vyatta_raid_cleanup_log 2>&1
 }
 
-
+#
+# Load the acpi_cpufreq kernel module, but only for certain processors.
+# Some Intel CPUs need to have it loaded in order to initialize 
+# properly.
+#
+load_acpi_cpufreq()
+{
+    manuf=`dmidecode -s processor-manufacturer`
+    family=`dmidecode -s processor-family`
+    if [ "$manuf" = "Intel" -a "$family" = "Xeon" ]; then
+	logger -t "$progname" -p user.notice "loading acpi_cpufreq module"
+	modprobe acpi_cpufreq
+    fi
+}
 
 start ()
 {
@@ -141,6 +154,7 @@ start ()
 	${vyatta_sbindir}/${s}.init start || (log_end_msg $? && return)
     done
     load_bootfile
+    load_acpi_cpufreq
     cleanup_raid
     chmod g-w,o-w /
 
-- 
cgit v1.2.3