freebsd-dev/sys
John Baldwin c4f16b69e1 Add a new 'void closefrom(int lowfd)' system call. When called, it closes
any open file descriptors >= 'lowfd'.  It is largely identical to the same
function on other operating systems such as Solaris, DFly, NetBSD, and
OpenBSD.  One difference from other *BSD is that this closefrom() does not
fail with any errors.  In practice, while the manpages for NetBSD and
OpenBSD claim that they return EINTR, they ignore internal errors from
close() and never return EINTR.  DFly does return EINTR, but for the common
use case (closing fd's prior to execve()), the caller really wants all
fd's closed and returning EINTR just forces callers to call closefrom() in
a loop until it stops failing.

Note that this implementation of closefrom(2) does not make any effort to
resolve userland races with open(2) in other threads.  As such, it is not
multithread safe.

Submitted by:	rwatson (initial version)
Reviewed by:	rwatson
MFC after:	2 weeks
2009-06-15 20:38:55 +00:00
..
amd64 Forbid multi-vector MSI interrupt vectors migration to another CPU once 2009-06-15 13:47:49 +00:00
arm Move the memory layout definitions and logic from mvreg.h to mvwin.h 2009-06-12 20:00:38 +00:00
boot Add cas(4), a driver for Sun Cassini/Cassini+ and National Semiconductor 2009-06-15 18:22:41 +00:00
bsm Merge OpenBSM 1.1 from OpenBSM vendor branch to head. 2009-04-19 16:17:13 +00:00
cam Include <camlib.h> for cam_path_string(). 2009-06-14 12:46:34 +00:00
cddl Rename the host-related prison fields to be the same as the host.* 2009-06-13 15:39:12 +00:00
compat Add a new 'void closefrom(int lowfd)' system call. When called, it closes 2009-06-15 20:38:55 +00:00
conf Add cas(4), a driver for Sun Cassini/Cassini+ and National Semiconductor 2009-06-15 18:22:41 +00:00
contrib All consumers of in_cksum.h have been properly #ifdefed already, 2009-06-10 11:19:34 +00:00
crypto Changed to M_NOWAIT when reallocing psc_buf in padlock_sha_update(), 2009-05-27 09:52:12 +00:00
ddb Place hostnames and similar information fully under the prison system. 2009-05-29 21:27:12 +00:00
dev r193336 moved ifq_detach to if_free which broke if_alloc followed 2009-06-15 19:50:03 +00:00
fs Eliminate unnecessary variables. 2009-06-13 20:21:08 +00:00
gdb
geom Add support for labels derived from GPT metadata. 2009-06-13 00:27:03 +00:00
gnu Fix r193923 by noting that type of a_fp is struct file *, not int. 2009-06-10 14:24:31 +00:00
i386 Forbid multi-vector MSI interrupt vectors migration to another CPU once 2009-06-15 13:47:49 +00:00
ia64 Import ACPICA 20090521. 2009-06-05 18:44:36 +00:00
isa Rename statclock_disable variable to atrtcclock_disable that it actually is, 2009-05-03 17:47:21 +00:00
kern Add a new 'void closefrom(int lowfd)' system call. When called, it closes 2009-06-15 20:38:55 +00:00
kgssapi When the KOBJMETHOD() macro was updated, it resulted in the 2009-06-14 17:33:46 +00:00
libkern add explanatory header license 2009-06-09 21:29:16 +00:00
mips Fix typo... bad imp. 2009-06-14 03:32:52 +00:00
modules Add cas(4), a driver for Sun Cassini/Cassini+ and National Semiconductor 2009-06-15 18:22:41 +00:00
net r193336 moved ifq_detach to if_free which broke if_alloc followed 2009-06-15 19:50:03 +00:00
net80211 Rev IEEE80211_IOC_STA_INFO abi: ni_flags grew from 16 bits to 32 2009-06-13 23:43:00 +00:00
netatalk Move "options MAC" from opt_mac.h to opt_global.h, as it's now in GENERIC 2009-06-05 14:55:22 +00:00
netgraph s/usb2_/usb_|usbd_/ on all function names for the USB stack. 2009-06-15 01:02:43 +00:00
netinet Get vnets from creds instead of threads where they're available, and from 2009-06-15 19:01:53 +00:00
netinet6 Rename the host-related prison fields to be the same as the host.* 2009-06-13 15:39:12 +00:00
netipsec Added support for NAT-Traversal (RFC 3948) in IPsec stack. 2009-06-12 15:44:35 +00:00
netipx Put the variable declarations for TCPDEBUG under #ifdef INET as well. 2009-06-10 09:28:50 +00:00
netnatm Reimplement the netisr framework in order to support parallel netisr 2009-06-01 10:41:38 +00:00
netncp
netsmb Rework socket upcalls to close some races with setup/teardown of upcalls. 2009-06-01 21:17:03 +00:00
nfs Add cpu_flush_dcache() for use after non-DMA based I/O so that a 2009-05-18 18:37:18 +00:00
nfsclient Rename the host-related prison fields to be the same as the host.* 2009-06-13 15:39:12 +00:00
nfsserver Add a #include <sys/jail.h> so that it builds when 2009-06-12 20:18:08 +00:00
nlm Rename the host-related prison fields to be the same as the host.* 2009-06-13 15:39:12 +00:00
opencrypto Fix cryptodev UIO creation. 2009-05-23 13:23:46 +00:00
pc98 Remove MAC kernel config files and add "options MAC" to GENERIC, with the 2009-06-02 18:31:08 +00:00
pci When user_frac in the polling subsystem is low it is going to busy the 2009-05-30 15:14:44 +00:00
powerpc Correct the method of waking the page daemon when the number of allocated 2009-06-13 18:35:29 +00:00
rpc Replace the global references to "hostid" in svc_rpcsec_gss.c to local 2009-06-15 14:44:55 +00:00
security Adapt vfs kqfilter to the shared vnode lock used by zfs write vop. Use 2009-06-10 20:59:32 +00:00
sparc64 Add cas(4), a driver for Sun Cassini/Cassini+ and National Semiconductor 2009-06-15 18:22:41 +00:00
sun4v Adjust the padding of struct pcpu to r193219. 2009-06-03 19:31:26 +00:00
sys Get vnets from creds instead of threads where they're available, and from 2009-06-15 19:01:53 +00:00
tools - Add a way to change filter oversampling factor through 2009-06-15 04:31:34 +00:00
ufs Move "options MAC" from opt_mac.h to opt_global.h, as it's now in GENERIC 2009-06-05 14:55:22 +00:00
vm Long, long ago in r27464 special case code for mapping device-backed 2009-06-14 19:51:43 +00:00
xdr MFdevbranch 192944 2009-05-28 08:18:12 +00:00
xen Make ipi_cpu() function as intended. 2009-05-30 08:53:13 +00:00
Makefile Remove the unmaintained University of Michigan NFSv4 client from 8.x 2009-05-22 12:35:12 +00:00