freebsd-skq/lib
Konstantin Belousov 066d836b02 Current pselect(3) is implemented in usermode and thus vulnerable to
well-known race condition, which elimination was the reason for the
function appearance in first place. If sigmask supplied as argument to
pselect() enables a signal, the signal might be delivered before thread
called select(2), causing lost wakeup. Reimplement pselect() in kernel,
making change of sigmask and sleep atomic.

Since signal shall be delivered to the usermode, but sigmask restored,
set TDP_OLDMASK and save old mask in td_oldsigmask. The TDP_OLDMASK
should be cleared by ast() in case signal was not gelivered during
syscall execution.

Reviewed by:	davidxu
Tested by:	pho
MFC after:	1 month
2009-10-27 10:55:34 +00:00
..
bind Add support for the build options that are currently in the port: 2009-06-01 21:58:59 +00:00
csu Fix build when WITH_SSP is set explicitly. 2009-02-21 15:04:31 +00:00
libalias Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libarchive Fiz /usr/bin/unzip: A bug deep in libarchive's read-ahead logic 2009-09-08 05:02:41 +00:00
libauditd Merge OpenBSM alpha 4 from OpenBSM vendor branch to head, both 2008-12-31 11:12:24 +00:00
libautofs Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libbegemot Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libbluetooth Fix typo in bluetooth.3 2009-10-26 17:27:30 +00:00
libbsm Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libbsnmp Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libbz2 Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libc Current pselect(3) is implemented in usermode and thus vulnerable to 2009-10-27 10:55:34 +00:00
libc_r Use, in uncovered part, the END() macro in order to improve debugging. 2009-05-25 14:37:10 +00:00
libcalendar
libcam Separate the parallel scsi knowledge out of the core of the XPT, and 2009-07-10 08:18:08 +00:00
libcom_err
libcompat K&R -> ANSI 2009-06-23 23:20:09 +00:00
libcrypt Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libdevinfo Use explicit int values for the device states in order to allow, 2009-09-15 16:59:52 +00:00
libdevstat Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libdisk Disable a check on a disk size because it's too strict. This change is 2009-09-21 04:04:02 +00:00
libdwarf Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libedit Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libelf Don't need to set symbol, default value is OK. 2009-03-12 04:44:09 +00:00
libexpat Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libfetch PR: 139751 2009-10-21 18:29:26 +00:00
libftpio Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libgeom Add links to libgeom(3) where appropriate. 2009-05-19 12:10:48 +00:00
libgpib Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libgssapi Add an implementation of the RPCSEC_GSS authentication protocol for RPC. This 2008-08-06 14:02:05 +00:00
libipsec Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libipx
libjail Fixed markup (mostly) errors. 2009-09-21 08:30:52 +00:00
libkiconv Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libkse Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libkvm cr_groups is no longer embedded in struct ucred and is instead stored 2009-09-08 19:37:59 +00:00
libmagic Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libmd Remove reference to no longer existing document. 2009-01-09 11:45:13 +00:00
libmemstat Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libmilter Switch libmilter from select(2) to poll(2) so milters are not limited 2008-02-17 05:14:47 +00:00
libmp Rename all symbols in libmp(3) to mp_*, just like Solaris. 2009-02-26 21:43:15 +00:00
libncp Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libnetgraph Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libngatm Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libopie Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libpam pam_ssh needs roaming_dummy to link correctly against libssh. 2009-10-05 18:56:18 +00:00
libpcap Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libpmc Not all Intel Core (TM) CPUs implement PMC_CLASS_IAF fixed-function 2009-10-24 04:11:40 +00:00
libproc Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libradius Fix bug, when RADIUS client gave up after single sendto() error, do not 2009-09-29 19:09:17 +00:00
librpcsec_gss Implement support for RPCSEC_GSS authentication to both the NFS client 2008-11-03 10:38:00 +00:00
librpcsvc Use ANSI function declarations in librpcsvc. 2009-02-26 20:32:11 +00:00
librt atomic_fetchadd_int works on unsigned quantities - change 2008-08-15 21:08:48 +00:00
libsbuf
libsdp Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libsm
libsmb Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libsmdb
libsmutil
libstand ANSIfy, whitespace and comment adjustments, to simplify comparing these 2009-09-13 21:51:01 +00:00
libtacplus Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libtelnet Rename all symbols in libmp(3) to mp_*, just like Solaris. 2009-02-26 21:43:15 +00:00
libthr Current pselect(3) is implemented in usermode and thus vulnerable to 2009-10-27 10:55:34 +00:00
libthread_db Revert r181651, which changed the ABI, and use a temp variable instead. 2009-06-09 12:32:10 +00:00
libufs Allow libufs(3) functions to operate on a regular file. This makes it possible to 2009-06-11 18:04:57 +00:00
libugidfw Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libusb Prevent wraparound of the timeout variable. 2009-10-22 21:01:41 +00:00
libusbhid Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libutil Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libvgl Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libwrap Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
liby
libypclnt Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
libz
msun Use the documented machine constraint for SSE registers. 2009-06-11 13:59:51 +00:00
ncurses Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00
Makefile - Teach vesa(4) and dpms(4) about x86emu. [1] 2009-09-09 09:50:31 +00:00
Makefile.inc Bump the version of all non-symbol-versioned shared libraries in 2009-07-19 17:25:24 +00:00