freebsd-dev/etc
Nate Lawson 907b6777c1 Re-work Cx handling to be per-cpu and asymmetrical, fixing support on
modern dual-core systems as well.

- Parse the _CST packages for each cpu and track all the states individually,
on a per-cpu basis.

- Revert to generic FADT/P_BLK based Cx control if the _CST package
is not present on all cpus. In that case, the new driver will
still support per-cpu Cx state handling. The driver will determine the
highest Cx level that can be supported by all the cpus and configure the
available Cx state based on that.

- Fixed the case where multiple cpus in the system share the same
registers for Cx state handling. To do that, added a new flag
parameter to the acpi_PkgGas and acpi_bus_alloc_gas functions that
enable the caller to add the RF_SHAREABLE flag.  This flag could also be
useful to other callers (acpi_throttle?) in the tree but this change is
not yet made.

- For Core Duo cpus, both cores seems to be taken out of C3 state when
any one of the cores need to transition out. This broke the short sleep
detection logic.  It is disabled now if there is more than one cpu in
the system for now as it fixed it in my case.  This quirk may need to
be re-enabled later differently.

- Added support to control cx_lowest on a per-cpu basis. There is still
a generic cx_lowest to enable changing cx_lowest for all cpus with a single
sysctl and for ease of use.  Sample output for the new sysctl:

dev.cpu.0.cx_supported: C1/1 C2/1 C3/57
dev.cpu.0.cx_lowest: C3
dev.cpu.0.cx_usage: 0.00% 43.16% 56.83%
dev.cpu.1.cx_supported: C1/1 C2/1 C3/57
dev.cpu.1.cx_lowest: C3
dev.cpu.1.cx_usage: 0.00% 45.65% 54.34%
hw.acpi.cpu.cx_lowest: C3

This work was done by Stephane E. Potvin with some simple reworking by
myself.  Thank you.

Submitted by:	Stephane E. Potvin <sepotvin / videotron.ca>
MFC after:	2 weeks
2007-01-07 21:53:42 +00:00
..
bluetooth Correct BD_ADDR entry for "Dummy" device in the default hcsecd.conf. 2006-05-18 17:53:49 +00:00
defaults Add auditd_program variable to defaults, in order to make it more clear 2006-11-06 15:11:24 +00:00
etc.amd64
etc.arm
etc.i386
etc.ia64
etc.powerpc Comment out ofw_console 'screen' entry and zs tty entries. 2005-09-10 22:46:03 +00:00
etc.sparc64 Remove last vestiges of sab(4). 2006-04-25 19:43:53 +00:00
gss Add a new extensible GSS-API layer which can support GSS-API plugins, 2005-12-29 14:40:22 +00:00
isdn Two years ago, in rev. 1.12, a typo slipped in etc/isdn/Makefile: 2006-03-07 09:53:11 +00:00
mail
mtree Move npe.4 to a machine specific manpage subdirectory. 2006-12-05 16:57:10 +00:00
namedb In accordance with my intentions announced (and not objected to) 2005-09-05 13:42:22 +00:00
pam.d
periodic The kvm_mkdb(8) is long dead. 2006-08-29 08:49:58 +00:00
ppp
rc.d Re-work Cx handling to be per-cpu and asymmetrical, fixing support on 2007-01-07 21:53:42 +00:00
root
sendmail
amd.map Switch default proto to TCP. 2006-11-06 01:42:11 +00:00
apmd.conf
auth.conf
cached.conf - Extend the nsswitch to support Services, Protocols and Rpc 2006-04-28 12:03:38 +00:00
crontab
csh.cshrc
csh.login
csh.logout
devd.conf Announce all interfaces to devd on attach/detach. This adds a new devctl 2006-06-01 00:41:07 +00:00
devfs.conf
dhclient.conf
disktab Replace duplicate and not quite accurate capabilities 2006-10-14 16:39:03 +00:00
fbtab
freebsd-update.conf Add FreeBSD Update 2.0 client code. The build code is in the projects 2006-08-31 09:51:34 +00:00
ftpusers
gettytab Add autologin entries (al.NNN) for higher console speeds. 2006-04-11 09:54:23 +00:00
group Assign gid 77 to audit instead of gid 73. The ports group list did not 2006-02-05 19:34:09 +00:00
hosts
hosts.allow Comment out lines that use example addresses and example.com names so 2006-08-29 09:20:48 +00:00
hosts.equiv
hosts.lpd
inetd.conf Re-add lukemftpd. It has: PAM, MAC, per-class nologin files, 2006-08-31 17:15:10 +00:00
libalias.conf Fix a regression: let natd load libalias modules before /usr is mounted 2006-10-08 14:02:00 +00:00
login.access
login.conf Add a short description of how a literal colon ':' can be inlined in the 2005-08-31 15:02:11 +00:00
mac.conf
Makefile Summer of Code 2005: improve libalias - part 1 of 2 2006-09-26 23:26:53 +00:00
man.alias
master.passwd
minfree
motd
netconfig
netstart Remove reference to no longer existant /etc/rc.d/pccard. 2006-05-30 02:10:01 +00:00
network.subr Do not try to rtsol on pflog or pfsync devices. 2006-10-29 13:29:49 +00:00
networks
newsyslog.conf
nls.alias
nscd.conf - Extend the nsswitch to support Services, Protocols and Rpc 2006-04-28 12:03:38 +00:00
nsmb.conf
nsswitch.conf Install /etc/nsswitch.conf statically rather than generating it at 2006-05-03 15:14:47 +00:00
opieaccess
pccard_ether Disable IPv6 configuration for interfaces in pccard_ether_start(). 2006-12-08 15:48:42 +00:00
pf.conf Document the user/group LOR in our sample pf.conf 2006-01-27 17:16:20 +00:00
pf.os Synchronize pf.os with OpenBSD. 2006-10-23 05:09:44 +00:00
phones Kill the default phone numbers. 2006-08-31 21:13:12 +00:00
portsnap.conf Add a warning pointing out that incomplete ports trees are not 2006-01-18 03:40:57 +00:00
printcap
profile
protocols
rc Attempt to make running the new rc in a jail more automatic by 2006-02-20 21:54:30 +00:00
rc.bsdextended Clean up, comment out non-base utilities, fix up comments. 2006-04-22 11:02:44 +00:00
rc.firewall Summer of Code 2005: improve libalias - part 2 of 2 2006-12-29 21:59:17 +00:00
rc.firewall6 Move etc/rc.firewall6 to ipfw2+v6, update related rc.d and periodic scripts. 2006-05-12 19:17:34 +00:00
rc.initdiskless - put some common code in a function handle_remount(); 2006-12-03 23:50:29 +00:00
rc.resume
rc.sendmail
rc.shutdown Introduce startup scripts from the local_startup directories to 2005-12-02 20:06:07 +00:00
rc.subr Allow for /usr/bin/env when parsing the shebang line from an 2006-12-31 11:07:29 +00:00
rc.suspend
remote
rpc
services o Add IANA assigned InterBase Database Remote Protocol 3050/tcp/udp. 2006-01-25 17:37:15 +00:00
shells
snmpd.config o Fix a comment: refer to the write community name by the OID not by 2006-12-31 11:19:48 +00:00
sysctl.conf
syslog.conf
termcap.small