freebsd-dev/sys/sys
Konstantin Belousov ab52a230cf Rearrange the struct bufobj and struct vnode layouts to reduce
padding.  On the amd64 kernel with INVARIANTS turned off, size of the
struct vnode is reduced from 496 to 472 bytes, saving 24 bytes of
memory and KVA per vnode.

Noted and reviewed by:	peter
Tested by:	pho
Sponsored by:	The FreeBSD Foundation
2013-01-14 05:46:49 +00:00
..
_bus_dma.h
_callout.h Implement the delayed task execution extension to the taskqueue 2011-04-26 11:39:56 +00:00
_cpuset.h Post r222812 KTR_CPUMASK started being initialized only as a tunable 2012-08-30 21:22:47 +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
_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
_pthreadtypes.h Fix the visibility of several prototypes. Also move pthread_kill() and 2009-03-14 20:10:14 +00:00
_rmlock.h Remove namespace pollution in _rmlock.h by defining rm_queue structure 2012-09-18 00:43: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
_stdint.h Fix by hand files that aren't added automatically by svn. 2011-05-09 22:13:07 +00:00
_sx.h
_task.h Use a safer mechanism for determining if a task is currently running, 2010-10-13 22:59:04 +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
_types.h Make the wchar_t type machine dependent. 2012-06-24 04:15:58 +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
aac_ioctl.h Fix typos - remove duplicate "the". 2011-02-21 09:01:34 +00:00
acct.h
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 Namespace: aio_waitcomplete() is a BSD extension. 2009-03-14 19:17:00 +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 Add and utilize defines for the ATA device register. 2012-07-12 10:09:34 +00:00
bio.h Correct bioq_disksort so that bioq_insert_tail() offers barrier semantic. 2010-09-02 19:40:28 +00:00
bitstring.h
blist.h
buf_ring.h Improve bufring impl: 2012-12-28 17:41:36 +00:00
buf.h Fix two problems that caused instant panic when the device mounted 2012-10-28 18:53:28 +00:00
bufobj.h Rearrange the struct bufobj and struct vnode layouts to reduce 2013-01-14 05:46:49 +00:00
bus_dma.h - Change contigmalloc() to use the vm_paddr_t type instead of an unsigned 2012-03-01 19:58:34 +00:00
bus.h Revert r239178 and implement two new functions, namely 2012-08-15 15:42:57 +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 When callout_reset_on() cannot immediately migrate a callout since it 2012-05-03 10:38:02 +00:00
capability.h - Enforce CAP_MKFIFO on mkfifoat(2), not on mknodat(2). Without this change 2012-10-01 05:43:24 +00:00
cdefs.h Add an unified macro to deny ability from the compiler to reorder 2012-10-09 14:32:30 +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
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
conf.h Provide a device name in the sysctl tree for programs to query the 2012-11-01 17:01:05 +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
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 Tune cpuset macros to optimize cases when CPU_SETSIZE fits into single 2012-03-12 07:02:16 +00:00
ctype.h
dataacq.h
devicestat.h
digiio.h
dir.h
dirent.h
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 VMware environments are not unusual now. Add VMware partitions recognition 2012-04-18 11:59:03 +00:00
diskpc98.h Fix clang warnings. 2011-06-18 13:56:33 +00:00
dkstat.h
domain.h Introduce and use a sysinit-based initialization scheme for virtual 2009-07-23 20:46:49 +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
elf32.h
elf64.h style(9) 2009-01-01 02:08:56 +00:00
elf_common.h Add definition for the -z nodefaultlib flag. 2012-05-06 18:34:31 +00:00
elf_generic.h style(9) 2009-01-01 02:08:56 +00:00
elf.h
endian.h Fix some way-past-brucification complaints from FlexeLint. 2010-05-20 06:16:13 +00:00
errno.h errno.h: fix couple of whitespace nits 2011-04-04 17:39:30 +00:00
eui64.h
event.h - Add knlist_init_rw_reader() function to kqueue(9). 2012-03-26 09:34:17 +00:00
eventhandler.h Base the mbuf related limits on the available physical memory or 2012-11-27 21:19:58 +00:00
eventvar.h
exec.h Add macro DECLARE_MODULE_TIED to denote a module as requiring the 2010-10-12 09:18:17 +00:00
extattr.h
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 Add F_DUP2FD_CLOEXEC. Apparently Solaris 11 already did this. 2012-07-27 10:41:10 +00:00
fdcio.h
file.h Do not force a writer to the devfs file to drain the buffer writes. 2012-12-23 22:43:27 +00:00
filedesc.h Explicitly assert that the filedesc lock is held when the fget_locked() 2012-06-14 16:24:03 +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
fnv_hash.h Add an #include guard to the sys/fnv_hash.h. 2012-12-14 12:37:35 +00:00
gmon.h
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 Use the full and proper company name for Swinburne University of Technology 2011-04-12 08:13:18 +00:00
iconv.h Fix improper handling of variadic args with ICDEBUG 2012-05-21 02:30:22 +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
imgact.h Create shared (readonly) page. Each ABI may specify the use of page by 2011-01-08 16:13:44 +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_compat.h Perform cleanups to the TTY headers: 2009-09-06 09:39:40 +00:00
ioctl.h Clean up <sys/ioctl.h>. 2009-05-09 19:01:24 +00:00
ipc.h Fix build if COMPAT_43 is defined without one of 2012-10-22 02:59:55 +00:00
ipmi.h
jail.h Add procfs to jail-mountable filesystems. 2012-02-29 00:30:18 +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 Remove splimp() comment from sysinit table and attribute SI_SUB_PROTO_BEGIN 2012-10-19 10:04:43 +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
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 Include the associated wait channel message for context switch ktrace 2012-04-20 15:32:36 +00:00
libkern.h Remove second consts in r233288 in order to appease C++ compilers. 2012-03-26 18:22:04 +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_set.h After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
linker.h Provide convenience function for obtaining MODINFO_ADDR and MODINFO_SIZE 2011-02-09 19:08: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
lock.h Remove unused/obsolete macros. 2012-11-13 18:24:47 +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 Constify arguments for locking KPIs where possible. 2011-11-16 21:51:17 +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
malloc.h - Change contigmalloc() to use the vm_paddr_t type instead of an unsigned 2012-03-01 19:58:34 +00:00
mbpool.h
mbuf.h Change function argument type instead of casting. 2013-01-09 09:29:22 +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
mdioctl.h Make it possible to resize md(4) devices. 2012-07-07 20:32:21 +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 Export some more useful info about shared memory objects to userland 2012-04-01 18:22:48 +00:00
module_khelp.h Use the full and proper company name for Swinburne University of Technology 2011-04-12 08:13:18 +00:00
module.h Add macro DECLARE_MODULE_TIED to denote a module as requiring the 2010-10-12 09:18:17 +00:00
mount.h Remove the deprecated MNT_VNODE_FOREACH interface. Use the 2013-01-03 19:02:52 +00:00
mouse.h
mpt_ioctl.h
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 Tweak comment to make more clear why it will fail. 2012-11-02 16:31:01 +00:00
namei.h - Add NOCAPCHECK flag to namei that allows lookup to work even if the process 2012-11-27 10:32:35 +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 for install -N and (belatedly) nmtree. 2013-01-11 21:11:01 +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 Remove namespace pollution in _rmlock.h by defining rm_queue structure 2012-09-18 00:43:15 +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 the Xeon class of Sandybridge processors. 2012-10-19 17:01:27 +00:00
pmckern.h Remove unncessary atomic operation when reading process flags in 2012-08-22 20:22:55 +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 Add infrastructure to allow all frames/packets received on an interface 2011-07-03 12:22:02 +00:00
proc.h In pget(9), if PGET_NOTWEXIT flag is not specified, also search the 2012-11-16 08:25:06 +00:00
procdesc.h Add experimental support for process descriptors 2011-08-18 22:51:30 +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 - according to POSIX, make socket(2) return EAFNOSUPPORT rather than 2012-12-07 02:22:48 +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 Rename __member2struct() to __containerof(). 2012-09-13 08:13:01 +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
rangelock.h Add a rangelock implementation, intended to be used to range-locking 2012-05-30 16:06:38 +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 the wait6(2) system call. It takes POSIX waitid()-like process 2012-11-13 12:52:31 +00:00
resourcevar.h Change kern.proc.rlimit sysctl to: 2012-01-22 20:25:00 +00:00
rman.h Typo. 2012-02-27 18:28:31 +00:00
rmlock.h Constify arguments for locking KPIs where possible. 2011-11-16 21:51:17 +00:00
rtprio.h
runq.h
rwlock.h Merge r242395,242483 from mutex implementation: 2012-11-03 15:57:37 +00:00
sbuf.h Change the length quantities of sbufs to be ssize_t rather than int. 2011-05-16 16:18:40 +00:00
sched.h Compiler have a precise knowledge of the content of sched_pin() and 2012-10-29 01:35:17 +00:00
sdt.h Implement the DTrace sched provider. This implementation aims to be 2012-05-15 01:30:25 +00:00
select.h
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
sf_buf.h
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 In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
sleepqueue.h Tighten up some of the comments describing turnstiles and sleepqueues. 2010-12-13 23:53:55 +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 - Implement run-time expansion of the KTR buffer via sysctl. 2012-11-15 00:51:57 +00:00
snoop.h
sockbuf.h Increase the defaults for the maximum socket buffer limit, 2011-08-25 09:20:13 +00:00
socket.h Add SO_PROTOCOL/SO_PROTOTYPE socket SOL_SOCKET-level option to get the 2012-02-26 13:55:43 +00:00
socketvar.h The socket_zone UMA zone is now private to uipc_socket.c. 2012-12-08 08:35:49 +00:00
sockio.h Provide ABI compatibility shim to enable configuring of addresses 2011-12-21 12:39:08 +00:00
sockopt.h
sockstate.h
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 Put struct ostat and struct nstat under #ifdef _KERNEL. The 2012-07-22 20:08:38 +00:00
statvfs.h
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 Introduce the same mutex-wise fix in r227758 for sx locks. 2011-11-21 12:59:52 +00:00
syscall.h Regen 2012-11-13 12:53:41 +00:00
syscall.mk Regen 2012-11-13 12:53:41 +00:00
syscallsubr.h Move the definition of the idtype_t from sys/types.h to sys/wait.h. 2012-11-16 06:29:52 +00:00
sysctl.h Similar to CTLFLAG_RDTUN, provide CTLFLAG_RWTUN that defines writable sysctl 2012-12-11 19:54:35 +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 Namespace: vsyslog() is a BSD extension. 2009-03-14 19:07:25 +00:00
sysproto.h Regen 2012-11-13 12:53:41 +00:00
systm.h Switch the hardwired WITNESS panics to kassert_panic. 2012-12-11 01:23:50 +00:00
taskqueue.h Add a TASK_INITIALIZER() macro that can be used to statically 2011-12-19 18:55:13 +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 While there, remove an unneeded blank line. 2012-09-01 08:45:58 +00:00
timeb.h Add warnings to <regexp.h> and <sys/timeb.h>. 2010-03-09 21:01:12 +00:00
timeet.h Refactor timer management code with priority to one-shot operation mode. 2010-09-13 07:25:35 +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
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 Prefer uint64_t over u_int64_t. 2011-07-14 21:02:15 +00:00
timex.h
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 Fix whitespace inconsistencies in TTY code. 2012-02-06 18:15:46 +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 Move the definition of the idtype_t from sys/types.h to sys/wait.h. 2012-11-16 06:29:52 +00:00
ucontext.h Add a convenience macro for the returns_twice attribute, and apply it to 2012-04-29 11:04:31 +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 Constify args to copyiniov and copyinuio. 2011-11-14 07:12:10 +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
unistd.h Implement syscall clock_getcpuclockid2, so we can get a clock id 2012-08-17 02:26:31 +00:00
unpcb.h
user.h Missing one in r239505. 2012-08-21 17:06:36 +00:00
utsname.h
uuid.h
vdso.h Stop updating the struct vdso_timehands from even handler executed in 2012-06-23 09:33:06 +00:00
vmmeter.h Replace the single, global page queues lock with per-queue locks on the 2012-11-13 02:50:39 +00:00
vnode.h Rearrange the struct bufobj and struct vnode layouts to reduce 2013-01-14 05:46:49 +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 Move the definition of the idtype_t from sys/types.h to sys/wait.h. 2012-11-16 06:29:52 +00:00
watchdog.h - Add the possibility to reuse the already last used timeout when patting 2011-04-27 16:43:03 +00:00