Home | History | Annotate | only in /src/sys/modules/acpicpu
History log of /src/sys/modules/acpicpu
RevisionDateAuthorComments
 1.7 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.6 16-Feb-2011  jruoho branches: 1.6.2; 1.6.58;
Use ioconf for the module declarations.
 1.5 30-Dec-2010  jruoho branches: 1.5.2; 1.5.4;
Remove DIAGNOSTIC.
 1.4 18-Aug-2010  jruoho Add DIAGNOSTIC.
 1.3 13-Aug-2010  jruoho branches: 1.3.2;
Merge T-state a.k.a. throttling support for acpicpu(4).

Remarks:

1. Native instructions are supported only on Intel. Native support for
other x86 vendors will be investigated. By assumption, AMD and others
use the I/O based approach.

2. The existing code, INTEL_ONDEMAND_CLOCKMOD, must be disabled in
order to use acpicpu(4). Otherwise fatal MSR races may occur.
Unlike with P-states, no attempt is done to disable the existing
implementation.

3. There is no rationale to export controls to user land.

4. Throttling is an artefact from the past. T-states will not be used for
power management per se. For CPU frequency management, P-states are
preferred in all circumstances. No noticeable additional power savings
were observed in various experiments. When the system has been scaled
to the highest (i.e. lowest power) P-state, it is preferable to move
from C0 to deeper C-states than it is to actively throttle the CPU.

5. But T-states need to be implemented for passive cooling via acpitz(4).
As specified by ACPI and Intel documents, these can be used as the
last line of defence against critical thermal conditions. Support
for this will be added later.
 1.2 08-Aug-2010  jruoho branches: 1.2.2;
Merge P-state support for acpicpu(4).

Remarks:

1. All processors (x86 or not) for which the vendor has implemented
ACPI I/O access routines are supported. Native instructions are
currently supported only for Intel's "Enhanced Speedstep". Code for
"PowerNow!" (AMD) will be merged later. Native support for VIA's
"PowerSaver" will be investigated.

2. Backwards compatibility with existing userland code is maintained.
Comparable to the case with cpu_idle(9), the ACPI CPU driver
installs alternative functions for the existing sysctl(8) controls.
The "native" behavior (if any) is restored upon detachment.

3. The dynamic nature of ACPI-provided P-states needs more investigation.
The maximum frequency induced (but not forced) by the firmware may
change dynamically. Currently, the sysctl(8) controls error out with
a value larger than the dynamic maximum. The code itself does not
however yet react to the notifications from the firmware by changing
the frequencies in-place. Presumably the system administrator should
be able to choose whether to use dynamic or static frequencies.
 1.1 18-Jul-2010  jruoho Add a Makefile for ACPI CPUs.

It is safe to load and unload the whole ACPI CPU -functionality at runtime.
 1.2.2.3 09-Oct-2010  yamt sync with head
 1.2.2.2 11-Aug-2010  yamt sync with head.
 1.2.2.1 08-Aug-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-08-11 22:54:49 +0000
 1.3.2.3 22-Oct-2010  uebayasi Sync with HEAD (-D20101022).
 1.3.2.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.3.2.1 13-Aug-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-08-17 06:47:40 +0000
 1.5.4.1 17-Feb-2011  bouyer Sync with HEAD
 1.5.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.6.58.1 10-Jun-2019  christos Sync with HEAD
 1.6.2.2 05-Mar-2011  rmind sync with head
 1.6.2.1 16-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:35 +0000
 1.2 27-Feb-2011  jruoho branches: 1.2.2; 1.2.6;
Move acpicpu(4) from "acpinodebus" to "cpufeaturebus".
 1.1 16-Feb-2011  jruoho branches: 1.1.2;
Use ioconf for the module declarations.
 1.1.2.3 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file acpicpu.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:45 +0000
 1.2.6.2 06-Jun-2011  jruoho Sync with HEAD.
 1.2.6.1 27-Feb-2011  jruoho file acpicpu.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:45 +0000
 1.2.2.2 05-Mar-2011  rmind sync with head
 1.2.2.1 27-Feb-2011  rmind file acpicpu.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:35 +0000

RSS XML Feed