kernel: Move semicolon from the definition of SYSINIT() to its invocations. This affected around 70 of our (more or less) 270 SYSINIT() calls. style(9) advocates the terminating semicolon to be supplied by the invocation too, because it can make life easier for editors and other source code parsing programs.
Remove support for the IPX and NCP protocols, and for NWFS. This was on the list for a longer time now. FreeBSD removed it recently, too. Their commit msg has some more info: "IPX was a network transport protocol in Novell's NetWare network operating system from late 80s and then 90s. The NetWare itself switched to TCP/IP as default transport in 1998. Later, in this century the Novell Open Enterprise Server became successor of Novell NetWare. The last release that claimed to still support IPX was OES 2 in 2007. Routing equipment vendors (e.g. Cisco) discontinued support for IPX in 2011." The commit removes support for NCP (NetWare Core Protocol) and NWFS (NetWare File System) along with it (both gone from FreeBSD too since a while).
mwait/spin: Push sysctl into machdep code On x86_64, make the sysctl read only. Sysctl machdep.mwait.CX.spin should be used to configure the mwait hint. Manipulate mwait hint value directly through hw.cpu_mwait_halt is not safe, e.g. intr cputimer may need change for deep cpu specific C-state.
kernel - Add hw.cpu_mwait_haltand hw.cpu_mwait_spin * Add globals with machine-specific meanings. This allows us to operate with MONITOR/MWAIT and gain the same power savings that we get with ACPI halt mode when idle. Waiting on a follow-up commit to set the the defaults. * For example, if we sysctl hw.cpu_mwait_halt=0x44 hw.cpu_mwait_spin=0x11 (and leaving machdep.cpu_idle_hlt=2) on a haswell cpu it will shave the idle power down by another 5W, from 25W to 20W on an idle Haswell Xeon 3.4 GHz server chip without impacting wakeup performance too badly.
kernel - Increase machdep.cpu_idle_repeat from 4 to 750 * Increase machdep.cpu_idle_repeat from 4 to 750. It now takes longer before the kernel will move from HLT/MONITOR/MWAIT to ACPI-based halting. * Improves benchmark performance significantly on recent cpus without eating up too much extra power, but laptop tests are still pending. * Laptop users can always set it back to 4.
kernel - remove bounds on buffer cache nbuf count for 64-bit * Remove arbitrary 1GB buffer cache limitation * Adjusted numerous 'int' fields to 'long'. Even though nbuf is not likely to exceed 2 billion buffers, byte calculations using the variable began overflowing so just convert that and various other variables to long. * Make sure we don't blow-out the temporary valloc() space in early boot due to nbufs being too large. * Unbound 'kern.nbuf' specifications in /boot/loader.conf as well.
kernel -- CLFLUSH support * Introduce a kernel variable, 'vmm_guest', signifying whether the kernel is running in a virtual environment, such as KVM. This is set based on the CPUID2.VMM flag on kernels and set automatically on virtual kernels. * Introduce wrappers for CLFLUSH instructions. * Provide tunable, hw.clflush_enable, to autoenable CLFLUSH on h/w (-1) disable always (0), or enable always (1). Closes-bug: 2363 Reviewed-by: ftigeot@ From: David Shao, FreeBSD