Module Name:    src
Committed By:   jruoho
Date:           Fri Aug 20 04:16:00 UTC 2010

Modified Files:
        src/sys/dev/acpi: acpi_cpu_pstate.c acpi_cpu_tstate.c

Log Message:
Check the cached value also when setting a state.


To generate a diff of this commit:
cvs rdiff -u -r1.30 -r1.31 src/sys/dev/acpi/acpi_cpu_pstate.c
cvs rdiff -u -r1.14 -r1.15 src/sys/dev/acpi/acpi_cpu_tstate.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/acpi/acpi_cpu_pstate.c
diff -u src/sys/dev/acpi/acpi_cpu_pstate.c:1.30 src/sys/dev/acpi/acpi_cpu_pstate.c:1.31
--- src/sys/dev/acpi/acpi_cpu_pstate.c:1.30	Wed Aug 18 18:32:20 2010
+++ src/sys/dev/acpi/acpi_cpu_pstate.c	Fri Aug 20 04:16:00 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: acpi_cpu_pstate.c,v 1.30 2010/08/18 18:32:20 jruoho Exp $ */
+/* $NetBSD: acpi_cpu_pstate.c,v 1.31 2010/08/20 04:16:00 jruoho Exp $ */
 
 /*-
  * Copyright (c) 2010 Jukka Ruohonen <jruoho...@iki.fi>
@@ -27,7 +27,7 @@
  * SUCH DAMAGE.
  */
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: acpi_cpu_pstate.c,v 1.30 2010/08/18 18:32:20 jruoho Exp $");
+__KERNEL_RCSID(0, "$NetBSD: acpi_cpu_pstate.c,v 1.31 2010/08/20 04:16:00 jruoho Exp $");
 
 #include <sys/param.h>
 #include <sys/evcnt.h>
@@ -978,6 +978,11 @@
 
 	mutex_enter(&sc->sc_mtx);
 
+	if (sc->sc_pstate_current == freq) {
+		mutex_exit(&sc->sc_mtx);
+		return 0;
+	}
+
 	for (i = sc->sc_pstate_max; i <= sc->sc_pstate_min; i++) {
 
 		if (sc->sc_pstate[i].ps_freq == 0)

Index: src/sys/dev/acpi/acpi_cpu_tstate.c
diff -u src/sys/dev/acpi/acpi_cpu_tstate.c:1.14 src/sys/dev/acpi/acpi_cpu_tstate.c:1.15
--- src/sys/dev/acpi/acpi_cpu_tstate.c:1.14	Tue Aug 17 10:57:30 2010
+++ src/sys/dev/acpi/acpi_cpu_tstate.c	Fri Aug 20 04:16:00 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: acpi_cpu_tstate.c,v 1.14 2010/08/17 10:57:30 jruoho Exp $ */
+/* $NetBSD: acpi_cpu_tstate.c,v 1.15 2010/08/20 04:16:00 jruoho Exp $ */
 
 /*-
  * Copyright (c) 2010 Jukka Ruohonen <jruoho...@iki.fi>
@@ -27,7 +27,7 @@
  * SUCH DAMAGE.
  */
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: acpi_cpu_tstate.c,v 1.14 2010/08/17 10:57:30 jruoho Exp $");
+__KERNEL_RCSID(0, "$NetBSD: acpi_cpu_tstate.c,v 1.15 2010/08/20 04:16:00 jruoho Exp $");
 
 #include <sys/param.h>
 #include <sys/evcnt.h>
@@ -750,6 +750,11 @@
 
 	mutex_enter(&sc->sc_mtx);
 
+	if (sc->sc_tstate_current == percent) {
+		mutex_exit(&sc->sc_mtx);
+		return 0;
+	}
+
 	for (i = sc->sc_tstate_max; i <= sc->sc_tstate_min; i++) {
 
 		if (sc->sc_tstate[i].ts_percent == 0)

Reply via email to