opnsense-src/sys/sys
Alexander Motin 40ea77a036 Merge GEOM direct dispatch changes from the projects/camlock branch.
When safety requirements are met, it allows to avoid passing I/O requests
to GEOM g_up/g_down thread, executing them directly in the caller context.
That allows to avoid CPU bottlenecks in g_up/g_down threads, plus avoid
several context switches per I/O.

The defined now safety requirements are:
 - caller should not hold any locks and should be reenterable;
 - callee should not depend on GEOM dual-threaded concurency semantics;
 - on the way down, if request is unmapped while callee doesn't support it,
   the context should be sleepable;
 - kernel thread stack usage should be below 50%.

To keep compatibility with GEOM classes not meeting above requirements
new provider and consumer flags added:
 - G_CF_DIRECT_SEND -- consumer code meets caller requirements (request);
 - G_CF_DIRECT_RECEIVE -- consumer code meets callee requirements (done);
 - G_PF_DIRECT_SEND -- provider code meets caller requirements (done);
 - G_PF_DIRECT_RECEIVE -- provider code meets callee requirements (request).
Capable GEOM class can set them, allowing direct dispatch in cases where
it is safe.  If any of requirements are not met, request is queued to
g_up or g_down thread same as before.

Such GEOM classes were reviewed and updated to support direct dispatch:
CONCAT, DEV, DISK, GATE, MD, MIRROR, MULTIPATH, NOP, PART, RAID, STRIPE,
VFS, ZERO, ZFS::VDEV, ZFS::ZVOL, all classes based on g_slice KPI (LABEL,
MAP, FLASHMAP, etc).

To declare direct completion capability disk(9) KPI got new flag equivalent
to G_PF_DIRECT_SEND -- DISKFLAG_DIRECT_COMPLETION.  da(4) and ada(4) disk
drivers got it set now thanks to earlier CAM locking work.

This change more then twice increases peak block storage performance on
systems with manu CPUs, together with earlier CAM locking changes reaching
more then 1 million IOPS (512 byte raw reads from 16 SATA SSDs on 4 HBAs to
256 user-level threads).

Sponsored by:	iXsystems, Inc.
MFC after:	2 months
2013-10-22 08:22:19 +00:00
..
_bitset.h Generalize the bitset operations, present in cpuset and offer a KPI to 2013-05-09 00:04:59 +00:00
_bus_dma.h Break out typedefs from bus_dma.h to _bus_dma.h so that we can get the 2006-09-03 00:26:17 +00:00
_callout.h - Make callout(9) tickless, relying on eventtimers(4) as backend for 2013-03-04 11:09:56 +00:00
_cpuset.h Generalize the bitset operations, present in cpuset and offer a KPI to 2013-05-09 00:04:59 +00:00
_ffcounter.h Core structure and functions to support a feed-forward clock within the kernel. 2011-11-19 14:10:16 +00:00
_iovec.h
_kstack_cache.h Move kstack_cache_entry into the private header, and make the 2011-12-16 10:56:16 +00:00
_lock.h - Embed the recursion counter for any locking primitive directly in the 2008-05-15 20:10:06 +00:00
_lockmgr.h In current code, threads performing an interruptible sleep (on both 2009-12-12 21:31:07 +00:00
_mutex.h Tweak comments. 2012-11-11 23:25:47 +00:00
_null.h Define NULL to nullptr in C++11 mode (not strictly required, but it makes 2011-12-27 21:36:31 +00:00
_pctrie.h - Add a new general purpose path-compressed radix trie which can be used 2013-05-12 04:05:01 +00:00
_pthreadtypes.h Fix the visibility of several prototypes. Also move pthread_kill() and 2009-03-14 20:10:14 +00:00
_rmlock.h Several improvements to rmlock(9). Many of these are based on patches 2013-06-25 18:44:15 +00:00
_rwlock.h Tweak comments. 2012-11-11 23:25:47 +00:00
_semaphore.h Use umtx to implement process sharable semaphore, to make this work, 2010-01-05 02:37:59 +00:00
_sigset.h
_sockaddr_storage.h Move the duplicate definition of struct sockaddr_storage to its own 2009-09-08 10:39:38 +00:00
_stack.h Optimize lockmgr in order to get rid of the pool mutex interlock, of the 2008-04-06 20:08:51 +00:00
_stdint.h Fix by hand files that aren't added automatically by svn. 2011-05-09 22:13:07 +00:00
_sx.h - Embed the recursion counter for any locking primitive directly in the 2008-05-15 20:10:06 +00:00
_task.h Revert r256587. 2013-10-18 11:25:08 +00:00
_termios.h Decompose <sys/termios.h>. 2009-11-28 23:50:48 +00:00
_timespec.h Rename st_*timespec fields to st_*tim for POSIX 2008 compliance. 2010-03-28 13:13:22 +00:00
_timeval.h Remove various bits of conditional Alpha code and fixup a few comments. 2006-05-12 05:04:46 +00:00
_types.h Change the cap_rights_t type from uint64_t to a structure that we can extend 2013-09-05 00:09:56 +00:00
_umtx.h In revision 231989, we pass a 16-bit clock ID into kernel, however 2012-02-25 02:12:17 +00:00
_unrhdr.h Move the definition of the struct unrhdr into a separate header file, 2013-08-30 07:37:45 +00:00
aac_ioctl.h Fix typos - remove duplicate "the". 2011-02-21 09:01:34 +00:00
acct.h Increase precision of time values in the process accounting 2007-05-22 06:51:38 +00:00
acl.h Make it possible to use permission sets (full_set, modify_set, read_set 2011-04-09 07:42:25 +00:00
agpio.h A rewrite of the i810 bits of the agp(4) driver. New driver supports 2012-05-22 10:59:26 +00:00
aio.h Add new system call - aio_mlock(). The name speaks for itself. It allows 2013-06-08 13:27:57 +00:00
alq.h - Rework the underlying ALQ storage to be a circular buffer, which amongst other 2010-04-26 13:48:22 +00:00
apm.h Add a partition type for nandfs to the apm, bsd, gpt and vtoc8 schemes. 2012-05-25 20:33:34 +00:00
assym.h
ata.h Added Dataset Management defines to be used by TRIM in cam ata and scsi to 2013-04-26 15:46:09 +00:00
bio.h Be more explicit about what each bio_cmd & bio_flags value means. 2013-03-23 16:55:07 +00:00
bitset.h Add BIT_AND_ATOMIC() and CPU_AND_ATOMIC(). 2013-08-30 07:43:34 +00:00
bitstring.h
blist.h add malloc flag to blist so that it can be used in ithread context 2008-05-05 19:48:54 +00:00
buf.h Both cluster_rbuild() and cluster_wbuild() sometimes set the pages 2013-08-22 18:26:45 +00:00
buf_ring.h This fixes a out-of-order problem with several 2013-02-07 15:20:54 +00:00
bufobj.h - Convert the bufobj lock to rwlock. 2013-05-31 00:43:41 +00:00
bus.h Make detaching drivers from PCI devices more robust. While here, fix a 2013-06-27 20:21:54 +00:00
bus_dma.h Add bus_dmamap_load_bio for non-CAM disk drivers that wish to enable 2013-03-29 16:26:25 +00:00
busdma_bufalloc.h Create an architecture-agnostic buffer pool manager that uses uma(9) to 2012-12-20 00:34:54 +00:00
callout.h Fix the build and fix style. 2013-08-23 14:40:17 +00:00
capability.h Change the cap_rights_t type from uint64_t to a structure that we can extend 2013-09-05 00:09:56 +00:00
caprights.h Change the cap_rights_t type from uint64_t to a structure that we can extend 2013-09-05 00:09:56 +00:00
cdefs.h Move _Atomic() into <sys/cdefs.h>. 2013-06-16 10:48:47 +00:00
cdio.h
cdrio.h Convert files to UTF-8 2012-01-15 13:23:18 +00:00
cfictl.h Add support for frobbing Intel StrataFlash Protection Registers: 2009-02-05 18:12:07 +00:00
chio.h Update chio(1) and ch(4) to support reporting element designators. 2013-04-19 20:03:51 +00:00
clock.h The NetBSD Foundation has granted permission to remove clause 3 and 4 from 2010-03-03 17:55:51 +00:00
condvar.h MFcalloutng: 2013-03-04 12:20:48 +00:00
conf.h Add support to physio(9) for devices that don't want I/O split and 2013-08-24 04:52:22 +00:00
cons.h move GETS_*ECHO* defintions from libkern.h to cons.h 2011-12-17 15:39:14 +00:00
consio.h Convert files to UTF-8 2012-01-15 13:23:18 +00:00
copyright.h Happy New Year 2013! 2012-12-31 11:22:55 +00:00
counter.h - While we are spreading the counter(9) across network stack, more userland 2013-10-15 10:05:37 +00:00
cpu.h Provide a new CPU device driver ivar to report the nominal speed of the 2009-05-31 08:59:15 +00:00
cpuctl.h - Add support to atomically set/clear individual bits of a MSR register 2009-06-30 12:35:47 +00:00
cpuset.h Add BIT_AND_ATOMIC() and CPU_AND_ATOMIC(). 2013-08-30 07:43:34 +00:00
ctype.h
dataacq.h
devicestat.h MFprojects/camlock r254905: 2013-10-16 09:12:40 +00:00
digiio.h Fix our ioctl(2) implementation when the argument is "int". New 2006-09-27 19:57:02 +00:00
dir.h
dirent.h o Re-word a comment. 2006-08-16 09:34:56 +00:00
disk.h Plumb device physical path reporting from CAM devices, through GEOM and 2011-06-14 17:10:32 +00:00
disklabel.h Add a partition type for nandfs to the apm, bsd, gpt and vtoc8 schemes. 2012-05-25 20:33:34 +00:00
diskmbr.h Support the FAT16 partition type in gpart(8) 2013-03-07 22:32:41 +00:00
diskpc98.h Change <sys/diskpc98.h> to not redefine the same symbols that are 2013-08-07 00:00:48 +00:00
dkstat.h
domain.h Implement SOCK_CLOEXEC, SOCK_NONBLOCK and MSG_CMSG_CLOEXEC. 2013-03-19 20:58:17 +00:00
dtrace_bsd.h Initial commit of an I/O provider for DTrace on FreeBSD. 2012-07-11 16:27:02 +00:00
dvdio.h Convert files to UTF-8 2012-01-15 13:23:18 +00:00
elf.h Remove _SOLARIS_C_SOURCE compatibility definitions. Unfortunately the 2007-11-28 21:54:46 +00:00
elf32.h Convert types 'Elf{32,64}_Nhdr' into aliases of the generic 'Elf_Note' 2006-10-17 05:43:30 +00:00
elf64.h style(9) 2009-01-01 02:08:56 +00:00
elf_common.h Add the definition of DF_1_INTERPOSE flag. 2013-10-07 08:14:58 +00:00
elf_generic.h style(9) 2009-01-01 02:08:56 +00:00
endian.h Fix some way-past-brucification complaints from FlexeLint. 2010-05-20 06:16:13 +00:00
errno.h POSIX 1003.1-2008: add ENOTRECOVERABLE, EOWNERDEAD errnos. 2013-05-04 19:07:22 +00:00
eui64.h
event.h Revert r255672, it has some serious flaws, leaking file references etc. 2013-09-18 18:48:33 +00:00
eventhandler.h Debugging. My attempt at EVENTHANDLER(multiuser) was a failure; use EVENTHANDLER(mountroot) instead. 2013-10-08 06:54:52 +00:00
eventvar.h Add a resource limit for the total number of kqueues available to the 2013-10-21 16:44:53 +00:00
exec.h Add macro DECLARE_MODULE_TIED to denote a module as requiring the 2010-10-12 09:18:17 +00:00
extattr.h Fix return type of extattr_set_* and fix rmextattr(8) utility. 2013-04-02 05:30:41 +00:00
fail.h Initialize fp_location for explicitly managed fail points, and push 2010-12-21 18:23:03 +00:00
fbio.h Yet another attempt to make palette loading more safer: 2010-02-23 21:51:14 +00:00
fcntl.h Fix fcntl F_GETFL F_SETFL for files opened execute-only (O_EXEC). 2013-08-25 21:52:04 +00:00
fdcio.h
file.h Revert r255672, it has some serious flaws, leaking file references etc. 2013-09-18 18:48:33 +00:00
filedesc.h Change the cap_rights_t type from uint64_t to a structure that we can extend 2013-09-05 00:09:56 +00:00
filio.h Add FIONSPACE from NetBSD. FIONSPACE is provided so that programs may 2009-06-30 13:38:49 +00:00
firmware.h Cleanup and document the implementation of firmware(9) based on 2007-02-15 17:21:31 +00:00
fnv_hash.h Add an #include guard to the sys/fnv_hash.h. 2012-12-14 12:37:35 +00:00
gmon.h Move the PC_TO_I() and KCOUNT() macros so they aren't GUPROF specific 2006-03-29 18:17:03 +00:00
gpio.h Initial GPIO bus support. Includes: 2010-09-28 03:24:53 +00:00
gpt.h Add a partition type for nandfs to the apm, bsd, gpt and vtoc8 schemes. 2012-05-25 20:33:34 +00:00
hash.h - Move jenkins.h to jenkins_hash.c 2012-09-04 12:07:33 +00:00
hhook.h Internalise handling of virtualised hook points inside 2013-06-15 04:03:40 +00:00
iconv.h Fix improper handling of variadic args with ICDEBUG 2012-05-21 02:30:22 +00:00
imgact.h Create shared (readonly) page. Each ABI may specify the use of page by 2011-01-08 16:13:44 +00:00
imgact_aout.h Turns out the emulators still need/want a_magic, so put it back here. 2012-06-28 07:37:46 +00:00
imgact_elf.h Convert files to UTF-8 2012-01-15 13:23:18 +00:00
inflate.h
interrupt.h - Remove the eintrcnt/eintrnames usage and introduce the concept of 2011-07-18 15:19:40 +00:00
ioccom.h IOCPARM_MAX defines maximum size of a structure that can be passed 2010-04-01 16:21:35 +00:00
ioctl.h Clean up <sys/ioctl.h>. 2009-05-09 19:01:24 +00:00
ioctl_compat.h Perform cleanups to the TTY headers: 2009-09-06 09:39:40 +00:00
ipc.h Fix build if COMPAT_43 is defined without one of 2012-10-22 02:59:55 +00:00
ipmi.h Update the ipmi(4) driver: 2006-09-22 22:11:29 +00:00
jail.h Allow tmpfs be mounted inside jail. 2013-08-23 22:52:20 +00:00
joystick.h
kbio.h Restore binary compatibility for GIO_KEYMAP and PIO_KEYMAP. 2011-07-17 08:19:19 +00:00
kdb.h Add constant missed in r244099 2012-12-10 23:12:51 +00:00
kenv.h
kernel.h Implement vector callback for PVHVM and unify event channel implementations 2013-08-29 19:52:18 +00:00
kerneldump.h - Add minidump support for FreeBSD/mips 2010-11-07 03:09:02 +00:00
khelp.h Use the full and proper company name for Swinburne University of Technology 2011-04-12 08:13:18 +00:00
kobj.h As it turns out, r186347 actually is insufficient to avoid the use of the 2011-11-15 20:11:03 +00:00
ksem.h Similar to 233760 and 236717, export some more useful info about the 2013-05-03 21:11:57 +00:00
ksyms.h Add the ksyms(4) pseudo driver. The ksyms driver allows a process to 2009-05-26 21:39:09 +00:00
kthread.h Remove spurious '/*-' marks and fix some other style problems. 2010-07-22 05:42:29 +00:00
ktr.h - Add new machine parsable KTR macros for timing events. 2012-12-19 20:10:00 +00:00
ktrace.h Change the cap_rights_t type from uint64_t to a structure that we can extend 2013-09-05 00:09:56 +00:00
libkern.h Fix watchdog pretimeout. 2013-07-27 20:47:01 +00:00
limits.h POSIX.1-2008 moved some constants from the XSI option to the Base. 2011-03-04 19:28:27 +00:00
link_aout.h
link_elf.h In rtld, read the initial stack access mode from AT_STACKPROT as set 2011-01-08 17:11:49 +00:00
linker.h Remove some unused fields from struct linker_file. They were added in 2013-08-13 03:09:00 +00:00
linker_set.h After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
lock.h Fix lc_lock/lc_unlock() support for rmlocks held in shared mode. With 2013-09-20 23:06:21 +00:00
lock_profile.h In non-debugging mode make this define (void)0 instead of nothing. This 2009-06-21 09:01:12 +00:00
lockf.h The advisory lock may be activated or activated and removed during the 2009-05-24 12:39:38 +00:00
lockmgr.h Add LK_TRYUPGRADE operation for lockmgr(9), which attempts to 2013-09-29 18:02:23 +00:00
lockstat.h Revert the approach for skipping lockstat_probe_func call when doing 2011-12-12 23:29:32 +00:00
loginclass.h Add racct. It's an API to keep per-process, per-jail, per-loginclass 2011-03-29 17:47:25 +00:00
mac.h Update comments in mac.h. 2007-02-06 16:24:57 +00:00
malloc.h - Add a general purpose resource allocator, vmem, from NetBSD. It was 2013-06-28 03:51:20 +00:00
mbpool.h Give (*ext_free) an int return value allowing for very sophisticated 2013-08-25 10:57:09 +00:00
mbuf.h Add a routine for attaching an mbuf to a buffer with an external 2013-08-29 23:46:38 +00:00
mchain.h Add unicode support to msdosfs and smbfs; original pathes from imura, 2011-11-18 03:05:20 +00:00
md4.h
md5.h Add definitions for MD5_BLOCK_LENGTH, MD5_DIGEST_LENGTH and 2006-03-15 19:47:12 +00:00
mdioctl.h Make it possible to resize md(4) devices. 2012-07-07 20:32:21 +00:00
memdesc.h Reform the busdma API so that new types may be added without modifying 2013-02-12 16:57:20 +00:00
memrange.h Add reader/writer lock around mem_range_attr_get() and mem_range_attr_set(). 2011-01-17 22:58:28 +00:00
mman.h Add a mmap flag (MAP_32BIT) on 64-bit platforms to request that a mapping use 2013-09-09 18:11:59 +00:00
module.h Add macro DECLARE_MODULE_TIED to denote a module as requiring the 2010-10-12 09:18:17 +00:00
module_khelp.h Now that the necessary infrastructure is in place to ensure hhook points which 2013-06-15 10:38:31 +00:00
mount.h Forced dismounts of NFS mounts can fail when thread(s) are stuck 2013-09-01 23:02:59 +00:00
mouse.h sys/mouse.h: Move members introduced in r255153 to end of struct synapticshw 2013-09-02 19:49:18 +00:00
mpt_ioctl.h Add a new personality to mpt(4) devices to allow userland applications to 2008-05-06 20:49:53 +00:00
mqueue.h
msg.h Add ucred pointer to the SysV-related memory structures. This is required 2011-04-06 16:59:54 +00:00
msgbuf.h - Clean up timestamps in msgbuf code. The timestamps should now be 2012-03-19 00:36:32 +00:00
mtio.h
mutex.h Remove an unused macro we originally got from BSD/OS. 2013-06-01 11:31:09 +00:00
namei.h Change the cap_rights_t type from uint64_t to a structure that we can extend 2013-09-05 00:09:56 +00:00
nlist_aout.h Make the char *n_name member of struct nlist 'const'. 2010-06-10 14:19:51 +00:00
osd.h - Introduce the Hhook (Helper Hook) KPI. The KPI is closely modelled on pfil(9), 2010-12-21 13:45:29 +00:00
param.h Bump __FreeBSD_version to 1100001 for addition of support for "first boot" 2013-10-19 21:55:42 +00:00
pciio.h - Add a new ioctl to /dev/pci to fetch details on an individual BAR of a 2009-02-02 22:04:40 +00:00
pcpu.h Merge from projects/counters: 2013-04-08 19:19:10 +00:00
pctrie.h - pctrie really only requires two byte alignment so that there is a single 2013-05-12 20:44:28 +00:00
pioctl.h Fix typo. 2011-01-23 12:44:17 +00:00
pipe.h I am comparing current pipe code with the one in 8.3-STABLE r236165, 2012-07-31 05:48:35 +00:00
pmc.h Update hwpmc to support Haswell class processors. 2013-03-28 19:15:54 +00:00
pmckern.h Rename the kld_unload event handler to kld_unload_try, and add a new 2013-08-24 21:13:38 +00:00
pmclog.h Add software PMC support. 2012-03-28 20:58:30 +00:00
poll.h
posix4.h In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
power.h
priority.h Use a name instead of a magic number for kern_yield(9) when the priority 2011-05-13 05:27:58 +00:00
priv.h Fix typo. 2013-08-03 13:38:56 +00:00
proc.h Merge GEOM direct dispatch changes from the projects/camlock branch. 2013-10-22 08:22:19 +00:00
procctl.h Extend the support for exempting processes from being killed when swap is 2013-09-19 18:53:42 +00:00
procdesc.h Change the cap_rights_t type from uint64_t to a structure that we can extend 2013-09-05 00:09:56 +00:00
procfs.h Add the ability for GDB to printout the thread name along with other 2010-11-22 14:42:13 +00:00
protosw.h - Implement two new system calls: 2013-03-02 21:11:30 +00:00
ptio.h
ptrace.h The PTRACESTOP() macro is used only once. Inline the only use and remove 2012-02-11 14:49:25 +00:00
queue.h Add new FOREACH_FROM variants of the queue(3) FOREACH macros which can 2013-06-18 02:57:56 +00:00
racct.h Add CPU percentage limit enforcement to RCTL. The resouce name is "pcpu". 2012-10-26 16:01:08 +00:00
random.h Define RANDOM_PURE_RNDTEST for rndtest(4). 2013-10-09 20:12:59 +00:00
rangelock.h Change the queue of locks in kern_rangelock.c from holding lock requests in 2013-08-15 20:19:17 +00:00
rctl.h Add CPU percentage limit enforcement to RCTL. The resouce name is "pcpu". 2012-10-26 16:01:08 +00:00
reboot.h
refcount.h Add assertion for refcount overflow. 2012-07-27 09:16:48 +00:00
regression.h
resource.h Add a resource limit for the total number of kqueues available to the 2013-10-21 16:44:53 +00:00
resourcevar.h Add a resource limit for the total number of kqueues available to the 2013-10-21 16:44:53 +00:00
rman.h Typo. 2012-02-27 18:28:31 +00:00
rmlock.h Several improvements to rmlock(9). Many of these are based on patches 2013-06-25 18:44:15 +00:00
rtprio.h Replace (name) with Henric Vestergaard Draboel since it was clear that 2007-01-08 21:21:45 +00:00
runq.h - Restore runq to manipulating threads directly by putting runq links and 2008-03-20 05:51:16 +00:00
rwlock.h MFcalloutng: 2013-03-04 12:48:41 +00:00
sbuf.h Add sbuf_start_section() and sbuf_end_section() functions, which can 2013-04-11 19:49:18 +00:00
sched.h rename scheduler->swapper and SI_SUB_RUN_SCHEDULER->SI_SUB_LAST 2013-07-24 09:45:31 +00:00
sdt.h Give argtype struct names a different prefix than probe struct names. 2013-09-21 22:43:50 +00:00
select.h Fix FD_ISSET() on LP64 platforms. The FD_ISSET() function/macro is 2006-01-06 22:12:46 +00:00
selinfo.h Fix a deficiency in the selinfo interface: 2011-08-25 15:51:54 +00:00
sem.h Remove semaphore map entry count "semmap" field and its tuning 2011-07-14 14:18:14 +00:00
sema.h
serial.h o Don't make the SER_INT_* defines visible to userland. They 2006-03-30 17:24:42 +00:00
sf_buf.h - Create kern.ipc.sendfile namespace, and put the new "readhead" OID 2013-09-22 13:36:52 +00:00
sglist.h Change the 'resid' parameter to sglist_consume_uio() from an int to a 2009-08-20 19:23:58 +00:00
shm.h Add ucred pointer to the SysV-related memory structures. This is required 2011-04-06 16:59:54 +00:00
sigio.h
signal.h Register signal 33 explicitly as reserved by real-time library, and 2012-03-26 19:12:09 +00:00
signalvar.h Partially revert r195702. Deferring stops is now implemented via a set of 2013-03-18 17:23:58 +00:00
sleepqueue.h Partially revert r195702. Deferring stops is now implemented via a set of 2013-03-18 17:23:58 +00:00
slicer.h Add a new geom class which allows to divide NAND Flash chip 2012-05-22 08:33:14 +00:00
smp.h Add support for suspend/resume/migration operations when running as a 2013-09-20 05:06:03 +00:00
snoop.h
sockbuf.h - Substitute sbdrop_internal() with sbcut_internal(). The latter doesn't free 2013-10-09 11:57:53 +00:00
socket.h Remove most of the remaining sysctl name list macros. They were only 2013-08-26 18:16:05 +00:00
socketvar.h Remove zero-copy sockets code. It only worked for anonymous memory, 2013-09-16 06:25:54 +00:00
sockio.h Provide ABI compatibility shim to enable configuring of addresses 2011-12-21 12:39:08 +00:00
sockopt.h Factor sockbuf, sockopt, and sockstate out of socketvar.h in to separate headers. 2008-07-29 07:45:05 +00:00
sockstate.h Factor sockbuf, sockopt, and sockstate out of socketvar.h in to separate headers. 2008-07-29 07:45:05 +00:00
soundcard.h add SNDCTL_DSP_HALT specified by OSS 2011-06-29 08:32:37 +00:00
stack.h Constify stack argument for functions that don't modify it. 2011-11-16 19:06:55 +00:00
stat.h Expand the use of stat(2) flags to allow storing some Windows/DOS 2013-08-21 23:04:48 +00:00
statvfs.h
stdatomic.h Change the return type of the fallback implementation of the 2013-08-18 19:37:35 +00:00
stddef.h Guard ptrdiff_t. 2011-05-05 02:35:25 +00:00
stdint.h Make the wchar_t type machine dependent. 2012-06-24 04:15:58 +00:00
sun_disklabel.h
sx.h MFcalloutng: 2013-03-04 12:48:41 +00:00
syscall.h Regen. 2013-09-19 18:56:00 +00:00
syscall.mk Regen. 2013-09-19 18:56:00 +00:00
syscallsubr.h Extend the support for exempting processes from being killed when swap is 2013-09-19 18:53:42 +00:00
sysctl.h Fix a typo. 2013-09-12 19:52:23 +00:00
sysent.h Remove no longer needed forward declaration for struct sf_buf. 2012-06-23 10:14:51 +00:00
syslimits.h Rework the credential code to support larger values of NGROUPS and 2009-06-19 17:10:35 +00:00
syslog.h Add static/const keywords to the arrays. 2013-04-09 16:16:34 +00:00
sysproto.h Regen. 2013-09-19 18:56:00 +00:00
systm.h Similar to debug.iosize_max_clamp sysctl, introduce 2013-10-15 06:33:10 +00:00
taskqueue.h Revert r256587. 2013-10-18 11:25:08 +00:00
termios.h Decompose <sys/termios.h>. 2009-11-28 23:50:48 +00:00
thr.h Make this file more C++ friendly. 2010-04-20 17:57:43 +00:00
tiio.h
time.h Use single underscore for all parameters name and local variables in 2013-09-01 22:30:24 +00:00
timeb.h Add warnings to <regexp.h> and <sys/timeb.h>. 2010-03-09 21:01:12 +00:00
timeet.h MFcalloutng: 2013-02-28 13:46:03 +00:00
timeffc.h Introduce the sysclock_getsnapshot() and sysclock_snap2bintime() KPIs. The 2011-12-24 01:32:01 +00:00
timepps.h - Add Pulse-Per-Second timestamping using raw ffcounter and corresponding 2011-11-21 13:34:29 +00:00
timers.h s/timer_t/int/g 2006-03-01 06:48:31 +00:00
times.h
timespec.h Rename st_*timespec fields to st_*tim for POSIX 2008 compliance. 2010-03-28 13:13:22 +00:00
timetc.h Add support for suspend/resume/migration operations when running as a 2013-09-20 05:06:03 +00:00
timex.h Add proper prerequisites for even two more headers. 2013-05-21 21:50:11 +00:00
tree.h In sys/tree.h: 2009-03-01 04:57:23 +00:00
tty.h Add tty_set_winsize(). 2012-11-03 22:21:37 +00:00
ttycom.h Fix whitespace inconsistencies in TTY code. 2012-02-06 18:15:46 +00:00
ttydefaults.h Add static/const keywords to the arrays. 2013-04-09 16:16:34 +00:00
ttydevsw.h Reintroduce the cioctl() hook in the TTY layer for digi(4). 2011-07-02 13:54:20 +00:00
ttydisc.h Add ttydisc_rint_simple(). 2009-08-23 08:04:40 +00:00
ttyhook.h Change ttyhook_register() second argument from thread to process pointer. 2008-12-13 21:17:46 +00:00
ttyqueue.h Properly set the low watermarks when reducing the baud rate. 2009-10-19 07:17:37 +00:00
turnstile.h Tighten up some of the comments describing turnstiles and sleepqueues. 2010-12-13 23:53:55 +00:00
types.h Change the cap_rights_t type from uint64_t to a structure that we can extend 2013-09-05 00:09:56 +00:00
ucontext.h The getcontext() from the __fillcontextx() call in the 2013-05-28 04:54:16 +00:00
ucred.h Add two new system calls, setloginclass(2) and getloginclass(2). This makes 2011-03-05 12:40:35 +00:00
uio.h Remove zero-copy sockets code. It only worked for anonymous memory, 2013-09-16 06:25:54 +00:00
umtx.h umtx operation UMTX_OP_MUTEX_WAKE has a side-effect that it accesses 2012-04-05 02:24:08 +00:00
un.h Add placeholder constants to reserve a portion of the socket option 2013-02-01 15:32:20 +00:00
unistd.h Implement syscall clock_getcpuclockid2, so we can get a clock id 2012-08-17 02:26:31 +00:00
unpcb.h Remove explicit locking of struct file. 2007-12-30 01:42:15 +00:00
user.h Extend the support for exempting processes from being killed when swap is 2013-09-19 18:53:42 +00:00
utsname.h
uuid.h Decouple the UUID generator from network interfaces by having MAC 2013-07-24 04:24:21 +00:00
vdso.h Rework the __vdso_* symbols attributes to only make the symbols weak, 2013-01-30 12:48:16 +00:00
vmem.h - Add a general purpose resource allocator, vmem, from NetBSD. It was 2013-06-28 03:51:20 +00:00
vmmeter.h Improve pageout flow control to wakeup more frequently and do less work while 2013-08-13 21:56:16 +00:00
vnode.h There are several code sequences like 2013-07-09 20:49:32 +00:00
vtoc.h Add a partition type for nandfs to the apm, bsd, gpt and vtoc8 schemes. 2012-05-25 20:33:34 +00:00
wait.h wait: Make sure WIFSIGNALED(s) is false if WIFCONTINUED(s) is true. 2013-08-11 14:15:01 +00:00
watchdog.h watchdogd(8) and watchdog(4) enhancements. 2013-02-27 19:03:31 +00:00