freebsd-skq/sys/sys
bde 8bff5fd956 Fix the encoding of major and minor numbers in 64-bit dev_t by restoring
the old encodings for the lower 16 and 32 bits and only using the
higher 32 bits for unusually large major and minor numbers.  This
change breaks compatibility with the previous encoding (which was only
used in -current).

Fix truncation to (essentially) 16-bit dev_t in newnfs v3.

Any encoding of device numbers gives an ABI, so it can't be changed
without translations for compatibility.  Extra bits give the much
larger complication that the translations need to compress into fewer
bits.  Fortunately, more than 32 bits are rarely needed, so
compression is rarely needed except for 16-bit linux dev_t where it
was always needed but never done.

The previous encoding moved the major number into the top 32 bits.
Almost no translation code handled this, so the major number was blindly
truncated away in most 32-bit encodings.  E.g., for ffs, mknod(8) with
major = 1 and minor = 2 gave dev_t = 0x10000002; ffs cannot represent
this and blindly truncated it to 2.  But if this mknod was run on any
released version of FreeBSD, it gives dev_t = 0x102.  ffs can represent
this, but in the previous encoding it was not decoded, giving major = 0,
minor = 0x102.

The presence of bugs was most obvious for exporting dev_t's from an
old system to -current, since bugs in newnfs augment them.  I fixed
oldnfs to support 32-bit dev_t in 1996 (r16634), but this regressed
to 16-bit dev_t in newnfs, first to the old 16-bit encoding and then
further in -current.  E.g., old ad0 with major = 234, minor = 0x10002
had the correct (major, minor) number on the wire, but newnfs truncated
this to (234, 2) and then the previous encoding shifted the major
number into oblivion as seen by ffs or old applications.

I first tried to fix this by translating on every ABI/API boundary, but
there are too many boundaries and too many sloppy translations by blind
truncation.  So use the old encoding for the low 32 bits so that sloppy
translations work no worse than before provided the high 32 bits are
not set.  Add some error checking for when bits are lost.  Keep not
doing any error checking for translations for almost everything in
compat/linux.

compat/freebsd32/freebsd32_misc.c:
Optionally check for losing bits after possibly-truncating assignments as
before.

compat/linux/linux_stats.c:
Depend on the representation being compatible with Linux's (or just with
itself for local use) and spell some of the translations as assignments in
a macro that hides the details.

fs/nfsclient/nfs_clcomsubs.c:
Essentially the same fix as in 1996, except there is now no possible
truncation in makedev() itself.  Also fix nearby style bugs.

kern/vfs_syscalls.c:
As for freebsd32.  Also update the sysctl description to include file
numbers, and change it to describe device ids as device numbers.

sys/types.h:
Use inline functions (wrapped by macros) since the expressions are now
a bit too complicated for plain macros.  Describe the encoding and
some of the reasons for it.  16-bit compatibility didn't leave many
reasonable choices for the 32-bit encoding, and 32-bit compatibility
doesn't leave many reasonable choices for the 64-bit encoding.  My
choice is to put the 8 new minor bits in the low 8 bits of the top 32
bits.  This minimizes discontiguities.

Reviewed by:	kib (except for rewrite of the comment in linux_stats.c)
2018-06-13 12:22:00 +00:00
..
disk gpart: add fat32lba MBR partition type 2018-05-04 00:34:27 +00:00
_bitset.h Implement several enhancements to NUMA policies. 2018-03-29 02:54:50 +00:00
_bus_dma.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_callout.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
_cpuset.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_domainset.h Add files for r327895 2018-01-12 22:57:57 +00:00
_ffcounter.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_iovec.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
_kstack_cache.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
_lock.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_lockmgr.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_mutex.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_null.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_pctrie.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_pthreadtypes.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_rmlock.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
_rwlock.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_semaphore.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_sigset.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
_sockaddr_storage.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
_stack.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_stdarg.h With the fall-back hack for lint gone, I have no copyright claim on this file. 2018-05-06 21:22:46 +00:00
_stdint.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_sx.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_task.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_termios.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
_timespec.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
_timeval.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_types.h Do not include float interfaces when using libsa. 2018-02-23 04:04:25 +00:00
_ucontext.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
_uio.h Move uio enums to sys/_uio.h. 2018-03-27 15:20:03 +00:00
_umtx.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
_unrhdr.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
aac_ioctl.h Fix FSACTL_GET_NEXT_ADAPTER_FIB under 32-bit compat. 2018-03-14 21:11:41 +00:00
acct.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
acl.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
agpio.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
aio.h Fix a comment. No functional change. 2018-02-12 17:42:28 +00:00
alq.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
apm.h Re-apply change 306811 or alternatively, revert change 307385. 2016-10-16 02:43:51 +00:00
assym.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
ata.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
atomic_common.h Add atomic_load(9) and atomic_store(9) operations. 2017-12-19 09:59:20 +00:00
auxv.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
bio.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
bitset.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
bitstring.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
blist.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
boot.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
buf_ring.h Unhook DEBUG_BUFRING from INVARIANTS 2018-05-15 23:55:38 +00:00
buf.h Detect and optimize reads from the hole on UFS. 2018-05-13 09:47:28 +00:00
bufobj.h Further parallelize the buffer cache. 2018-02-20 00:06:07 +00:00
bus_dma_internal.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
bus_dma.h Remove a trailing whitspace. 2018-02-06 19:14:15 +00:00
bus.h Make the data returned by devinfo harder to overflow. 2018-05-31 02:57:58 +00:00
busdma_bufalloc.h Fix compile error from r327900 2018-01-12 23:41:12 +00:00
callout.h Allow pause_sbt() to catch signals during sleep by passing C_CATCH flag. 2018-03-03 18:36:38 +00:00
capability.h Revert r334929 2018-06-10 19:15:38 +00:00
caprights.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
capsicum.h kern_sendit: use pre-initialized rights 2018-05-23 01:48:09 +00:00
cdefs.h Drop support for lint for cdefs.h. 2018-03-20 21:18:40 +00:00
cdio.h
cdrio.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
cfictl.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
chio.h sys/sys/chio.h: add NetBSD RCS ID. 2017-12-28 14:26:33 +00:00
ck.h ck: simplify interface with libkvm consumers by defining ck_queue types 2018-05-21 01:53:23 +00:00
clock.h Add a set of convenience routines for RTC drivers to use for debug output, 2018-02-12 17:33:14 +00:00
cnv.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
compressor.h Add support for zstd-compressed user and kernel core dumps. 2018-02-13 19:28:02 +00:00
condvar.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
conf.h Refactor some of the MI kernel dump code in preparation for netdump. 2018-05-06 00:22:38 +00:00
cons.h add support for console resuming, implement it for uart, use on x86 2018-05-29 16:16:24 +00:00
consio.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
copyright.h copyright.h: Update license text to 'THE AUTHOR' 2018-01-23 20:38:03 +00:00
counter.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
cpu.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
cpuctl.h Make it possible to re-evaluate cpu_features. 2018-01-05 21:06:19 +00:00
cpuset.h Implement several enhancements to NUMA policies. 2018-03-29 02:54:50 +00:00
ctype.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
devicestat.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
devmap.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
dir.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
dirent.h sys/sys: Use a more common spelling of 'dirent' 2018-03-01 22:38:21 +00:00
disk_zone.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
disk.h SPDX: use the Beerware identifier. 2017-11-30 20:33:45 +00:00
disklabel.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
diskmbr.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
dkstat.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
dnv.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
domain.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
domainset.h Implement several enhancements to NUMA policies. 2018-03-29 02:54:50 +00:00
dtrace_bsd.h Pass the trap frame to fasttrap hooks. 2017-12-11 19:21:39 +00:00
dvdio.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
efi.h Add a function to retrieve the EFI realtime clock capabilities. 2018-03-01 22:57:14 +00:00
efiio.h Create /dev/efidev to provide an ioctl interface to 2016-10-11 22:24:30 +00:00
elf32.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
elf64.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
elf_common.h Included VSX registers in powerpc core dumps 2018-06-02 20:28:58 +00:00
elf_generic.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
elf.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
endian.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
epoch.h epoch(9): make epoch closer to style(9) 2018-05-30 03:39:57 +00:00
errno.h We don't need both _STAND and _STANDALONE. There's more places that 2017-12-02 00:07:09 +00:00
eui64.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
event.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
eventhandler.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
eventvar.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
exec.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
extattr.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
fail.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
fbio.h Use unsigned intptr_t type for framebuffer addresses 2017-12-06 02:05:21 +00:00
fcntl.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
fdcio.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
file.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
filedesc.h Properly do a deep copy of the ioctls capability array for fget_cap(). 2018-04-17 18:07:40 +00:00
filio.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
firmware.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
fnv_hash.h
gmon.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
gpio.h SPDX: Fix some cases wrongly attributed to MIT. 2017-11-30 15:10:11 +00:00
gpt.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
gtaskqueue.h iflib: mark irq allocation name parameter as constant 2018-05-29 21:56:39 +00:00
hash.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
hhook.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
iconv.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
imgact_aout.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
imgact_binmisc.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
imgact_elf.h Avoid two suword() calls per auxarg entry. 2018-05-24 16:25:18 +00:00
imgact.h Simplify the code to allocate stack for auxv, argv[], and environment vectors. 2018-04-19 16:00:34 +00:00
inflate.h
interrupt.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
intr.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
ioccom.h Add _IOC_NEWLEN() and _IOC_NEWTYPE() macros. 2018-03-16 22:23:04 +00:00
ioctl_compat.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
ioctl.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
iov_schema.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
iov.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
ipc.h Get rid of the requirement to include SysV IPC headers with _KERNEL 2018-02-16 01:33:01 +00:00
ipmi.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
jail.h Make it easier for filesystems to count themselves as jail-enabled, 2018-05-04 20:54:27 +00:00
joystick.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
kbio.h
kdb.h set kdb_why to "trap" when calling kdb_trap from trap_fatal 2018-04-19 05:06:56 +00:00
kenv.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
kern_prefetch.h Fix build issue with const and volatile and the 2018-06-07 19:57:55 +00:00
kernel.h Move sysinit and sysuninit linker sets in the data (writeable) section. 2018-03-21 10:26:39 +00:00
kerneldump.h Add support for zstd-compressed user and kernel core dumps. 2018-02-13 19:28:02 +00:00
khelp.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
kobj.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
ksem.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
kthread.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
ktr_class.h Drop KTR_CONTENTION. 2018-03-20 15:51:05 +00:00
ktr.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
ktrace.h Reduce overhead of ktrace checks in the common case. 2018-05-09 00:00:47 +00:00
libkern.h Use __builtin for various mem* and b* (e.g. bzero) routines. 2018-06-02 18:03:35 +00:00
limits.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
link_aout.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
link_elf.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
linker_set.h Move sysinit and sysuninit linker sets in the data (writeable) section. 2018-03-21 10:26:39 +00:00
linker.h Implement support for ifuncs in the kernel linker. 2018-05-03 21:37:46 +00:00
lock_profile.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
lock.h Start witness much earlier in boot so that we can shrink the pend list and 2018-03-22 19:11:43 +00:00
lockf.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
lockmgr.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
lockstat.h lockstat: track lockstat just like sdt probes 2018-04-24 01:04:10 +00:00
loginclass.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
mac.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
malloc.h malloc: elaborate on r334545 due to frequent questions 2018-06-06 05:08:05 +00:00
mbuf.h This commit brings in a new refactored TCP stack called Rack. 2018-06-07 18:18:13 +00:00
mchain.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
md4.h SPDX: some uses of the RSA-MD license. 2017-12-13 16:30:39 +00:00
md5.h SPDX: some uses of the RSA-MD license. 2017-12-13 16:30:39 +00:00
mdioctl.h md_pad is used by MDIOCLIST and not available for future use. 2018-03-13 20:54:18 +00:00
memdesc.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
memrange.h sys/sys: minor spelling fixes. 2016-05-03 15:14:17 +00:00
mman.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
module_khelp.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
module.h Fix minor whitespace nits 2018-04-04 02:35:48 +00:00
mount.h Make it easier for filesystems to count themselves as jail-enabled, 2018-05-04 20:54:27 +00:00
mouse.h Drop MOUSE_GETVARS and MOUSE_SETVARS ioctls support. 2018-06-10 10:23:31 +00:00
mpt_ioctl.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
mqueue.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
msg.h Don't define struct mymsg. 2018-03-02 22:13:29 +00:00
msgbuf.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
mtio.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
mutex.h mtx: add mtx_spin_wait_unlocked 2018-02-19 00:38:14 +00:00
namei.h Move uio enums to sys/_uio.h. 2018-03-27 15:20:03 +00:00
nlist_aout.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
numa.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
nv.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
osd.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
param.h Version bump since r334930 changed the interface between the NFS modules, 2018-06-12 22:48:19 +00:00
pciio.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
pcpu.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
pctrie.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
pidctrl.h Add a generic Proportional Integral Derivative (PID) controller algorithm and 2018-02-23 22:51:51 +00:00
pioctl.h spdx: initial adoption of licensing ID tags. 2017-11-18 14:26:50 +00:00
pipe.h Fix a variety of cosmetic typos and misspellings 2017-01-15 18:00:45 +00:00
pmc.h hwpmc: simplify calling convention for hwpmc interrupt handling 2018-06-08 04:58:03 +00:00
pmckern.h hwpmc: simplify calling convention for hwpmc interrupt handling 2018-06-08 04:58:03 +00:00
pmclog.h pmc: convert native to jsonl and track TSC value of samples 2018-06-07 02:03:22 +00:00
poll.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
posix4.h spdx: initial adoption of licensing ID tags. 2017-11-18 14:26:50 +00:00
power.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
priority.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
priv.h Allow to specify PCP on packets not belonging to any VLAN. 2018-03-27 15:29:32 +00:00
proc.h hwpmc: support sampling both kernel and user stacks when interrupted in kernel 2018-06-04 01:10:23 +00:00
procctl.h Rename PROC_PDEATHSIG_SET -> PROC_PDEATHSIG_CTL and PROC_PDEATHSIG_GET 2018-04-20 15:19:27 +00:00
procdesc.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
procfs.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
protosw.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
ptio.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
ptrace.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
queue.h This commit brings in a new refactored TCP stack called Rack. 2018-06-07 18:18:13 +00:00
racct.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
random.h Reduce overhead of entropy collection 2018-05-31 21:53:07 +00:00
rangelock.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
rctl.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
reboot.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
refcount.h ZFS vn_rele_async: catch up with the use of refcount(9) for the vnode use count 2018-03-28 08:55:31 +00:00
regression.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
resource.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
resourcevar.h Remove the unused fuwintr() and suiwintr() functions. 2018-04-17 18:04:28 +00:00
rman.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
rmlock.h Clean up the SYSINIT_FLAGS definitions for rwlock(9) and rmlock(9). 2017-11-21 14:59:23 +00:00
rtprio.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
runq.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
rwlock.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
sbuf.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
sched.h Inlined sched_userret. 2018-05-07 23:36:16 +00:00
sdt.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
select.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
selinfo.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
sem.h Don't declare union semun in userspace unless _WANT_SEMUN is defined. 2018-03-02 22:32:53 +00:00
sema.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
seq.h seq: provide a comment explaining what seq is for and note 2 caveats 2018-03-28 04:38:45 +00:00
serial.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
sf_buf.h Define PHYS_TO_DMAP() and DMAP_TO_PHYS() as panics on the architectures 2018-01-19 22:17:13 +00:00
sglist.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
shm.h Get rid of the requirement to include SysV IPC headers with _KERNEL 2018-02-16 01:33:01 +00:00
sigio.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
signal.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
signalvar.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
sleepqueue.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
slicer.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
smp.h Use resume_cpus() instead of restart_cpus() to resume from ACPI suspension. 2017-12-21 09:17:48 +00:00
snoop.h Revert r327005 - SPDX tags for license similar to BSD-2-Clause. 2017-12-20 20:25:28 +00:00
sockbuf.h This commit brings in a new refactored TCP stack called Rack. 2018-06-07 18:18:13 +00:00
socket.h Load balance sockets with new SO_REUSEPORT_LB option. 2018-06-06 15:45:57 +00:00
socketvar.h Add a socket destructor callback. This allows kernel providers to set 2018-06-08 19:35:24 +00:00
sockio.h Allow to specify PCP on packets not belonging to any VLAN. 2018-03-27 15:29:32 +00:00
sockopt.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
soundcard.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
spigenio.h Add the ioctl definitions for spigen get/set spi mode. Should have been 2018-04-07 20:53:34 +00:00
stack.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
stat.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
statvfs.h
stdatomic.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
stddef.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
stdint.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
sun_disklabel.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
sx.h sx: port over writer starvation prevention measures from rwlock 2018-05-22 07:20:22 +00:00
syscall.h Regen after r334223: make vadvise compat freebsd11. 2018-05-25 20:41:26 +00:00
syscall.mk Regen after r334223: make vadvise compat freebsd11. 2018-05-25 20:41:26 +00:00
syscallsubr.h Move uio enums to sys/_uio.h. 2018-03-27 15:20:03 +00:00
sysctl.h Reduce <sys/queue.h> pollution. 2018-05-11 00:01:43 +00:00
sysent.h Avoid calls to syscall_thread_enter/exit for statically defined syscalls 2018-05-07 22:29:32 +00:00
syslimits.h Remove LINK_MAX. 2018-01-05 22:26:23 +00:00
syslog.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
sysproto.h Regen after r334223: make vadvise compat freebsd11. 2018-05-25 20:41:26 +00:00
systm.h Use __builtin for various mem* and b* (e.g. bzero) routines. 2018-06-02 18:03:35 +00:00
taskqueue.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
terminal.h teken, vt(4): New callbacks to lock the terminal once 2018-05-16 09:01:02 +00:00
termios.h
thr.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
tiio.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
time.h This commit brings in a new refactored TCP stack called Rack. 2018-06-07 18:18:13 +00:00
timeb.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
timeet.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
timeffc.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
timepps.h SPDX: use the Beerware identifier. 2017-11-30 20:33:45 +00:00
timers.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
times.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
timespec.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
timetc.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
timex.h sys/sys: minor spelling fixes. 2016-05-03 15:14:17 +00:00
tree.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
tslog.h Wrap includes in sys/tslog.h with #ifdef TSLOG. 2017-12-31 21:00:21 +00:00
tty.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
ttycom.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
ttydefaults.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
ttydevsw.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
ttydisc.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
ttyhook.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
ttyqueue.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
turnstile.h Remove an unused argument to turnstile_unpend. 2018-06-02 22:37:53 +00:00
types.h Fix the encoding of major and minor numbers in 64-bit dev_t by restoring 2018-06-13 12:22:00 +00:00
ucontext.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
ucred.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
uio.h Move uio enums to sys/_uio.h. 2018-03-27 15:20:03 +00:00
umtx.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
un.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
unistd.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
unpcb.h AF_UNIX: make unix socket locking finer grained 2018-05-17 17:59:35 +00:00
user.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
utsname.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
uuid.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
vdso.h sys/sys: further adoption of SPDX licensing ID tags. 2017-11-27 15:01:59 +00:00
vmem.h Eliminate kmem_arena and kmem_object in preparation for further NUMA commits. 2017-11-28 23:40:54 +00:00
vmmeter.h vm: move vm_cnt to __read_mostly now that it is not written to 2018-04-27 05:36:02 +00:00
vnode.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
vtoc.h Re-apply change 306811 or alternatively, revert change 307385. 2016-10-16 02:43:51 +00:00
wait.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
watchdog.h make SW_WATCHDOG dynamic 2018-01-03 00:56:30 +00:00
zlib.h SPDX: mostly fixes to previous changes. 2017-12-13 16:13:17 +00:00
zutil.h Use __builtin for various mem* and b* (e.g. bzero) routines. 2018-06-02 18:03:35 +00:00