rpms/kernel/devel linux-2.6-cpufreq-ppc-suspend-clusterfuck.patch, NONE, 1.1 kernel.spec, 1.1626, 1.1627

Dave Jones davej at fedoraproject.org
Fri Jul 10 21:12:19 UTC 2009


Author: davej

Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv11127

Modified Files:
	kernel.spec 
Added Files:
	linux-2.6-cpufreq-ppc-suspend-clusterfuck.patch 
Log Message:
Don't jump through hoops that ppc powerbooks have to on sensible systems
  in cpufreq_suspend.

linux-2.6-cpufreq-ppc-suspend-clusterfuck.patch:

--- NEW FILE linux-2.6-cpufreq-ppc-suspend-clusterfuck.patch ---
diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
index 5cc77fb..8d3b3d1 100644
--- a/drivers/cpufreq/cpufreq.c
+++ b/drivers/cpufreq/cpufreq.c
@@ -1288,6 +1288,14 @@ static int cpufreq_suspend(struct sys_device *sysdev, pm_message_t pmsg)
 
 	dprintk("suspending cpu %u\n", cpu);
 
+	/*
+	 * This whole bogosity is here because Powerbooks are made of fail.
+	 * No sane platform should need any of the code below to be run.
+	 * (it's entirely the wrong thing to do, as driver->get may
+	 *  reenable interrupts on some architectures).
+	 */
+
+#ifdef __powerpc__
 	if (!cpu_online(cpu))
 		return 0;
 
@@ -1346,6 +1354,7 @@ static int cpufreq_suspend(struct sys_device *sysdev, pm_message_t pmsg)
 
 out:
 	cpufreq_cpu_put(cpu_policy);
+#endif	/* __powerpc__ */
 	return ret;
 }
 
@@ -1365,6 +1374,11 @@ static int cpufreq_resume(struct sys_device *sysdev)
 
 	dprintk("resuming cpu %u\n", cpu);
 
+	/* As with the ->suspend method, all the code below is
+	 * only necessary because Powerbooks suck.
+	 * See commit 42d4dc3f4e1e for jokes. */
+#ifdef __powerpc__
+
 	if (!cpu_online(cpu))
 		return 0;
 
@@ -1428,6 +1442,7 @@ out:
 	schedule_work(&cpu_policy->update);
 fail:
 	cpufreq_cpu_put(cpu_policy);
+#endif	/* __powerpc__ */
 	return ret;
 }
 


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.1626
retrieving revision 1.1627
diff -u -p -r1.1626 -r1.1627
--- kernel.spec	10 Jul 2009 21:10:10 -0000	1.1626
+++ kernel.spec	10 Jul 2009 21:12:18 -0000	1.1627
@@ -645,6 +645,8 @@ Patch800: linux-2.6-crash-driver.patch
 
 Patch900: linux-2.6-pci-cacheline-sizing.patch
 
+Patch1000: linux-2.6-cpufreq-ppc-suspend-clusterfuck.patch
+
 Patch1515: linux-2.6.31-lirc.patch
 Patch1516: lirc_streamzap-buffer-rework.patch
 Patch1517: hdpvr-ir-enable.patch
@@ -1220,6 +1222,8 @@ ApplyPatch linux-2.6-crash-driver.patch
 # Determine cacheline sizes in a generic manner.
 ApplyPatch linux-2.6-pci-cacheline-sizing.patch
 
+ApplyPatch linux-2.6-cpufreq-ppc-suspend-clusterfuck.patch
+
 # http://www.lirc.org/
 ApplyPatch linux-2.6.31-lirc.patch
 # should be a short-lived patch, hopefully fixing bz#508952 w/o breaking anything else...
@@ -1869,6 +1873,10 @@ fi
 # and build.
 
 %changelog
+* Fri Jul 10 2009 Dave Jones <davej at redhat.com> 2.6.31-0.64.rc2.git5
+- Don't jump through hoops that ppc powerbooks have to on sensible systems
+  in cpufreq_suspend.
+
 * Fri Jul 10 2009 Dave Jones <davej at redhat.com>
 - 2.6.31-rc2-git5
 




More information about the fedora-extras-commits mailing list