freebsd-nq/sys
Nathan Whitehorn 53607fe3cc Fix an extremely subtle concurrency bug triggered by running on 32-thread
POWER8 systems. During thread switch, there was a very small window when
the stack pointer was set to the stack pointer of the outgoing thread, but
after the lock on that thread had already been released.

If, during that window, the outgoing thread were rescheduled on another CPU
and begin execution and an exception were taken on the original CPU, the
trap handler and the outgoing thread would simultaneously execute on the same
stack, causing memory corruption. Fix this by making sure to release the
old thread only after cpu_switch() is done with its stack.

MFC after:	2 weeks
Sponsored by:	FreeBSD Foundation
2015-02-09 02:17:21 +00:00
..
amd64 Revert the IPI startup sequence to match what is described in the 2015-02-06 18:19:59 +00:00
arm Add VideoCore audio driver for Rasperry Pi (BCM2835) 2015-02-08 01:12:40 +00:00
boot Revert SVN r277693. 2015-02-06 23:19:17 +00:00
bsm
cam Fix ordering of "*logout" and "*terminate"; no functional changes. 2015-02-08 19:18:23 +00:00
cddl Fix a typo in r278137: make sure to free provider state. 2015-02-08 03:55:12 +00:00
compat Run make sysent. 2015-01-23 21:08:24 +00:00
conf Add WPI_DEBUG option. 2015-02-07 23:09:03 +00:00
contrib Act as a bus in attach method: probe and attach devices 2015-02-08 01:12:23 +00:00
crypto Add some new modes to OpenCrypto. These modes are AES-ICM (can be used 2014-12-12 19:56:36 +00:00
ddb ddb: ANSI-fy function declarations. 2014-10-12 18:01:52 +00:00
dev Extend ICL to add receive offload methods. For software ICL backend 2015-02-08 19:15:14 +00:00
fs Remove duplicated assignment. 2015-02-03 12:09:48 +00:00
gdb Add support for gdb's memory searching capabilities to our in-kernel gdb 2014-09-05 16:40:47 +00:00
geom Add devd(8) notifications for creation and destruction of GEOM devices. 2015-01-14 11:15:57 +00:00
gnu reiserfs: Use signed i_nlink 2014-09-25 19:10:32 +00:00
i386 Revert the IPI startup sequence to match what is described in the 2015-02-06 18:19:59 +00:00
isa
kern Preset the object's color, or alignment, to maximize superpage usage. 2015-02-08 21:00:51 +00:00
kgssapi Avoid dynamic syscall overhead for statically compiled modules. 2014-10-26 19:42:44 +00:00
libkern Similar to r277901, fix more -Wcast-qual warnings in libkern's strtoq(), 2015-01-29 21:54:01 +00:00
mips The linux driver code for the MDIO bus does a read-after-write 2015-02-02 17:33:00 +00:00
modules Add WPI_DEBUG option. 2015-02-07 23:09:03 +00:00
net Improve the distribution of LAGG port traffic. 2015-01-23 00:06:35 +00:00
net80211 Switch around the order of static inline to be in line with how it's 2015-01-11 18:43:45 +00:00
netgraph Fix a bunch of -Wcast-qual warnings in netgraph's ng_parse.c, by using 2015-01-30 21:59:53 +00:00
netinet The flowid and hashtype should be copied from the originating packet 2015-02-02 17:32:50 +00:00
netinet6 Print IPv6 address in log message instead of address of pointer. 2015-02-05 16:29:26 +00:00
netipsec key_spdget uses key_setdumpsp() without SPTREE_RLOCK held (it uses 2015-01-27 17:46:55 +00:00
netnatm
netpfil Fix IP_FW_NAT44_LIST_NAT size calculation. 2015-02-05 14:54:53 +00:00
netsmb
nfs Remove the old NFS client and server from head, 2014-12-23 00:47:46 +00:00
nfsclient Remove the old NFS client and server from head, 2014-12-23 00:47:46 +00:00
nfsserver Use M_SIZE() instead of hand-crafted (and mostly correct) NFSMSIZ() macro 2015-01-07 17:22:56 +00:00
nlm Avoid dynamic syscall overhead for statically compiled modules. 2014-10-26 19:42:44 +00:00
ofed Fix bug in idr_pre_get where it doesn't handle 'need' correctly. 2015-02-02 23:41:43 +00:00
opencrypto Add some new modes to OpenCrypto. These modes are AES-ICM (can be used 2014-12-12 19:56:36 +00:00
pc98 Factor out duplicated code from dumpsys() on each architecture into generic 2015-01-07 01:01:39 +00:00
powerpc Fix an extremely subtle concurrency bug triggered by running on 32-thread 2015-02-09 02:17:21 +00:00
rpc rpc: Uninitialized pointer read 2015-02-02 16:07:07 +00:00
security Adjust printf format specifiers for dev_t and ino_t in kernel. 2014-12-17 07:27:19 +00:00
sparc64 Do not qualify the mcontext_t *mcp argument for set_mcontext(9) as 2015-01-31 21:43:46 +00:00
sys Add a new device control utility for new-bus devices called devctl. This 2015-02-06 16:09:01 +00:00
teken mdoc: improvements to SEE ALSO. 2014-12-27 07:07:37 +00:00
tools Allow the make_dtb script to work outside of a "make buildkernel" context 2014-08-30 22:39:15 +00:00
ufs Partially revert r277922, avoid sleeping and do flush if we a awaken, 2015-02-05 13:00:27 +00:00
vm Update mtime for tmpfs files modified through memory mapping. Similar 2015-01-28 10:37:23 +00:00
x86 Revert the IPI startup sequence to match what is described in the 2015-02-06 18:19:59 +00:00
xdr
xen Pacify clang 3.3 by ending the file with a newline. This is common 2015-01-06 21:26:35 +00:00
Makefile Remove "pci" from CSCOPEDIRS. 2014-09-23 06:32:19 +00:00