From owner-svn-src-head@FreeBSD.ORG Sat Jul 7 08:12:51 2012 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id AC072106566C; Sat, 7 Jul 2012 08:12:51 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 971898FC0A; Sat, 7 Jul 2012 08:12:51 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q678Cpah029428; Sat, 7 Jul 2012 08:12:51 GMT (envelope-from avg@svn.freebsd.org) Received: (from avg@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q678CppW029426; Sat, 7 Jul 2012 08:12:51 GMT (envelope-from avg@svn.freebsd.org) Message-Id: <201207070812.q678CppW029426@svn.freebsd.org> From: Andriy Gapon Date: Sat, 7 Jul 2012 08:12:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r238193 - head/sys/dev/acpica X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 07 Jul 2012 08:12:51 -0000 Author: avg Date: Sat Jul 7 08:12:51 2012 New Revision: 238193 URL: http://svn.freebsd.org/changeset/base/238193 Log: acpi_cpu_cx_list: there is no need to re-evaluate cpu_non_c3 here cpu_non_c3 is already evaluated in acpi_cpu_cx_cst and in acpi_cpu_set_cx_lowest. Besides acpi_cpu_cx_list is not protected by any locking. As a result also move setting of cpu_can_deep_sleep to more appropriate places. MFC after: 2 weeks Modified: head/sys/dev/acpica/acpi_cpu.c Modified: head/sys/dev/acpica/acpi_cpu.c ============================================================================== --- head/sys/dev/acpica/acpi_cpu.c Sat Jul 7 07:59:14 2012 (r238192) +++ head/sys/dev/acpica/acpi_cpu.c Sat Jul 7 08:12:51 2012 (r238193) @@ -670,6 +670,7 @@ acpi_cpu_generic_cx_probe(struct acpi_cp cx_ptr->trans_lat = AcpiGbl_FADT.C3Latency; cx_ptr++; sc->cpu_cx_count++; + cpu_can_deep_sleep = 1; } } } @@ -761,7 +762,8 @@ acpi_cpu_cx_cst(struct acpi_cpu_softc *s "acpi_cpu%d: C3[%d] not available.\n", device_get_unit(sc->cpu_dev), i)); continue; - } + } else + cpu_can_deep_sleep = 1; break; } @@ -885,16 +887,10 @@ acpi_cpu_cx_list(struct acpi_cpu_softc * /* * Set up the list of Cx states */ - sc->cpu_non_c3 = 0; sbuf_new(&sb, sc->cpu_cx_supported, sizeof(sc->cpu_cx_supported), SBUF_FIXEDLEN); - for (i = 0; i < sc->cpu_cx_count; i++) { + for (i = 0; i < sc->cpu_cx_count; i++) sbuf_printf(&sb, "C%d/%d ", i + 1, sc->cpu_cx_states[i].trans_lat); - if (sc->cpu_cx_states[i].type < ACPI_STATE_C3) - sc->cpu_non_c3 = i; - else - cpu_can_deep_sleep = 1; - } sbuf_trim(&sb); sbuf_finish(&sb); }