[][src]Module nc::types

Structs

aio_sigset_t
bpf_attr_btf_load_t

anonymous struct for BPF_BTF_LOAD

bpf_attr_element_t

anonymous struct used by BPF_MAP_*_ELEM commands

bpf_attr_getid_t

anonymous struct used by BPF_GET_ID

bpf_attr_info_t

anonymous struct used by BPF_OBJ_GET_INFO_BY_FD

bpf_attr_map_create_t

anonymous struct used by BPF_MAP_CREATE command

bpf_attr_obj_t

anonymous struct used by BPF_OBJ_* commands

bpf_attr_prog_attach_t

anonymous struct used by BPF_PROG_ATTACH/DETACH commands

bpf_attr_prog_load_t

anonymous struct used by BPF_PROG_LOAD command

bpf_attr_prog_test_t

anonymous struct used by BPF_PROG_TEST_RUN command

bpf_attr_query_t

anonymous struct used by BPF_PROG_QUERY command

bpf_attr_raw_tracepoint_t
bpf_attr_task_fd_query_t
bpf_btf_info_t
bpf_cgroup_dev_ctx_t
bpf_cgroup_storage_key_t
bpf_fib_lookup_t
bpf_flow_keys_ipv4_t
bpf_flow_keys_ipv6_t
bpf_flow_keys_t
bpf_func_info_t
bpf_insn_t
bpf_line_info_t
bpf_lpm_trie_key_t

Key of an a BPF_MAP_TYPE_LPM_TRIE entry

bpf_map_info_t
bpf_perf_event_value_t
bpf_prog_info_t
bpf_raw_tracepoint_args_t
bpf_sock_addr_t

User bpf_sock_addr struct to access socket fields and sockaddr struct passed by user and intended to be used by socket (e.g. to bind to, depends on attach attach type).

bpf_sock_ops_t

User bpf_sock_ops struct to access socket values and specify request ops and their replies. Some of this fields are in network (bigendian) byte order and may need to be converted before use (bpf_ntohl() defined in samples/bpf/bpf_endian.h). New fields can only be added at the end of this structure

bpf_sock_t
bpf_sock_tuple_ipv4_t
bpf_sock_tuple_ipv6_t
bpf_spin_lock_t
bpf_stack_build_id_t
bpf_tcp_sock_t
cap_user_data_t
cap_user_header_t
cmsghdr_t

POSIX 1003.1g - ancillary data object information Ancillary data consits of a sequence of pairs of (cmsghdr, cmsg_data[])

compat_statfs64_t

IA64 and x86_64 need to avoid the 32-bit padding at the end, to be compatible with the i386 ABI

epoll_event_t
f_owner_ex_t
fd_set_t
file_clone_range_t
file_dedupe_range_info_t

from struct btrfs_ioctl_file_extent_same_info

file_dedupe_range_t

from struct btrfs_ioctl_file_extent_same_args

file_handle_t
files_stat_struct_t

And dynamically-tunable limits and defaults:

flock64_t
flock_t
fs_disk_quota_t
fs_qfilestat_t

Some basic information about 'quota files'.

fs_qfilestatv_t

Some basic information about 'quota files' for Q_XGETQSTATV command

fs_quota_stat_t

fs_quota_stat is the struct returned in Q_XGETQSTAT for a given file system. Provides a centralized way to get meta information about the quota subsystem. eg. space taken up for user and group quotas, number of dquots currently incore.

fs_quota_statv_t

fs_quota_statv is used by Q_XGETQSTATV for a given file system. It provides a centralized way to get meta information about the quota subsystem. eg. space taken up for user, group, and project quotas, number of dquots currently incore.

fscrypt_key_t
fscrypt_policy_t
fsid_t
fstrim_range_t
fsxattr_t

Structure for FS_IOC_FSGETXATTR[A] and FS_IOC_FSSETXATTR.

getcpu_cache_t

Cache for getcpu() to speed it up. Results might be a short time out of date, but will be faster.

group_filter_t
group_req_t
group_source_req_t
if_dqblk_t
if_dqinfo_t
if_nextdqblk_t
in6_addr_t
in6_flowlabel_req_t
in_addr_t

Internet address.

in_pktinfo_t
inodes_stat_t
inotify_event_t

struct inotify_event - structure read from the inotify device for each event

io_cqring_offsets_t
io_event_t

read() from /dev/aio returns these structures.

io_file_t
io_sqring_offsets_t

Filled with the offset for mmap(2)

io_uring_cqe_t

IO completion data structure (Completion Queue Entry)

io_uring_files_update_t
io_uring_params_t

Passed in for io_uring_setup(2). Copied back with updated info on success

io_uring_probe_op_t
io_uring_probe_t
io_uring_sqe_buf_t
io_uring_sqe_t

IO submission data structure (Submission Queue Entry)

iocb_t

we always use a 64bit off_t when communicating with userland. its up to libraries to do the proper padding and aio_error abstraction

iovec_t

Berkeley style UIO structures

ip_mreq_source_t
ip_mreq_t

Request struct for multicast socket ops

ip_mreqn_t
ip_msfilter_t
ipc64_perm_t

The generic ipc64_perm structure: Note extra padding because this structure is passed back and forth between kernel and user space.

ipc_kludge_t

These are used to wrap system calls. See architecture code for ugly details..

ipc_perm_t

Obsolete, used only for backwards compatibility and libc5 compiles

ipv6_mreq_t
itimerspec64_t
itimerspec_t
itimerval_t
kcmp_epoll_slot_t

Slot for KCMP_EPOLL_TFD

kernel_itimerspec_t
kernel_sock_timeval_t
kernel_sockaddr_storage_t
kernel_timespec_t
kernel_timex_t
kernel_timex_timeval_t
kernle_old_timeval_t

legacy timeval structure, only embedded in structures that traditionally used 'timeval' to pass time intervals (not absolute times). Do not add new users. If user space fails to compile here, this is probably because it is not y2038 safe and needs to be changed to use another interface.

kexec_segment_t

This structure is used to hold the arguments that are used when loading kernel binaries.

ktermios_t
linger_t
linux_dirent64_extern_t
linux_dirent64_t
linux_dirent_t

From fs/readir.c

mmsghdr_t

For recvmmsg/sendmmsg

mq_attr_t
msgbuf_t

Obsolete, used only for backwards compatibility and libc5 compiles message buffer for msgsnd and msgrcv calls

msghdr_t

As we do 4.4BSD message passing we use a 4.4BSD message passing system, not 4.3. Thus msg_accrights(len) are now missing. They belong in an obscure libc emulation or the bin.

msginfo_t

buffer for msgctl calls IPC_INFO, MSG_INFO

msqid64_ds_t

generic msqid64_ds structure.

new_utsname_t
perf_branch_entry_t

single taken branch record layout:

perf_event_attr_t

Hardware event_id to monitor via a performance monitoring event:

perf_event_header_t
perf_event_mmap_page_cap_detail_t
perf_event_mmap_page_t

Structure of the page that can be mapped via mmap

perf_event_query_bpf_t

Structure used by below PERF_EVENT_IOC_QUERY_BPF command to query bpf programs attached to the same perf tracepoint as the given perf event.

perf_mem_data_mem_t
perf_ns_link_info_t
pollfd_t
prctl_mm_map_t

This structure provides new memory descriptor map which mostly modifies /proc/pid/stat[m] output for a task. This mostly done in a sake of checkpoint/restore functionality.

pthread_barrierattr_t
pthread_condattr_t
pthread_mutexattr_t
pthread_rwlockattr_t
ptrace_peeksiginfo_args_t
ptrace_syscall_info_seccomp_entry_t
ptrace_syscall_info_seccomp_exit_t
ptrace_syscall_info_seccomp_seccomp_t
ptrace_syscall_info_t
rlimit64_t
rlimit_t
robust_list_head_t

Per-thread list head:

robust_list_t

Support for robust futexes: the kernel cleans up held futexes at thread exit time. Per-lock list entry - embedded in user-space locks, somewhere close to the futex field. (Note: user-space uses a double-linked list to achieve O(1) list add and remove, but the kernel only needs to know about the forward link)

rseq_cs_ptr_t
rseq_cs_t

struct rseq_cs is aligned on 4 * 8 bytes to ensure it is always contained within a single cache-line. It is usually declared as link-time constant data.

rseq_t

struct rseq is aligned on 4 * 8 bytes to ensure it is always contained within a single cache-line.

rusage_t
sched_attr_t

Extended scheduling parameters data structure.

sched_param_t
scm_timestamping_internal_t
seccomp_data_t

struct seccomp_data - the format the BPF program executes over. @nr: the system call number @arch: indicates system call convention as an AUDIT_ARCH_* value as defined in <linux/audit.h>. @instruction_pointer: at the time of the system call. @args: up to 6 system call arguments always stored as 64-bit values regardless of the architecture.

seccomp_metadata_t
seccomp_notif_resp_t
seccomp_notif_sizes_t
seccomp_notif_t
sembuf_t

semop system calls takes an array of these.

semid_ds_t

Obsolete, used only for backwards compatibility and libc5 compiles

seminfo_t
serial_icounter_struct_t

Serial input interrupt line counters -- external structure Four lines can interrupt: CTS, DSR, RI, DCD

serial_iso7816_t

Serial interface for controlling ISO7816 settings on chips with suitable support. Set with TIOCSISO7816 and get with TIOCGISO7816 if supported by your platform.

serial_multiport_struct_t

Multiport serial configuration structure --- external structure

serial_rs485_t

Serial interface for controlling RS485 settings on chips with suitable support. Set with TIOCSRS485 and get with TIOCGRS485 if supported by your platform. The set function returns the new state, with any unsupported bits reverted appropriately.

serial_struct_t
shm_info_t
shmid64_ds_t
shmid_ds_t

Obsolete, used only for backwards compatibility and libc5 compiles

shminfo64_t
shminfo_t

Obsolete, used only for backwards compatibility

si_kill_t

kill()

si_rt_t

POSIX.1b signals

si_sigchld_t

SIGCHLD

si_sigpoll_t

SIGPOLL

si_sigsys_t

SIGSYS

si_timer_t

POSIX.1b timers

sigaction_t
sigaltstack_t
sigev_thread_t
sigevent_t
siginfo_intern_t
sigset_t
sk_msg_md_t

user accessible metadata for SK_MSG packet hook, new fields must be added to the end of this structure

sk_reuseport_md_t
sockaddr_in6_t
sockaddr_in_t
sockaddr_t

1003.1g requires sa_family_t and that sa_data is char.

stat64_t

This matches struct stat64 in glibc2.1, hence the absolutely insane amounts of padding around dev_t's.

stat_t
statfs64_t

ARM needs to avoid the 32-bit padding at the end, for consistency between EABI and OABI

statfs_t
statx_t

Structures for the extended file attribute retrieval system call (statx()).

statx_timestamp_t

Timestamp structure for the timestamps in struct statx.

sysctl_args_t
sysinfo_t
termio_t
termios2_t
termios_t
timespec64_t
timespec_t
timeval_t
timex_t

syscall interface - used (mainly by NTP daemon) to discipline kernel clock oscillator

timezone_t
tms_t
ucred_t
user_desc_t

Note on 64bit base and limit is ignored and you cannot set DS/ES/CS not to the default values if you still want to do syscalls. This call is more for 32bit mode therefore.

ustat_t
utimbuf_t
winsize_t

Most architectures have straight copies of the x86 code, with varying levels of bug fixes on top. Usually it's a good idea to use this generic version instead, but be careful to avoid ABI changes. New architectures should not provide their own version.

xdp_md_t

user accessible metadata for XDP packet hook new fields must be added to the end of this structure

Enums

IOURING_OP

Constants

ABI_DEFHANDLER_COFF

/proc/sys/abi default handler for coff binaries

ABI_DEFHANDLER_ELF

default handler for ELF binaries

ABI_DEFHANDLER_LCALL7

default handler for procs using lcall7

ABI_DEFHANDLER_LIBCSO

default handler for an libc.so ELF interp

ABI_FAKE_UTSNAME

fake target utsname information

ABI_TRACE

tracing flags

ADDR_COMPAT_LAYOUT
ADDR_LIMIT_3GB
ADDR_LIMIT_32BIT
ADDR_NO_RANDOMIZE

disable randomization of VA space

ADJ_ADJTIME

switch between adjtime/adjtimex modes

ADJ_ESTERROR

estimated time error

ADJ_FREQUENCY

frequency offset

ADJ_MAXERROR

maximum time error

ADJ_MICRO

select microsecond resolution

ADJ_NANO

select nanosecond resolution

ADJ_OFFSET

Mode codes (timex.mode) time offset

ADJ_OFFSET_READONLY

read-only adjtime

ADJ_OFFSET_SS_READ

read-only adjtime

ADJ_SETOFFSET

add 'time' to current time

ADJ_STATUS

clock status

ADJ_TAI

set TAI offset

ADJ_TICK

tick value

ADJ_TIMECONST

pll time constant

AF_ALG

Algorithm sockets

AF_APPLETALK

AppleTalk DDP

AF_ASH

Ash

AF_ATMPVC

ATM PVCs

AF_ATMSVC

ATM SVCs

AF_AX25

Amateur Radio AX.25

AF_BLUETOOTH

Bluetooth sockets

AF_BRIDGE

Multiprotocol bridge

AF_CAIF

CAIF sockets

AF_CAN

Controller Area Network

AF_DECNET

Reserved for DECnet project

AF_ECONET

Acorn Econet

AF_IB

Native InfiniBand address

AF_IEEE802154

IEEE802154 sockets

AF_INET

Internet IP Protocol

AF_INET6

IP version 6

AF_IPX

Novell IPX

AF_IRDA

IRDA sockets

AF_ISDN

mISDN sockets

AF_IUCV

IUCV sockets

AF_KCM

Kernel Connection Multiplexor

AF_KEY

PF_KEY key management API

AF_LLC

Linux LLC

AF_LOCAL

POSIX name for AF_UNIX

AF_MAX

For now..

AF_MPLS

MPLS

AF_NETBEUI

Reserved for 802.2LLC project

AF_NETLINK
AF_NETROM

Amateur Radio NET/ROM

AF_NFC

NFC sockets

AF_PACKET

Packet family

AF_PHONET

Phonet sockets

AF_PPPOX

PPPoX sockets

AF_QIPCRTR

Qualcomm IPC Router

AF_RDS

RDS sockets

AF_ROSE

Amateur Radio X.25 PLP

AF_ROUTE

Alias to emulate 4.4BSD

AF_RXRPC

RxRPC sockets

AF_SECURITY

Security callback pseudo AF

AF_SMC

smc sockets: reserve number for PF_SMC protocol family that reuses AF_INET address family

AF_SNA

Linux SNA Project (nutters!)

AF_TIPC

TIPC sockets

AF_UNIX

Unix domain sockets

AF_UNSPEC

Supported address families.

AF_VSOCK

vSockets

AF_WANPIPE

Wanpipe API Sockets

AF_X25

Reserved for X.25 project

AF_XDP

XDP sockets

ARCH_PFN_OFFSET
ARG_MAX

bytes of args + environ for exec()

ASYNC_CLOSING_WAIT_INF

For the close wait times, 0 means wait forever for serial port to flush its output. 65535 means don't wait at all.

ASYNC_CLOSING_WAIT_NONE
AT_EMPTY_PATH

Allow empty relative pathname

AT_FDCWD

Special value used to indicate openat should use the current working directory.

AT_NO_AUTOMOUNT

Suppress terminal automount traversal

AT_RECURSIVE

Apply to the entire subtree

AT_REMOVEDIR

Remove directory instead of unlinking file.

AT_STATX_DONT_SYNC

  • Don't sync attributes with the server
  • AT_STATX_FORCE_SYNC

  • Force the attributes to be sync'd with the server
  • AT_STATX_SYNC_AS_STAT

  • Do whatever stat() does
  • AT_STATX_SYNC_TYPE

    Type of synchronisation required from statx()

    AT_SYMLINK_FOLLOW

    Follow symbolic links.

    AT_SYMLINK_NOFOLLOW

    Do not follow symbolic links.

    B0

    hang up

    B50
    B75
    B110
    B134
    B150
    B200
    B300
    B600
    B1200
    B1800
    B2400
    B4800
    B9600
    B19200
    B38400
    B57600
    B115200
    B230400
    B460800
    B500000
    B576000
    B921600
    B1000000
    B1152000
    B1500000
    B2000000
    B2500000
    B3000000
    B3500000
    B4000000
    BITS_PER_LONG
    BITS_PER_LONG_LONG
    BLOCK_SIZE
    BLOCK_SIZE_BITS
    BOTHER
    BPF_ADJ_ROOM_NET

    Mode for BPF_FUNC_skb_adjust_room helper.

    BPF_ALU64

    alu mode in double word width

    BPF_ANY

    flags for BPF_MAP_UPDATE_ELEM command create new element or update existing

    BPF_ARSH

    sign extending arithmetic shift right

    BPF_BTF_GET_FD_BY_ID
    BPF_BTF_LOAD
    BPF_BUILD_ID_SIZE
    BPF_CALL

    function call

    BPF_CGROUP_DEVICE
    BPF_CGROUP_INET4_BIND
    BPF_CGROUP_INET4_CONNECT
    BPF_CGROUP_INET4_POST_BIND
    BPF_CGROUP_INET6_BIND
    BPF_CGROUP_INET6_CONNECT
    BPF_CGROUP_INET6_POST_BIND
    BPF_CGROUP_INET_EGRESS
    BPF_CGROUP_INET_INGRESS
    BPF_CGROUP_INET_SOCK_CREATE
    BPF_CGROUP_SOCK_OPS
    BPF_CGROUP_UDP4_SENDMSG
    BPF_CGROUP_UDP6_SENDMSG
    BPF_DEVCG_ACC_MKNOD
    BPF_DEVCG_ACC_READ
    BPF_DEVCG_ACC_WRITE
    BPF_DEVCG_DEV_BLOCK
    BPF_DEVCG_DEV_CHAR
    BPF_DROP
    BPF_DW

    ld/ldx fields double word (64-bit)

    BPF_END

    change endianness of a register flags for endianness conversion:

    BPF_EXIST

    update existing element

    BPF_EXIT

    function return

    BPF_FD_TYPE_KPROBE

    (symbol + offset) or addr

    BPF_FD_TYPE_KRETPROBE

    (symbol + offset) or addr

    BPF_FD_TYPE_RAW_TRACEPOINT

    tp name

    BPF_FD_TYPE_TRACEPOINT

    tp name

    BPF_FD_TYPE_UPROBE

    filename + offset

    BPF_FD_TYPE_URETPROBE

    filename + offset

    BPF_FIB_LKUP_RET_BLACKHOLE

    dest is blackholed; can be dropped

    BPF_FIB_LKUP_RET_FRAG_NEEDED

    fragmentation required to fwd

    BPF_FIB_LKUP_RET_FWD_DISABLED

    fwding is not enabled on ingress

    BPF_FIB_LKUP_RET_NOT_FWDED

    packet is not forwarded

    BPF_FIB_LKUP_RET_NO_NEIGH

    no neighbor entry for nh

    BPF_FIB_LKUP_RET_PROHIBIT

    dest not allowed; can be dropped

    BPF_FIB_LKUP_RET_SUCCESS

    lookup successful

    BPF_FIB_LKUP_RET_UNREACHABLE

    dest is unreachable; can be dropped

    BPF_FIB_LKUP_RET_UNSUPP_LWT

    fwd requires encapsulation

    BPF_FIB_LOOKUP_DIRECT

    DIRECT: Skip the FIB rules and go to FIB table associated with device OUTPUT: Do lookup from egress perspective; default is ingress

    BPF_FIB_LOOKUP_OUTPUT
    BPF_FLOW_DISSECTOR
    BPF_FROM_BE
    BPF_FROM_LE
    BPF_F_ALLOW_MULTI
    BPF_F_ALLOW_OVERRIDE

    cgroup-bpf attach flags used in BPF_PROG_ATTACH command

    BPF_F_ANY_ALIGNMENT

    If BPF_F_ANY_ALIGNMENT is used in BPF_PROF_LOAD command, the verifier will allow any alignment whatsoever. On platforms with strict alignment requirements for loads ands stores (such as sparc and mips) the verifier validates that all loads and stores provably follow this requirement. This flag turns that checking and enforcement off.

    BPF_F_CTXLEN_MASK

    BPF_FUNC_perf_event_output for sk_buff input context.

    BPF_F_CURRENT_CPU
    BPF_F_CURRENT_NETNS

    Current network namespace

    BPF_F_DONT_FRAGMENT
    BPF_F_FAST_STACK_CMP

    flags used by BPF_FUNC_get_stackid only.

    BPF_F_HDR_FIELD_MASK
    BPF_F_INDEX_MASK

    BPF_FUNC_perf_event_output, BPF_FUNC_perf_event_read and BPF_FUNC_perf_event_read_value flags.

    BPF_F_INGRESS

    BPF_FUNC_clone_redirect and BPF_FUNC_redirect flags.

    BPF_F_INVALIDATE_HASH
    BPF_F_LOCK

    spin_lock-ed map_lookup/map_update

    BPF_F_MARK_ENFORCE
    BPF_F_MARK_MANGLED_0
    BPF_F_NO_COMMON_LRU

    Instead of having one common LRU list in the BPF_MAP_TYPE_LRU_[PERCPU_]HASH map, use a percpu LRU list which can scale and perform better. Note, the LRU nodes (including free nodes) cannot be moved across different LRU lists.

    BPF_F_NO_PREALLOC

    flags for BPF_MAP_CREATE command

    BPF_F_NUMA_NODE

    Specify numa node during map creation

    BPF_F_PSEUDO_HDR

    BPF_FUNC_l4_csum_replace flags.

    BPF_F_QUERY_EFFECTIVE

    flags for BPF_PROG_QUERY

    BPF_F_RDONLY

    Flags for accessing BPF object

    BPF_F_RECOMPUTE_CSUM

    All flags used by eBPF helper functions, placed here. BPF_FUNC_skb_store_bytes flags.

    BPF_F_REUSE_STACKID
    BPF_F_SEQ_NUMBER
    BPF_F_SKIP_FIELD_MASK

    flags for both BPF_FUNC_get_stackid and BPF_FUNC_get_stack.

    BPF_F_STACK_BUILD_ID

    Flag for stack_map, store build_id+offset instead of pointer

    BPF_F_STRICT_ALIGNMENT

    If BPF_F_STRICT_ALIGNMENT is used in BPF_PROG_LOAD command, the verifier will perform strict alignment checking as if the kernel has been built with CONFIG_EFFICIENT_UNALIGNED_ACCESS not set, and NET_IP_ALIGN defined to 2.

    BPF_F_TUNINFO_IPV6

    BPF_FUNC_skb_set_tunnel_key and BPF_FUNC_skb_get_tunnel_key flags.

    BPF_F_USER_BUILD_ID

    flags used by BPF_FUNC_get_stack only.

    BPF_F_USER_STACK
    BPF_F_WRONLY
    BPF_F_ZERO_CSUM_TX

    BPF_FUNC_skb_set_tunnel_key flags.

    BPF_F_ZERO_SEED

    Zero-initialize hash function seed. This should only be used for testing.

    BPF_HDR_START_MAC

    Mode for BPF_FUNC_skb_load_bytes_relative helper.

    BPF_HDR_START_NET
    BPF_JLE

    LE is unsigned, '<='

    BPF_JLT

    LT is unsigned, '<'

    BPF_JMP32

    Extended instruction set based on top of classic BPF instruction classes jmp mode in word width

    BPF_JNE

    jmp encodings jump !=

    BPF_JSGE

    SGE is signed '>=', GE in x86

    BPF_JSGT

    SGT is signed '>', GT in x86

    BPF_JSLE

    SLE is signed, '<='

    BPF_JSLT

    SLT is signed, '<'

    BPF_LIRC_MODE2
    BPF_LWT_ENCAP_IP
    BPF_LWT_ENCAP_SEG6

    Encapsulation type for BPF_FUNC_lwt_push_encap helper.

    BPF_LWT_ENCAP_SEG6_INLINE
    BPF_LWT_REROUTE
    BPF_MAP_CREATE

    BPF syscall commands, see bpf(2) man-page for details.

    BPF_MAP_DELETE_ELEM
    BPF_MAP_GET_FD_BY_ID
    BPF_MAP_GET_NEXT_ID
    BPF_MAP_GET_NEXT_KEY
    BPF_MAP_LOOKUP_AND_DELETE_ELEM
    BPF_MAP_LOOKUP_ELEM
    BPF_MAP_TYPE_ARRAY
    BPF_MAP_TYPE_ARRAY_OF_MAPS
    BPF_MAP_TYPE_CGROUP_ARRAY
    BPF_MAP_TYPE_CGROUP_STORAGE
    BPF_MAP_TYPE_CPUMAP
    BPF_MAP_TYPE_DEVMAP
    BPF_MAP_TYPE_HASH
    BPF_MAP_TYPE_HASH_OF_MAPS
    BPF_MAP_TYPE_LPM_TRIE
    BPF_MAP_TYPE_LRU_HASH
    BPF_MAP_TYPE_LRU_PERCPU_HASH
    BPF_MAP_TYPE_PERCPU_ARRAY
    BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE
    BPF_MAP_TYPE_PERCPU_HASH
    BPF_MAP_TYPE_PERF_EVENT_ARRAY
    BPF_MAP_TYPE_PROG_ARRAY
    BPF_MAP_TYPE_QUEUE
    BPF_MAP_TYPE_REUSEPORT_SOCKARRAY
    BPF_MAP_TYPE_SOCKHASH
    BPF_MAP_TYPE_SOCKMAP
    BPF_MAP_TYPE_STACK
    BPF_MAP_TYPE_STACK_TRACE
    BPF_MAP_TYPE_UNSPEC
    BPF_MAP_TYPE_XSKMAP
    BPF_MAP_UPDATE_ELEM
    BPF_MOV

    alu/jmp fields mov reg to reg

    BPF_NOEXIST

    create new element if it didn't exist

    BPF_OBJ_GET
    BPF_OBJ_GET_INFO_BY_FD
    BPF_OBJ_NAME_LEN
    BPF_OBJ_PIN
    BPF_OK

    Generic BPF return codes which all BPF program types may support. The values are binary compatible with their TC_ACT_* counter-part to provide backwards compatibility with existing SCHED_CLS and SCHED_ACT programs.

    BPF_PROG_ATTACH
    BPF_PROG_DETACH
    BPF_PROG_GET_FD_BY_ID
    BPF_PROG_GET_NEXT_ID
    BPF_PROG_LOAD
    BPF_PROG_QUERY
    BPF_PROG_TEST_RUN
    BPF_PROG_TYPE_CGROUP_DEVICE
    BPF_PROG_TYPE_CGROUP_SKB
    BPF_PROG_TYPE_CGROUP_SOCK
    BPF_PROG_TYPE_CGROUP_SOCK_ADDR
    BPF_PROG_TYPE_FLOW_DISSECTOR
    BPF_PROG_TYPE_KPROBE
    BPF_PROG_TYPE_LIRC_MODE2
    BPF_PROG_TYPE_LWT_IN
    BPF_PROG_TYPE_LWT_OUT
    BPF_PROG_TYPE_LWT_SEG6LOCAL
    BPF_PROG_TYPE_LWT_XMIT
    BPF_PROG_TYPE_PERF_EVENT
    BPF_PROG_TYPE_RAW_TRACEPOINT
    BPF_PROG_TYPE_SCHED_ACT
    BPF_PROG_TYPE_SCHED_CLS
    BPF_PROG_TYPE_SK_MSG
    BPF_PROG_TYPE_SK_REUSEPORT
    BPF_PROG_TYPE_SK_SKB
    BPF_PROG_TYPE_SOCKET_FILTER
    BPF_PROG_TYPE_SOCK_OPS
    BPF_PROG_TYPE_TRACEPOINT
    BPF_PROG_TYPE_UNSPEC

    Note that tracing related programs such as BPF_PROG_TYPE_{KPROBE,TRACEPOINT,PERF_EVENT,RAW_TRACEPOINT} are not subject to a stable API since kernel internal data structures can change from release to release and may therefore break existing tracing BPF programs. Tracing BPF programs correspond to /a/ specific kernel which is to be analyzed, and not /a/ specific kernel /and/ all future ones.

    BPF_PROG_TYPE_XDP
    BPF_PSEUDO_CALL

    when bpf_call->src_reg == BPF_PSEUDO_CALL, bpf_call->imm == pc-relative offset to another bpf function

    BPF_PSEUDO_MAP_FD

    when bpf_ldimm64->src_reg == BPF_PSEUDO_MAP_FD, bpf_ldimm64->imm == fd

    BPF_RAW_TRACEPOINT_OPEN
    BPF_REDIRECT
    BPF_REG_0

    Register numbers

    BPF_REG_1
    BPF_REG_2
    BPF_REG_3
    BPF_REG_4
    BPF_REG_5
    BPF_REG_6
    BPF_REG_7
    BPF_REG_8
    BPF_REG_9
    BPF_REG_10
    BPF_SK_MSG_VERDICT
    BPF_SK_SKB_STREAM_PARSER
    BPF_SK_SKB_STREAM_VERDICT
    BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB

    Calls BPF program when an active connection is established

    BPF_SOCK_OPS_ALL_CB_FLAGS

    Mask of all currently supported cb flags

    BPF_SOCK_OPS_BASE_RTT

    Get base RTT. The correct value is based on the path and may be dependent on the congestion control algorithm. In general it indicates a congestion threshold. RTTs above this indicate congestion

    BPF_SOCK_OPS_NEEDS_ECN

    If connection's congestion control needs ECN

    BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB

    Calls BPF program when a passive connection is established

    BPF_SOCK_OPS_RETRANS_CB

    Called when skb is retransmitted. Arg1: sequence number of 1st byte Arg2: # segments Arg3: return value of tcp_transmit_skb (0 => success)

    BPF_SOCK_OPS_RETRANS_CB_FLAG
    BPF_SOCK_OPS_RTO_CB

    Called when an RTO has triggered. Arg1: value of icsk_retransmits Arg2: value of icsk_rto Arg3: whether RTO has expired

    BPF_SOCK_OPS_RTO_CB_FLAG

    Definitions for bpf_sock_ops_cb_flags

    BPF_SOCK_OPS_RWND_INIT

    Should return initial advertized window (in packets) or -1 if default value should be used

    BPF_SOCK_OPS_STATE_CB

    Called when TCP changes state. Arg1: old_state Arg2: new_state

    BPF_SOCK_OPS_STATE_CB_FLAG
    BPF_SOCK_OPS_TCP_CONNECT_CB

    Calls BPF program right before an active connection is initialized

    BPF_SOCK_OPS_TCP_LISTEN_CB

    Called on listen(2), right after socket transition to LISTEN state.

    BPF_SOCK_OPS_TIMEOUT_INIT

    Should return SYN-RTO value to use or -1 if default value should be used

    BPF_SOCK_OPS_VOID

    List of known BPF sock_ops operators. New entries can only be added at the end

    BPF_STACK_BUILD_ID_EMPTY

    user space need an empty entry to identify end of a trace

    BPF_STACK_BUILD_ID_IP

    couldn't get build_id, fallback to ip

    BPF_STACK_BUILD_ID_VALID

    with valid build_id and offset

    BPF_TAG_SIZE
    BPF_TASK_FD_QUERY
    BPF_TCP_CLOSE
    BPF_TCP_CLOSE_WAIT
    BPF_TCP_CLOSING

    Now a valid state

    BPF_TCP_ESTABLISHED

    List of TCP states. There is a build check in net/ipv4/tcp.c to detect changes between the TCP and BPF versions. Ideally this should never happen. If it does, we need to add code to convert them before calling the BPF sock_ops function.

    BPF_TCP_FIN_WAIT1
    BPF_TCP_FIN_WAIT2
    BPF_TCP_LAST_ACK
    BPF_TCP_LISTEN
    BPF_TCP_MAX_STATES

    Leave at the end!

    BPF_TCP_NEW_SYN_RECV
    BPF_TCP_SYN_RECV
    BPF_TCP_SYN_SENT
    BPF_TCP_TIME_WAIT
    BPF_TO_BE

    convert to big-endian

    BPF_TO_LE

    convert to little-endian

    BPF_XADD

    exclusive add

    BRKINT
    BS0
    BS1
    BSDLY
    BUS_ADRALN

    SIGBUS si_codes invalid address alignment

    BUS_ADRERR

    non-existent physical address

    BUS_ISA_MEM_BASE

    /proc/sys/bus/isa

    BUS_ISA_PORT_BASE
    BUS_ISA_PORT_SHIFT
    BUS_MCEERR_AO

    hardware memory error detected in process but not consumed: action optional

    BUS_MCEERR_AR

    hardware memory error consumed on a machine check: action required

    BUS_OBJERR

    object specific hardware error

    CAP_AUDIT_CONTROL

    Allow configuration of audit via unicast netlink socket

    CAP_AUDIT_READ

    Allow reading the audit log via multicast netlink socket

    CAP_AUDIT_WRITE

    Allow writing the audit log via unicast netlink socket

    CAP_BLOCK_SUSPEND

    Allow preventing system suspends

    CAP_CHOWN

    POSIX-draft defined capabilities. In a system with the [_POSIX_CHOWN_RESTRICTED] option defined, this overrides the restriction of changing file ownership and group ownership.

    CAP_DAC_OVERRIDE

    Override all DAC access, including ACL execute access if [_POSIX_ACL] is defined. Excluding DAC access covered by CAP_LINUX_IMMUTABLE.

    CAP_DAC_READ_SEARCH

    Overrides all DAC restrictions regarding read and search on files and directories, including ACL restrictions if [_POSIX_ACL] is defined. Excluding DAC access covered by CAP_LINUX_IMMUTABLE.

    CAP_FOWNER

    Overrides all restrictions about allowed operations on files, where file owner ID must be equal to the user ID, except where CAP_FSETID is applicable. It doesn't override MAC and DAC restrictions.

    CAP_FSETID

    Overrides the following restrictions that the effective user ID shall match the file owner ID when setting the S_ISUID and S_ISGID bits on that file; that the effective group ID (or one of the supplementary group IDs) shall match the file owner ID when setting the S_ISGID bit on that file; that the S_ISUID and S_ISGID bits are cleared on successful return from chown(2) (not implemented).

    CAP_IPC_LOCK

    Allow locking of shared memory segments Allow mlock and mlockall (which doesn't really have anything to do with IPC)

    CAP_IPC_OWNER

    Override IPC ownership checks

    CAP_KILL

    Overrides the restriction that the real or effective user ID of a process sending a signal must match the real or effective user ID of the process receiving the signal.

    CAP_LAST_CAP
    CAP_LEASE

    Allow taking of leases on files

    CAP_LINUX_IMMUTABLE

    Allow modification of S_IMMUTABLE and S_APPEND file attributes

    CAP_MAC_ADMIN

    Allow MAC configuration or state changes. The base kernel requires no MAC configuration. An LSM may enforce a MAC policy, and if it does and it chooses to implement capability based checks on modifications to that policy or the data required to maintain it, this is the capability it should use to do so.

    CAP_MAC_OVERRIDE

    Override MAC access. The base kernel enforces no MAC policy. An LSM may enforce a MAC policy, and if it does and it chooses to implement capability based overrides of that policy, this is the capability it should use to do so.

    CAP_MKNOD

    Allow the privileged aspects of mknod()

    CAP_NET_ADMIN

    Allow interface configuration Allow administration of IP firewall, masquerading and accounting Allow setting debug option on sockets Allow modification of routing tables Allow setting arbitrary process / process group ownership on sockets Allow binding to any address for transparent proxying (also via NET_RAW) Allow setting TOS (type of service) Allow setting promiscuous mode Allow clearing driver statistics Allow multicasting Allow read/write of device-specific registers Allow activation of ATM control sockets

    CAP_NET_BIND_SERVICE

    Allows binding to TCP/UDP sockets below 1024 Allows binding to ATM VCIs below 32

    CAP_NET_BROADCAST

    Allow broadcasting, listen to multicast

    CAP_NET_RAW

    Allow use of RAW sockets Allow use of PACKET sockets Allow binding to any address for transparent proxying (also via NET_ADMIN)

    CAP_SETFCAP
    CAP_SETGID

    Allows setgid(2) manipulation Allows setgroups(2) Allows forged gids on socket credentials passing.

    CAP_SETPCAP

    Linux-specific capabilities Without VFS support for capabilities: Transfer any capability in your permitted set to any pid, remove any capability in your permitted set from any pid With VFS support for capabilities (neither of above, but) Add any capability from current's capability bounding set to the current process' inheritable set Allow taking bits out of capability bounding set Allow modification of the securebits for a process

    CAP_SETUID

    Allows set*uid(2) manipulation (including fsuid). Allows forged pids on socket credentials passing.

    CAP_SYSLOG

    Allow configuring the kernel's syslog (printk behaviour)

    CAP_SYS_ADMIN

    Allow configuration of the secure attention key Allow administration of the random device Allow examination and configuration of disk quotas Allow setting the domainname Allow setting the hostname Allow calling bdflush() Allow mount() and umount(), setting up new smb connection Allow some autofs root ioctls Allow nfsservctl Allow VM86_REQUEST_IRQ Allow to read/write pci config on alpha Allow irix_prctl on mips (setstacksize) Allow flushing all cache on m68k (sys_cacheflush) Allow removing semaphores Used instead of CAP_CHOWN to "chown" IPC message queues, semaphores and shared memory Allow locking/unlocking of shared memory segment Allow turning swap on/off Allow forged pids on socket credentials passing Allow setting readahead and flushing buffers on block devices Allow setting geometry in floppy driver Allow turning DMA on/off in xd driver Allow administration of md devices (mostly the above, but some extra ioctls) Allow tuning the ide driver Allow access to the nvram device Allow administration of apm_bios, serial and bttv (TV) device Allow manufacturer commands in isdn CAPI support driver Allow reading non-standardized portions of pci configuration space Allow DDI debug ioctl on sbpcd driver Allow setting up serial ports Allow sending raw qic-117 commands Allow enabling/disabling tagged queuing on SCSI controllers and sending arbitrary SCSI commands Allow setting encryption key on loopback filesystem Allow setting zone reclaim policy

    CAP_SYS_BOOT

    Allow use of reboot()

    CAP_SYS_CHROOT

    Allow use of chroot()

    CAP_SYS_MODULE

    Insert and remove kernel modules - modify kernel without limit

    CAP_SYS_NICE

    Allow raising priority and setting priority on other (different UID) processes Allow use of FIFO and round-robin (realtime) scheduling on own processes and setting the scheduling algorithm used by another process. Allow setting cpu affinity on other processes

    CAP_SYS_PACCT

    Allow configuration of process accounting

    CAP_SYS_PTRACE

    Allow ptrace() of any process

    CAP_SYS_RAWIO

    Allow ioperm/iopl access Allow sending USB messages to any device via /dev/bus/usb

    CAP_SYS_RESOURCE

    Override resource limits. Set resource limits. Override quota limits. Override reserved space on ext2 filesystem Modify data journaling mode on ext3 filesystem (uses journaling resources) NOTE: ext2 honors fsuid when checking for resource overrides, so you can override using fsuid too Override size restrictions on IPC message queues Allow more than 64hz interrupts from the real-time clock Override max number of consoles on console allocation Override max number of keymaps

    CAP_SYS_TIME

    Allow manipulation of system clock Allow irix_stime on mips Allow setting the real-time clock

    CAP_SYS_TTY_CONFIG

    Allow configuration of tty devices Allow vhangup() of tty

    CAP_WAKE_ALARM

    Allow triggering something that will wake the system

    CBAUD

    c_cflag bit meaning

    CBAUDEX
    CGROUP_NS_INDEX
    CIBAUD

    input baud rate

    CLD_CONTINUED

    stopped child has continued

    CLD_DUMPED

    child terminated abnormally

    CLD_EXITED

    There is an additional set of SIGTRAP si_codes used by ptrace that are of the form: ((PTRACE_EVENT_XXX << 8) | SIGTRAP) SIGCHLD si_codes child has exited

    CLD_KILLED

    child was killed

    CLD_STOPPED

    child has stopped

    CLD_TRAPPED

    traced child has trapped

    CLOCAL
    CLOCKS_MASK
    CLOCKS_MONO
    CLOCK_BOOTTIME
    CLOCK_BOOTTIME_ALARM
    CLOCK_MONOTONIC
    CLOCK_MONOTONIC_COARSE
    CLOCK_MONOTONIC_RAW
    CLOCK_PROCESS_CPUTIME_ID
    CLOCK_REALTIME

    The IDs of the various system clocks (for POSIX.1b interval timers):

    CLOCK_REALTIME_ALARM
    CLOCK_REALTIME_COARSE
    CLOCK_SGI_CYCLE

    The driver implementing this got removed. The clock ID is kept as a place holder. Do not reuse!

    CLOCK_TAI
    CLOCK_THREAD_CPUTIME_ID
    CLONE_CHILD_CLEARTID

    clear the TID in the child

    CLONE_CHILD_SETTID

    set the TID in the child

    CLONE_DETACHED

    Unused, ignored

    CLONE_FILES

    set if open files shared between processes

    CLONE_FS

    set if fs info shared between processes

    CLONE_IO

    Clone io context

    CLONE_NEWCGROUP

    New cgroup namespace

    CLONE_NEWIPC

    New ipc namespace

    CLONE_NEWNET

    New network namespace

    CLONE_NEWNS

    New mount namespace group

    CLONE_NEWPID

    New pid namespace

    CLONE_NEWUSER

    New user namespace

    CLONE_NEWUTS

    New utsname namespace

    CLONE_PARENT

    set if we want to have the same parent as the cloner

    CLONE_PARENT_SETTID

    set the TID in the parent

    CLONE_PTRACE

    set if we want to let tracing continue on the child too

    CLONE_SETTLS

    create a new TLS for the child

    CLONE_SIGHAND

    set if signal handlers and blocked signals shared

    CLONE_SYSVSEM

    share system V SEM_UNDO semantics

    CLONE_THREAD

    Same thread group?

    CLONE_UNTRACED

    set if the tracing process can't force CLONE_PTRACE on this clone

    CLONE_VFORK

    set if the parent wants the child to wake it up on mm_release

    CLONE_VM

    set if VM shared between processes

    CMSPAR

    mark or space (stick) parity

    CR0
    CR1
    CR2
    CR3
    CRDLY
    CREAD
    CRTSCTS

    flow control

    CS5
    CS6
    CS7
    CS8
    CSIGNAL

    cloning flags: signal mask to be sent at exit

    CSIZE
    CSTOPB
    CTL_ABI

    Binary emulation

    CTL_ARLAN

    arlan wireless driver

    CTL_BUS

    Busses

    CTL_BUS_ISA

    CTL_BUS names:

    CTL_CPU

    CPU stuff (speed scaling, etc)

    CTL_DEBUG

    Debugging

    CTL_DEV

    Devices

    CTL_FRV

    frv specific sysctls

    CTL_FS

    Filesystems

    CTL_KERN

    Define sysctl names first Top-level names: General kernel info and control

    CTL_MAXNAME

    how many path components do we allow in a call to sysctl In other words, what is the largest acceptable value for the nlen member of a struct __sysctl_args to have?

    CTL_NET

    Networking

    CTL_PM

    frv power management

    CTL_PROC

    removal breaks strace(1) compilation

    CTL_S390DBF

    s390 debug

    CTL_SUNRPC

    sunrpc debug

    CTL_VM

    VM management

    DEV_CDROM

    CTL_DEBUG names: CTL_DEV names:

    DEV_CDROM_AUTOCLOSE
    DEV_CDROM_AUTOEJECT
    DEV_CDROM_CHECK_MEDIA
    DEV_CDROM_DEBUG
    DEV_CDROM_INFO

    /proc/sys/dev/cdrom

    DEV_CDROM_LOCK
    DEV_HWMON
    DEV_IPMI
    DEV_IPMI_POWEROFF_POWERCYCLE

    /proc/sys/dev/ipmi

    DEV_MAC_HID
    DEV_MAC_HID_ADB_MOUSE_SENDS_KEYCODES
    DEV_MAC_HID_KEYBOARD_LOCK_KEYCODES
    DEV_MAC_HID_KEYBOARD_SENDS_LINUX_KEYCODES

    /proc/sys/dev/mac_hid

    DEV_MAC_HID_MOUSE_BUTTON2_KEYCODE
    DEV_MAC_HID_MOUSE_BUTTON3_KEYCODE
    DEV_MAC_HID_MOUSE_BUTTON_EMULATION
    DEV_PARPORT
    DEV_PARPORT_AUTOPROBE
    DEV_PARPORT_BASE_ADDR
    DEV_PARPORT_DEFAULT

    /proc/sys/dev/parport

    DEV_PARPORT_DEFAULT_SPINTIME
    DEV_PARPORT_DEFAULT_TIMESLICE

    /proc/sys/dev/parport/default

    DEV_PARPORT_DEVICES
    DEV_PARPORT_DEVICES_ACTIVE

    /proc/sys/dev/parport/parport n/devices/

    DEV_PARPORT_DEVICE_TIMESLICE

    /proc/sys/dev/parport/parport n/devices/device n

    DEV_PARPORT_DMA
    DEV_PARPORT_IRQ
    DEV_PARPORT_MODES
    DEV_PARPORT_SPINTIME

    /proc/sys/dev/parport/parport n

    DEV_RAID
    DEV_RAID_SPEED_LIMIT_MAX
    DEV_RAID_SPEED_LIMIT_MIN

    /proc/sys/dev/raid

    DEV_SCSI
    DEV_SCSI_LOGGING_LEVEL

    /proc/sys/dev/scsi

    DIPC

    Used by the DIPC package, try and avoid reusing it

    DN_ACCESS

    Types of directory notifications that may be requested. File accessed

    DN_ATTRIB

    File changed attibutes

    DN_CREATE

    File created

    DN_DELETE

    File removed

    DN_MODIFY

    File modified

    DN_MULTISHOT

    Don't remove notifier

    DN_RENAME

    File renamed

    DQF_PRIVATE

    Kernel internal flags invisible to userspace

    DQF_ROOT_SQUASH

    Root squash enabled (for v1 quota format)

    DQF_ROOT_SQUASH_B
    DQF_SYS_FILE

    Quota stored in a system file

    DQF_SYS_FILE_B
    DT_BLK
    DT_CHR
    DT_DIR
    DT_FIFO
    DT_LNK
    DT_MAX

    16

    DT_REG
    DT_SOCK
    DT_UNKNOWN

    these are defined by POSIX and also present in glibc's dirent.h

    DT_WHT
    ECHO
    ECHOCTL
    ECHOE
    ECHOK
    ECHOKE
    ECHONL
    ECHOPRT
    EMT_TAGOVF

    SIGEMT si_codes tag overflow

    EPOLLERR
    EPOLLET

    Set the Edge Triggered behaviour for the target file descriptor

    EPOLLEXCLUSIVE

    Set exclusive wakeup mode for the target file descriptor

    EPOLLHUP
    EPOLLIN

    Epoll event masks

    EPOLLMSG
    EPOLLNVAL
    EPOLLONESHOT

    Set the One Shot behaviour for the target file descriptor

    EPOLLOUT
    EPOLLPRI
    EPOLLRDBAND
    EPOLLRDHUP
    EPOLLRDNORM
    EPOLLWAKEUP

    Request the handling of system wakeup events so as to prevent system suspends from happening while those events are being processed.

    EPOLLWRBAND
    EPOLLWRNORM
    EPOLL_CLOEXEC

    Flags for epoll_create1.

    EPOLL_CTL_ADD

    Valid opcodes to issue to sys_epoll_ctl()

    EPOLL_CTL_DEL
    EPOLL_CTL_MOD
    EXTA
    EXTB
    EXTPROC
    FASYNC

    fcntl, for BSD compatibility

    FDPIC_FUNCPTRS

    userspace function ptrs point to descriptors (signal handling)

    FD_CLOEXEC

    for F_[GET|SET]FL actually anything with low bit set goes

    FD_SETSIZE

    This allows for 1024 file descriptors: if NR_OPEN is ever grown beyond that you'll have to change this too. But 1024 fd's seem to be enough even for such "real" unices like OSF/1, so hopefully this is one limit that doesn't have to be changed [again].

    FF0
    FF1
    FFDLY
    FILE_DEDUPE_RANGE_DIFFERS
    FILE_DEDUPE_RANGE_SAME

    extent-same (dedupe) ioctls; these MUST match the btrfs ioctl definitions

    FIOASYNC
    FIOCLEX
    FIOGETOWN
    FIONBIO
    FIONCLEX
    FIONREAD
    FIOQSIZE

    Some arches already define FIOQSIZE due to a historical conflict with a Hayes modem-specific ioctl value.

    FIOSETOWN

    Socket-level I/O control calls.

    FLUSHO
    FPE_CONDTRAP

    trap on condition

    FPE_FLTDIV

    floating point divide by zero

    FPE_FLTINV

    floating point invalid operation

    FPE_FLTOVF

    floating point overflow

    FPE_FLTRES

    floating point inexact result

    FPE_FLTSUB

    subscript out of range

    FPE_FLTUND

    floating point underflow

    FPE_FLTUNK

    undiagnosed floating-point exception

    FPE_INTDIV

    SIGFPE si_codes integer divide by zero

    FPE_INTOVF

    integer overflow

    FSEC_PER_SEC
    FSLABEL_MAX

    the read-only stuff doesn't really belong here, but any other place is probably as bad and I don't want to create yet another include file. Max chars for the interface; each fs may differ

    FS_AIO_MAX_NR

    system-wide maximum number of aio requests

    FS_AIO_NR

    current system-wide number of aio requests

    FS_APPEND_FL

    writes to file may only append

    FS_BTREE_FL

    btree format dir

    FS_COMPRBLK_FL

    One or more compressed clusters

    FS_COMPR_FL

    Compress file

    FS_DENTRY
    FS_DIRSYNC_FL

    dirsync behaviour (directories only)

    FS_DIRTY_FL

    Reserved for compression usage...

    FS_DIR_NOTIFY

    int: directory notification enabled

    FS_DQSTATS

    disc quota usage statistics and control

    FS_DQUOT_VERSION

    fs_disk_quota structure:

    FS_DQ_ACCT_MASK
    FS_DQ_ALLOCATED
    FS_DQ_BCOUNT

    Accounting values. These can only be set for filesystem with non-transactional quotas that require quotacheck(8) in userspace.

    FS_DQ_BHARD
    FS_DQ_BSOFT
    FS_DQ_BTIMER

    These timers can only be set in super user's dquot. For others, timers are automatically started and stopped. Superusers timer values set the limits for the rest. In case these values are zero, the DQ_{F,B}TIMELIMIT values defined below are used. These values also apply only to the d_fieldmask field for Q_XSETQLIM.

    FS_DQ_BWARNS

    Warning counts are set in both super user's dquot and others. For others, warnings are set/cleared by the administrators (or automatically by going below the soft limit). Superusers warning values set the warning limits for the rest. In case these values are zero, the DQ_{F,B}WARNLIMIT values defined below are used. These values also apply only to the d_fieldmask field for Q_XSETQLIM.

    FS_DQ_CACHE_HITS
    FS_DQ_DROPS
    FS_DQ_FREE
    FS_DQ_ICOUNT
    FS_DQ_IHARD
    FS_DQ_ISOFT

    These fields are sent to Q_XSETQLIM to specify fields that need to change.

    FS_DQ_ITIMER
    FS_DQ_IWARNS
    FS_DQ_LIMIT_MASK
    FS_DQ_LOOKUPS

    /proc/sys/fs/quota/

    FS_DQ_READS
    FS_DQ_RTBCOUNT
    FS_DQ_RTBHARD
    FS_DQ_RTBSOFT
    FS_DQ_RTBTIMER
    FS_DQ_RTBWARNS
    FS_DQ_SYNCS
    FS_DQ_TIMER_MASK
    FS_DQ_WARNINGS
    FS_DQ_WARNS_MASK
    FS_DQ_WRITES
    FS_EA_INODE_FL

    Inode used for large EA

    FS_ENCRYPTION_MODE_ADIANTUM
    FS_ENCRYPTION_MODE_AES_128_CBC
    FS_ENCRYPTION_MODE_AES_128_CTS
    FS_ENCRYPTION_MODE_AES_256_CBC
    FS_ENCRYPTION_MODE_AES_256_CTS
    FS_ENCRYPTION_MODE_AES_256_GCM
    FS_ENCRYPTION_MODE_AES_256_XTS
    FS_ENCRYPTION_MODE_INVALID

    Encryption algorithms

    FS_ENCRYPTION_MODE_SPECK128_256_CTS

    Removed, do not use.

    FS_ENCRYPTION_MODE_SPECK128_256_XTS

    Removed, do not use.

    FS_ENCRYPT_FL

    End compression flags --- maybe not all used Encrypted file

    FS_EOFBLOCKS_FL

    Reserved for ext4

    FS_EXTENT_FL

    Extents

    FS_FL_USER_MODIFIABLE

    User modifiable flags

    FS_FL_USER_VISIBLE

    User visible flags

    FS_GROUP_QUOTA

    group quota type

    FS_HUGE_FILE_FL

    Reserved for ext4

    FS_IMAGIC_FL

    AFS directory

    FS_IMMUTABLE_FL

    Immutable file

    FS_INDEX_FL

    hash-indexed directory

    FS_INLINE_DATA_FL

    Reserved for ext4

    FS_INOTIFY

    inotify submenu

    FS_JOURNAL_DATA_FL

    Reserved for ext3

    FS_KEY_DESCRIPTOR_SIZE

    File system encryption support Policy provided via an ioctl on the topmost directory

    FS_KEY_DESC_PREFIX

    Parameters for passing an encryption key into the kernel keyring

    FS_KEY_DESC_PREFIX_SIZE
    FS_LEASES

    int: leases enabled

    FS_LEASE_TIME

    int: maximum time to wait for a lease break

    FS_MAXDQUOT

    int:maximum number of dquots that can be allocated

    FS_MAXFILE

    int:maximum number of filedescriptors that can be allocated

    FS_MAXINODE

    int:maximum number of inodes that can be allocated

    FS_MAXSUPER

    int:maximum number of super_blocks that can be allocated

    FS_MAX_KEY_SIZE

    Structure that userspace passes to the kernel keyring

    FS_NOATIME_FL

    do not update atime

    FS_NOCOMP_FL

    Don't compress

    FS_NOCOW_FL

    Do not cow file

    FS_NODUMP_FL

    do not dump file

    FS_NOTAIL_FL

    file tail should not be merged

    FS_NRDQUOT

    int:current number of allocated dquots

    FS_NRFILE

    int:current number of allocated filedescriptors

    FS_NRINODE

    CTL_FS names: int:current number of allocated inodes

    FS_NRSUPER

    int:current number of allocated super_blocks

    FS_OCFS2

    ocfs2

    FS_OVERFLOWGID

    int: overflow GID

    FS_OVERFLOWUID

    int: overflow UID

    FS_POLICY_FLAGS_PAD_4
    FS_POLICY_FLAGS_PAD_8
    FS_POLICY_FLAGS_PAD_16
    FS_POLICY_FLAGS_PAD_32
    FS_POLICY_FLAGS_PAD_MASK
    FS_POLICY_FLAGS_VALID

    use master key directly

    FS_PROJINHERIT_FL

    Create with parents projid

    FS_PROJ_QUOTA

    project quota type

    FS_QSTATV_VERSION1

    fs_quota_statv.qs_version

    FS_QSTAT_VERSION

    fs_quota_stat.qs_version

    FS_QUOTA_GDQ_ACCT

    group quota accounting

    FS_QUOTA_GDQ_ENFD

    group quota limits enforcement

    FS_QUOTA_PDQ_ACCT

    project quota accounting

    FS_QUOTA_PDQ_ENFD

    project quota limits enforcement

    FS_QUOTA_UDQ_ACCT

    Various flags related to quotactl(2). user quota accounting

    FS_QUOTA_UDQ_ENFD

    user quota limits enforcement

    FS_RESERVED_FL

    reserved for ext2 lib

    FS_SECRM_FL

    Inode flags (FS_IOC_GETFLAGS / FS_IOC_SETFLAGS)

    FS_STATINODE
    FS_SYNC_FL

    Synchronous updates

    FS_TOPDIR_FL

    Top of directory hierarchies

    FS_UNRM_FL

    Undelete

    FS_USER_QUOTA

    user quota type

    FS_XFLAG_APPEND

    all writes append

    FS_XFLAG_COWEXTSIZE

    CoW extent size allocator hint

    FS_XFLAG_DAX

    use DAX for IO

    FS_XFLAG_EXTSIZE

    extent size allocator hint

    FS_XFLAG_EXTSZINHERIT

    inherit inode extent size

    FS_XFLAG_FILESTREAM

    use filestream allocator

    FS_XFLAG_HASATTR

    no DIFLAG for this

    FS_XFLAG_IMMUTABLE

    file cannot be modified

    FS_XFLAG_NOATIME

    do not update access time

    FS_XFLAG_NODEFRAG

    do not defragment

    FS_XFLAG_NODUMP

    do not include in backups

    FS_XFLAG_NOSYMLINKS

    disallow symlink creation

    FS_XFLAG_PREALLOC

    preallocated file extents

    FS_XFLAG_PROJINHERIT

    create with parents projid

    FS_XFLAG_REALTIME

    Flags for the fsx_xflags field data in realtime volume

    FS_XFLAG_RTINHERIT

    create with rt bit set

    FS_XFLAG_SYNC

    all writes synchronous

    FS_XFS

    struct: control xfs parameters

    FT_BLKDEV
    FT_CHRDEV
    FT_DIR
    FT_FIFO
    FT_MAX
    FT_REG_FILE
    FT_SOCK
    FT_SYMLINK
    FT_UNKNOWN

    fs on-disk file types. Only the low 3 bits are used for the POSIX file types. Other bits are reserved for fs private use. These definitions are shared and used by multiple filesystems, and MUST NOT change under any circumstances.

    FUTEX_BITSET_MATCH_ANY

    bitset with all bits set for the FUTEX_xxx_BITSET OPs to request a match of any bit.

    FUTEX_CLOCK_REALTIME
    FUTEX_CMD_MASK
    FUTEX_CMP_REQUEUE
    FUTEX_CMP_REQUEUE_PI
    FUTEX_CMP_REQUEUE_PI_PRIVATE
    FUTEX_CMP_REQUEUE_PRIVATE
    FUTEX_FD
    FUTEX_LOCK_PI
    FUTEX_LOCK_PI_PRIVATE
    FUTEX_OP_ADD

    *(int *)UADDR2 += OPARG;

    FUTEX_OP_ANDN

    *(int *)UADDR2 &= ~OPARG;

    FUTEX_OP_CMP_EQ

    if (oldval == CMPARG) wake

    FUTEX_OP_CMP_GE

    if (oldval >= CMPARG) wake

    FUTEX_OP_CMP_GT

    if (oldval > CMPARG) wake

    FUTEX_OP_CMP_LE

    if (oldval <= CMPARG) wake

    FUTEX_OP_CMP_LT

    if (oldval < CMPARG) wake

    FUTEX_OP_CMP_NE

    if (oldval != CMPARG) wake

    FUTEX_OP_OPARG_SHIFT

    Use (1 << OPARG) instead of OPARG.

    FUTEX_OP_OR

    *(int *)UADDR2 |= OPARG;

    FUTEX_OP_SET

    *(int *)UADDR2 = OPARG;

    FUTEX_OP_XOR

    *(int *)UADDR2 ^= OPARG;

    FUTEX_OWNER_DIED

    The kernel signals via this bit that a thread holding a futex has exited without unlocking the futex. The kernel also does a FUTEX_WAKE on such futexes, after setting the bit, to wake up any possible waiters:

    FUTEX_PRIVATE_FLAG
    FUTEX_REQUEUE
    FUTEX_REQUEUE_PRIVATE
    FUTEX_TID_MASK

    The rest of the robust-futex field is for the TID:

    FUTEX_TRYLOCK_PI
    FUTEX_TRYLOCK_PI_PRIVATE
    FUTEX_UNLOCK_PI
    FUTEX_UNLOCK_PI_PRIVATE
    FUTEX_WAIT

    Second argument to futex syscall

    FUTEX_WAITERS

    Are there any waiters for this robust futex:

    FUTEX_WAIT_BITSET
    FUTEX_WAIT_BITSET_PRIVATE
    FUTEX_WAIT_PRIVATE
    FUTEX_WAIT_REQUEUE_PI
    FUTEX_WAIT_REQUEUE_PI_PRIVATE
    FUTEX_WAKE
    FUTEX_WAKE_BITSET
    FUTEX_WAKE_BITSET_PRIVATE
    FUTEX_WAKE_OP
    FUTEX_WAKE_OP_PRIVATE
    FUTEX_WAKE_PRIVATE
    F_ADD_SEALS

    Set/Get seals

    F_CANCELLK

    Cancel a blocking posix lock; internal use only until we expose an asynchronous lock api to userspace:

    F_DUPFD
    F_DUPFD_CLOEXEC

    Create a file descriptor with FD_CLOEXEC set.

    F_EXLCK

    for old implementation of bsd flock ()

    F_GETFD
    F_GETFL
    F_GETLEASE
    F_GETLK
    F_GETLK64

    using 'struct flock64'

    F_GETOWN
    F_GETOWNER_UIDS
    F_GETOWN_EX
    F_GETPIPE_SZ
    F_GETSIG
    F_GET_FILE_RW_HINT
    F_GET_RW_HINT

    Set/Get write life time hints. {GET,SET}_RW_HINT operate on the underlying inode, while {GET,SET}_FILE_RW_HINT operate only on the specific file.

    F_GET_SEALS
    F_LINUX_SPECIFIC_BASE
    F_NOTIFY

    Request nofications on a directory. See below for events that may be notified.

    F_OFD_GETLK

    Open File Description Locks

    F_OFD_SETLK
    F_OFD_SETLKW
    F_OWNER_PGRP
    F_OWNER_PID
    F_OWNER_TID
    F_RDLCK

    for posix fcntl() and lockf()

    F_SEAL_FUTURE_WRITE

    prevent future writes while mapped

    F_SEAL_GROW

    prevent file from growing

    F_SEAL_SEAL

    Types of seals prevent further seals from being set

    F_SEAL_SHRINK

    prevent file from shrinking

    F_SEAL_WRITE

    prevent writes

    F_SETFD
    F_SETFL
    F_SETLEASE
    F_SETLK
    F_SETLK64
    F_SETLKW
    F_SETLKW64
    F_SETOWN
    F_SETOWN_EX
    F_SETPIPE_SZ

    Set and get of pipe page size array

    F_SETSIG
    F_SET_FILE_RW_HINT
    F_SET_RW_HINT
    F_SHLCK
    F_UNLCK
    F_WRLCK
    GETALL

    get all semval's

    GETNCNT

    get semncnt

    GETPID

    semctl Command Definitions. get sempid

    GETVAL

    get semval

    GETZCNT

    get semzcnt

    HUGETLB_FLAG_ENCODE_1GB
    HUGETLB_FLAG_ENCODE_1MB
    HUGETLB_FLAG_ENCODE_2GB
    HUGETLB_FLAG_ENCODE_2MB
    HUGETLB_FLAG_ENCODE_8MB
    HUGETLB_FLAG_ENCODE_16GB
    HUGETLB_FLAG_ENCODE_16MB
    HUGETLB_FLAG_ENCODE_32MB
    HUGETLB_FLAG_ENCODE_64KB
    HUGETLB_FLAG_ENCODE_256MB
    HUGETLB_FLAG_ENCODE_512KB
    HUGETLB_FLAG_ENCODE_512MB
    HUGETLB_FLAG_ENCODE_MASK
    HUGETLB_FLAG_ENCODE_SHIFT

    Several system calls take a flag to request "hugetlb" huge pages. Without further specification, these system calls will use the system's default huge page size. If a system supports multiple huge page sizes, the desired huge page size can be specified in bits [26:31] of the flag arguments. The value in these 6 bits will encode the log2 of the huge page size.

    HUPCL
    IBSHIFT

    Shift from CBAUD to CIBAUD

    ICANON
    ICRNL
    IEXTEN
    IGNBRK

    c_iflag bits

    IGNCR
    IGNPAR
    IIF_ALL
    IIF_BGRACE

    Structure used for setting quota information about file via quotactl Following flags are used to specify which fields are valid

    IIF_FLAGS
    IIF_IGRACE
    ILL_BADIADDR

    unimplemented instruction address

    ILL_BADSTK

    internal stack error

    ILL_COPROC

    coprocessor error

    ILL_ILLADR

    illegal addressing mode

    ILL_ILLOPC

    SIGILL si_codes illegal opcode

    ILL_ILLOPN

    illegal operand

    ILL_ILLTRP

    illegal trap

    ILL_PRVOPC

    privileged opcode

    ILL_PRVREG

    privileged register

    IMAXBEL
    INADDR_ALLHOSTS_GROUP

    224.0.0.1

    INADDR_ALLRTRS_GROUP

    224.0.0.2

    INADDR_ALLSNOOPERS_GROUP

    224.0.0.106

    INADDR_ANY

    Address to accept any incoming messages.

    INADDR_BROADCAST

    Address to send to all hosts.

    INADDR_LOOPBACK

    Address to loopback in software to local host. 127.0.0.1

    INADDR_MAX_LOCAL_GROUP

    224.0.0.255

    INADDR_NONE

    Address indicating an error return.

    INADDR_UNSPEC_GROUP

    Defines for Multicast INADDR 224.0.0.0

    INLCR
    INOTIFY_MAX_QUEUED_EVENTS
    INOTIFY_MAX_USER_INSTANCES

    /proc/sys/fs/inotify/ max instances per user

    INOTIFY_MAX_USER_WATCHES

    max watches per user

    INPCK
    INR_OPEN_CUR

    This file has definitions for some important file table structures and constants and structures used by various generic file system ioctl's. Please do not make any changes in this file before sending patches for review to linux-fsdevel@vger.kernel.org and linux-api@vger.kernel.org. Use of MS_* flags within the kernel is restricted to core mount(2) code. It's silly to have NR_OPEN bigger than NR_FILE, but you can change the file limit at runtime and only root can increase the per-process nr_file rlimit, so it's safe to set up a ridiculously high absolute upper limit on files-per-process.

    INR_OPEN_MAX

    Hard limit for nfile rlimits

    IN_ACCESS

    the following are legal, implemented events that user-space can watch for File was accessed

    IN_ALL_EVENTS

    All of the events - we build the list by hand so that we can add flags in the future and not break backward compatibility. Apps will get only the events that they originally wanted. Be sure to add new events here!

    IN_ATTRIB

    Metadata changed

    IN_CLASSA_HOST
    IN_CLASSA_MAX
    IN_CLASSA_NET
    IN_CLASSA_NSHIFT
    IN_CLASSB_HOST
    IN_CLASSB_MAX
    IN_CLASSB_NET
    IN_CLASSB_NSHIFT
    IN_CLASSC_HOST
    IN_CLASSC_NET
    IN_CLASSC_NSHIFT
    IN_CLASSE_NET
    IN_CLASSE_NSHIFT
    IN_CLOEXEC

    Flags for sys_inotify_init1.

    IN_CLOSE

    close

    IN_CLOSE_NOWRITE

    Unwrittable file closed

    IN_CLOSE_WRITE

    Writtable file was closed

    IN_CREATE

    Subfile was created

    IN_DELETE

    Subfile was deleted

    IN_DELETE_SELF

    Self was deleted

    IN_DONT_FOLLOW

    don't follow a sym link

    IN_EXCL_UNLINK

    exclude events on unlinked objects

    IN_IGNORED

    File was ignored

    IN_ISDIR

    event occurred against dir

    IN_LOOPBACKNET

    Network number for local host loopback.

    IN_MASK_ADD

    add to the mask of an already existing watch

    IN_MASK_CREATE

    only create watches

    IN_MODIFY

    File was modified

    IN_MOVE

    moves

    IN_MOVED_FROM

    File was moved from X

    IN_MOVED_TO

    File was moved to Y

    IN_MOVE_SELF

    Self was moved

    IN_MULTICAST_NET
    IN_NONBLOCK
    IN_ONESHOT

    only send event once

    IN_ONLYDIR

    special flags only watch the path if it is a directory

    IN_OPEN

    File was opened

    IN_Q_OVERFLOW

    Event queued overflowed

    IN_UNMOUNT

    the following are legal events. they are sent as needed to any watch Backing fs was unmounted

    IOCB_CMD_FDSYNC
    IOCB_CMD_FSYNC
    IOCB_CMD_NOOP
    IOCB_CMD_POLL
    IOCB_CMD_PREAD
    IOCB_CMD_PREADV
    IOCB_CMD_PWRITE
    IOCB_CMD_PWRITEV
    IOCB_FLAG_IOPRIO
    IOCB_FLAG_RESFD

    Valid flags for the "aio_flags" member of the "struct iocb". IOCB_FLAG_RESFD - Set if the "aio_resfd" member of the "struct iocb" is valid. IOCB_FLAG_IOPRIO - Set if the "aio_reqprio" member of the "struct iocb" is valid.

    IOCSIZE_MASK
    IOCSIZE_SHIFT
    IOC_DIRBITS
    IOC_DIRMASK
    IOC_DIRSHIFT
    IOC_IN

    ...and for the drivers/sound files...

    IOC_INOUT
    IOC_NONE

    Direction bits, which any architecture can choose to override before including this file.

    IOC_NRBITS

    ioctl command encoding: 32 bits total, command in lower 16 bits, size of the parameter structure in the lower 14 bits of the upper 16 bits. Encoding the size of the parameter structure in the ioctl request is useful for catching programs compiled with old versions and to avoid overwriting user space outside the user buffer area. The highest 2 bits are reserved for indicating the ``access mode''. NOTE: This limits the max parameter size to 16kB -1 ! The following is for compatibility across the various Linux platforms. The generic ioctl numbering scheme doesn't really enforce a type field. De facto, however, the top 8 bits of the lower 16 bits are indeed used as a type field, so we might just as well make this explicit here. Please be sure to use the decoding macros below from now on.

    IOC_NRMASK
    IOC_NRSHIFT
    IOC_OUT
    IOC_READ
    IOC_SIZEBITS

    Let any architecture override either of the following before including this file.

    IOC_SIZEMASK
    IOC_SIZESHIFT
    IOC_TYPEBITS
    IOC_TYPEMASK
    IOC_TYPESHIFT
    IOC_WRITE
    IOPRIO_BE_NR

    8 best effort priority levels are supported

    IOPRIO_CLASS_BE
    IOPRIO_CLASS_IDLE
    IOPRIO_CLASS_NONE

    These are the io priority groups as implemented by CFQ. RT is the realtime class, it always gets premium service. BE is the best-effort scheduling class, the default for any process. IDLE is the idle scheduling class, it is only served when no one else is using the disk.

    IOPRIO_CLASS_RT
    IOPRIO_CLASS_SHIFT

    Gives us 8 prio classes with 13-bits of data for each class

    IOPRIO_NORM

    Fallback BE priority

    IOPRIO_PRIO_MASK
    IOPRIO_WHO_PGRP
    IOPRIO_WHO_PROCESS
    IOPRIO_WHO_USER
    IORING_CQE_BUFFER_SHIFT
    IORING_CQE_F_BUFFER

    cqe->flags IORING_CQE_F_BUFFER If set, the upper 16 bits are the buffer ID

    IORING_ENTER_GETEVENTS

    io_uring_enter(2) flags

    IORING_ENTER_SQ_WAKEUP
    IORING_FEAT_CUR_PERSONALITY
    IORING_FEAT_FAST_POLL
    IORING_FEAT_NODROP
    IORING_FEAT_RW_CUR_POS
    IORING_FEAT_SINGLE_MMAP

    io_uring_params->features flags

    IORING_FEAT_SUBMIT_STABLE
    IORING_FSYNC_DATASYNC

    sqe->fsync_flags

    IORING_OFF_CQ_RING
    IORING_OFF_SQES
    IORING_OFF_SQ_RING

    Magic offsets for the application to mmap the data it needs

    IORING_REGISTER_BUFFERS

    io_uring_register(2) opcodes and arguments

    IORING_REGISTER_EVENTFD
    IORING_REGISTER_EVENTFD_ASYNC
    IORING_REGISTER_FILES
    IORING_REGISTER_FILES_UPDATE
    IORING_REGISTER_PERSONALITY
    IORING_REGISTER_PROBE
    IORING_SETUP_ATTACH_WQ

    attach to existing wq

    IORING_SETUP_CLAMP

    clamp SQ/CQ ring sizes

    IORING_SETUP_CQSIZE

    app defines CQ size

    IORING_SETUP_IOPOLL

    io_uring_setup() flags io_context is polled

    IORING_SETUP_SQPOLL

    SQ poll thread

    IORING_SETUP_SQ_AFF

    sq_thread_cpu is valid

    IORING_SQ_NEED_WAKEUP

    sq_ring->flags needs io_uring_enter wakeup

    IORING_TIMEOUT_ABS

    sqe->timeout_flags

    IORING_UNREGISTER_BUFFERS
    IORING_UNREGISTER_EVENTFD
    IORING_UNREGISTER_FILES
    IORING_UNREGISTER_PERSONALITY
    IOSQE_ASYNC

    always go async

    IOSQE_ASYNC_BIT
    IOSQE_BUFFER_SELECT

    select buffer from sqe->buf_group

    IOSQE_BUFFER_SELECT_BIT
    IOSQE_FIXED_FILE

    sqe->flags use fixed fileset

    IOSQE_FIXED_FILE_BIT
    IOSQE_IO_DRAIN

    issue after inflight IO

    IOSQE_IO_DRAIN_BIT
    IOSQE_IO_HARDLINK

    like LINK, but stronger

    IOSQE_IO_HARDLINK_BIT
    IOSQE_IO_LINK

    links next sqe

    IOSQE_IO_LINK_BIT
    IO_URING_OP_SUPPORTED
    IPC_64
    IPC_CREAT

    resource get request flags create if key is nonexistent

    IPC_DIPC

    these fields are used by the DIPC package so the kernel as standard should avoid using them if possible make it distributed

    IPC_EXCL

    fail if key exists

    IPC_INFO

    see ipcs

    IPC_NOWAIT

    return error on wait

    IPC_NS_INDEX
    IPC_OLD

    Version flags for semctl, msgctl, and shmctl commands These are passed as bitflags or-ed with the actual command

    IPC_OWN

    this machine is the DIPC owner

    IPC_PRIVATE
    IPC_RMID

    Control commands used with semctl, msgctl and shmctl see also specific commands in sem.h, msg.h and shm.h remove resource

    IPC_SET

    set ipc_perm options

    IPC_STAT

    get ipc_perm options

    IPPROTO_AH

    Authentication Header protocol

    IPPROTO_BEETPH

    IP option pseudo header for BEET

    IPPROTO_COMP

    Compression Header Protocol

    IPPROTO_DCCP

    Datagram Congestion Control Protocol

    IPPROTO_DSTOPTS

    IPv6 destination options

    IPPROTO_EGP

    Exterior Gateway Protocol

    IPPROTO_ENCAP

    Encapsulation Header

    IPPROTO_ESP

    Encapsulation Security Payload protocol

    IPPROTO_FRAGMENT

    IPv6 fragmentation header

    IPPROTO_GRE

    Cisco GRE tunnels (rfc 1701,1702)

    IPPROTO_HOPOPTS

    IPV6 extension headers IPv6 hop-by-hop options

    IPPROTO_ICMP

    Internet Control Message Protocol

    IPPROTO_ICMPV6

    ICMPv6

    IPPROTO_IDP

    XNS IDP protocol

    IPPROTO_IGMP

    Internet Group Management Protocol

    IPPROTO_IP

    INET: An implementation of the TCP/IP protocol suite for the LINUX operating system. INET is implemented using the BSD Socket interface as the means of communication with the user level.

    IPPROTO_IPIP

    IPIP tunnels (older KA9Q tunnels use 94)

    IPPROTO_IPV6

    IPv6-in-IPv4 tunnelling

    IPPROTO_MAX
    IPPROTO_MH

    IPv6 mobility header

    IPPROTO_MPLS

    MPLS in IP (RFC 4023)

    IPPROTO_MTP

    Multicast Transport Protocol

    IPPROTO_NONE

    IPv6 no next header

    IPPROTO_PIM

    Protocol Independent Multicast

    IPPROTO_PUP

    PUP protocol

    IPPROTO_RAW

    Raw IP packets

    IPPROTO_ROUTING

    IPv6 routing header

    IPPROTO_RSVP

    RSVP Protocol

    IPPROTO_SCTP

    Stream Control Transport Protocol

    IPPROTO_TCP

    Transmission Control Protocol

    IPPROTO_TP

    SO Transport Protocol Class 4

    IPPROTO_UDP

    User Datagram Protocol

    IPPROTO_UDPLITE

    UDP-Lite (RFC 3828)

    IPV6_2292DSTOPTS
    IPV6_2292HOPLIMIT
    IPV6_2292HOPOPTS
    IPV6_2292PKTINFO
    IPV6_2292PKTOPTIONS
    IPV6_2292RTHDR
    IPV6_ADDRFORM

    IPV6 socket options

    IPV6_ADDR_PREFERENCES

    RFC5014: Source address selection

    IPV6_ADD_MEMBERSHIP
    IPV6_AUTHHDR

    obsolete

    IPV6_AUTOFLOWLABEL
    IPV6_CHECKSUM
    IPV6_DONTFRAG
    IPV6_DROP_MEMBERSHIP
    IPV6_DSTOPTS
    IPV6_FLOWINFO
    IPV6_FLOWINFO_FLOWLABEL

    Bitmask constant declarations to help applications select out the flow label and priority fields.

    IPV6_FLOWINFO_PRIORITY
    IPV6_FLOWINFO_SEND
    IPV6_FLOWLABEL_MGR

    Flowlabel

    IPV6_FL_A_GET
    IPV6_FL_A_PUT
    IPV6_FL_A_RENEW
    IPV6_FL_F_CREATE
    IPV6_FL_F_EXCL
    IPV6_FL_F_REFLECT
    IPV6_FL_F_REMOTE
    IPV6_FL_S_ANY
    IPV6_FL_S_EXCL
    IPV6_FL_S_NONE
    IPV6_FL_S_PROCESS
    IPV6_FL_S_USER
    IPV6_FREEBIND
    IPV6_HDRINCL
    IPV6_HOPLIMIT
    IPV6_HOPOPTS
    IPV6_IPSEC_POLICY
    IPV6_JOIN_ANYCAST
    IPV6_LEAVE_ANYCAST
    IPV6_MINHOPCOUNT

    RFC5082: Generalized Ttl Security Mechanism

    IPV6_MTU
    IPV6_MTU_DISCOVER
    IPV6_MULTICAST_ALL
    IPV6_MULTICAST_HOPS
    IPV6_MULTICAST_IF
    IPV6_MULTICAST_LOOP
    IPV6_NEXTHOP
    IPV6_ORIGDSTADDR
    IPV6_PATHMTU
    IPV6_PKTINFO
    IPV6_PMTUDISC_DO
    IPV6_PMTUDISC_DONT

    IPV6_MTU_DISCOVER values

    IPV6_PMTUDISC_INTERFACE

    same as IPV6_PMTUDISC_PROBE, provided for symetry with IPv4 also see comments on IP_PMTUDISC_INTERFACE

    IPV6_PMTUDISC_OMIT

    weaker version of IPV6_PMTUDISC_INTERFACE, which allows packets to get fragmented if they exceed the interface mtu

    IPV6_PMTUDISC_PROBE
    IPV6_PMTUDISC_WANT
    IPV6_PREFER_SRC_CGA
    IPV6_PREFER_SRC_COA
    IPV6_PREFER_SRC_HOME
    IPV6_PREFER_SRC_NONCGA
    IPV6_PREFER_SRC_PUBLIC
    IPV6_PREFER_SRC_PUBTMP_DEFAULT
    IPV6_PREFER_SRC_TMP
    IPV6_PRIORITY_8
    IPV6_PRIORITY_9
    IPV6_PRIORITY_10
    IPV6_PRIORITY_11
    IPV6_PRIORITY_12
    IPV6_PRIORITY_13
    IPV6_PRIORITY_14
    IPV6_PRIORITY_15
    IPV6_PRIORITY_BULK
    IPV6_PRIORITY_CONTROL
    IPV6_PRIORITY_FILLER
    IPV6_PRIORITY_INTERACTIVE
    IPV6_PRIORITY_RESERVED1
    IPV6_PRIORITY_RESERVED2
    IPV6_PRIORITY_UNATTENDED
    IPV6_PRIORITY_UNCHARACTERIZED

    These definitions are obsolete

    IPV6_RECVDSTOPTS
    IPV6_RECVERR
    IPV6_RECVFRAGSIZE
    IPV6_RECVHOPLIMIT
    IPV6_RECVHOPOPTS
    IPV6_RECVORIGDSTADDR
    IPV6_RECVPATHMTU
    IPV6_RECVPKTINFO

    Advanced API (RFC3542) (1) Note: IPV6_RECVRTHDRDSTOPTS does not exist. see net/ipv6/datagram.c.

    IPV6_RECVRTHDR
    IPV6_RECVTCLASS

    Advanced API (RFC3542) (2)

    IPV6_ROUTER_ALERT
    IPV6_ROUTER_ALERT_ISOLATE
    IPV6_RTHDR
    IPV6_RTHDRDSTOPTS
    IPV6_TCLASS
    IPV6_TLV_CALIPSO

    RFC 5570

    IPV6_TLV_HAO

    home address option

    IPV6_TLV_JUMBO
    IPV6_TLV_PAD1

    IPv6 TLV options.

    IPV6_TLV_PADN
    IPV6_TLV_ROUTERALERT
    IPV6_TRANSPARENT
    IPV6_UNICAST_HOPS
    IPV6_UNICAST_IF
    IPV6_V6ONLY
    IPV6_XFRM_POLICY
    IPX_TYPE

    IPX options

    IP_ADD_MEMBERSHIP
    IP_ADD_SOURCE_MEMBERSHIP
    IP_BIND_ADDRESS_NO_PORT
    IP_BLOCK_SOURCE
    IP_CHECKSUM
    IP_DEFAULT_MULTICAST_LOOP
    IP_DEFAULT_MULTICAST_TTL

    These need to appear somewhere around here

    IP_DROP_MEMBERSHIP
    IP_DROP_SOURCE_MEMBERSHIP
    IP_FREEBIND
    IP_HDRINCL
    IP_IPSEC_POLICY
    IP_MINTTL
    IP_MSFILTER
    IP_MTU
    IP_MTU_DISCOVER
    IP_MULTICAST_ALL
    IP_MULTICAST_IF
    IP_MULTICAST_LOOP
    IP_MULTICAST_TTL
    IP_NODEFRAG
    IP_OPTIONS
    IP_ORIGDSTADDR

    TProxy original addresses

    IP_PASSSEC
    IP_PKTINFO
    IP_PKTOPTIONS
    IP_PMTUDISC_DO

    Always DF

    IP_PMTUDISC_DONT

    IP_MTU_DISCOVER values Never send DF frames

    IP_PMTUDISC_INTERFACE

    Always use interface mtu (ignores dst pmtu) but don't set DF flag. Also incoming ICMP frag_needed notifications will be ignored on this socket to prevent accepting spoofed ones.

    IP_PMTUDISC_OMIT
    IP_PMTUDISC_PROBE

    Ignore dst pmtu

    IP_PMTUDISC_WANT

    Use per route hints

    IP_RECVERR
    IP_RECVFRAGSIZE
    IP_RECVOPTS
    IP_RECVORIGDSTADDR
    IP_RECVRETOPTS

    BSD compatibility

    IP_RECVTOS
    IP_RECVTTL
    IP_RETOPTS
    IP_ROUTER_ALERT
    IP_TOS
    IP_TRANSPARENT
    IP_TTL
    IP_UNBLOCK_SOURCE
    IP_UNICAST_IF
    IP_XFRM_POLICY
    ISIG

    c_lflag bits

    ISTRIP
    ITIMER_PROF
    ITIMER_REAL

    Names of the interval timers, and structure defining a timer setting:

    ITIMER_VIRTUAL
    IUCLC
    IUTF8
    IXANY
    IXOFF
    IXON
    KCMP_EPOLL_TFD
    KCMP_FILE

    Comparison type - enum kcmp_type.

    KCMP_FILES
    KCMP_FS
    KCMP_IO
    KCMP_SIGHAND
    KCMP_SYSVSEM
    KCMP_TYPES
    KCMP_VM
    KERN_ACCT

    BSD process accounting parameters

    KERN_ACPI_VIDEO_FLAGS

    int: flags for setting up video after ACPI sleep

    KERN_BOOTLOADER_TYPE

    int: boot loader type

    KERN_CADPID

    int: PID of the process to notify on CAD

    KERN_COMPAT_LOG

    int: print compat layer messages

    KERN_CORE_PATTERN

    string: pattern for core-file names

    KERN_CORE_USES_PID

    int: use core or core.%pid

    KERN_CTLALTDEL

    int: allow ctl-alt-del to reboot

    KERN_DOMAINNAME

    string: domainname

    KERN_HOTPLUG

    string: path to uevent helper (deprecated)

    KERN_HPPA_PWRSW

    int: hppa soft-power enable

    KERN_HPPA_UNALIGNED

    int: hppa unaligned-trap enable

    KERN_HZ_TIMER

    int: hz timer on or off

    KERN_IA64_UNALIGNED

    int: ia64 unaligned userland trap enable

    KERN_IEEE_EMULATION_WARNINGS

    int: unimplemented ieee instructions

    KERN_MAX_LOCK_DEPTH

    int: rtmutex's maximum lock depth

    KERN_MAX_THREADS

    int: Maximum nr of threads in the system

    KERN_MODPROBE

    string: modprobe path

    KERN_MSGMAX

    int: Maximum size of a messege

    KERN_MSGMNB

    int: Maximum message queue size

    KERN_MSGMNI

    int: msg queue identifiers

    KERN_MSGPOOL

    int: Maximum system message pool size

    KERN_NAMETRANS

    Name translation

    KERN_NGROUPS_MAX

    int: NGROUPS_MAX

    KERN_NMI_WATCHDOG

    int: enable/disable nmi watchdog

    KERN_NODENAME

    string: hostname

    KERN_OSRELEASE

    string: system release

    KERN_OSREV

    int: system revision

    KERN_OSTYPE

    CTL_KERN names: string: system version

    KERN_OVERFLOWGID

    int: overflow GID

    KERN_OVERFLOWUID

    int: overflow UID

    KERN_PANIC

    int: panic timeout

    KERN_PANIC_ON_NMI

    int: whether we will panic on an unrecovered

    KERN_PANIC_ON_OOPS

    int: whether we will panic on an oops

    KERN_PANIC_ON_WARN

    int: call panic() in WARN() functions

    KERN_PANIC_PRINT

    ulong: bitmask to print system info on panic

    KERN_PIDMAX

    int: PID # limit

    KERN_PPC_HTABRECLAIM

    turn htab reclaimation on/off on PPC

    KERN_PPC_L2CR

    l2cr register on PPC

    KERN_PPC_POWERSAVE_NAP

    use nap mode for power saving

    KERN_PPC_ZEROPAGED

    turn idle page zeroing on/off on PPC

    KERN_PRINTK

    struct: control printk logging parameters

    KERN_PRINTK_RATELIMIT

    int: tune printk ratelimiting

    KERN_PRINTK_RATELIMIT_BURST

    int: tune printk ratelimiting

    KERN_PROF

    table: profiling information

    KERN_PTY

    dir: pty driver

    KERN_RANDOM

    Random driver

    KERN_RANDOMIZE

    int: randomize virtual address space

    KERN_REALROOTDEV

    real root device to mount after initrd

    KERN_RTSIGMAX

    Max queuable

    KERN_RTSIGNR

    Number of rt sigs queued

    KERN_S390_USER_DEBUG_LOGGING

    int: dumps of user faults

    KERN_SECUREMASK

    struct: maximum rights mask

    KERN_SEM

    struct: sysv semaphore limits

    KERN_SETUID_DUMPABLE

    int: behaviour of dumps for setuid core

    KERN_SG_BIG_BUFF

    int: sg driver reserved buffer size

    KERN_SHMALL

    int: Maximum size of shared memory

    KERN_SHMMAX

    long: Maximum shared memory segment

    KERN_SHMMNI

    int: shm array identifiers

    KERN_SHMPATH

    string: path to shm fs

    KERN_SPARC_REBOOT

    reboot command on Sparc

    KERN_SPARC_SCONS_PWROFF

    int: serial console power-off halt

    KERN_SPARC_STOP_A

    int: Sparc Stop-A enable

    KERN_SPIN_RETRY

    int: number of spinlock retries

    KERN_SYSRQ

    int: Sysreq enable

    KERN_TAINTED

    int: various kernel tainted flags

    KERN_UNKNOWN_NMI_PANIC

    int: unknown nmi panic flag

    KERN_VERSION

    string: compile time info

    KEXEC_ARCH_68K
    KEXEC_ARCH_386
    KEXEC_ARCH_AARCH64
    KEXEC_ARCH_ARM
    KEXEC_ARCH_DEFAULT

    These values match the ELF architecture values. Unless there is a good reason that should continue to be the case.

    KEXEC_ARCH_IA_64
    KEXEC_ARCH_MASK
    KEXEC_ARCH_MIPS
    KEXEC_ARCH_MIPS_LE
    KEXEC_ARCH_PPC
    KEXEC_ARCH_PPC64
    KEXEC_ARCH_S390
    KEXEC_ARCH_SH
    KEXEC_ARCH_X86_64
    KEXEC_FILE_NO_INITRAMFS
    KEXEC_FILE_ON_CRASH
    KEXEC_FILE_UNLOAD

    Kexec file load interface flags. KEXEC_FILE_UNLOAD : Unload already loaded kexec/kdump image. KEXEC_FILE_ON_CRASH : Load/unload operation belongs to kdump image. KEXEC_FILE_NO_INITRAMFS : No initramfs is being loaded. Ignore the initrd fd field.

    KEXEC_ON_CRASH

    kexec system call - It loads the new kernel to boot into. kexec does not sync, or unmount filesystems so if you need that to happen you need to do that yourself. kexec flags for different usage scenarios

    KEXEC_PRESERVE_CONTEXT
    KEXEC_SEGMENT_MAX

    The artificial cap on the number of segments passed to kexec_load.

    KEY_ALLOC_BUILT_IN

    Key is built into kernel

    KEY_ALLOC_BYPASS_RESTRICTION

    Override the check on restricted keyrings

    KEY_ALLOC_IN_QUOTA

    add to quota, reject if would overrun

    KEY_ALLOC_NOT_IN_QUOTA

    not in quota

    KEY_ALLOC_QUOTA_OVERRUN

    add to quota, permit even if overrun

    KEY_ALLOC_UID_KEYRING

    allocating a user or user session keyring

    KEY_DEBUG_MAGIC

    authentication token / access credential / keyring

    KEY_FLAG_BUILTIN

    set if key is built in to the kernel

    KEY_FLAG_DEAD

    set if key type has been deleted

    KEY_FLAG_INVALIDATED

    set if key has been invalidated

    KEY_FLAG_IN_QUOTA

    set if key consumes quota

    KEY_FLAG_KEEP

    set if key should not be removed

    KEY_FLAG_REVOKED

    set if key had been revoked

    KEY_FLAG_ROOT_CAN_CLEAR

    set if key can be cleared by root without permission

    KEY_FLAG_ROOT_CAN_INVAL

    set if key can be invalidated by root without permission

    KEY_FLAG_UID_KEYRING

    set if key is a user or user session keyring

    KEY_FLAG_USER_CONSTRUCT

    set if key is being constructed in userspace

    KEY_GRP_ALL
    KEY_GRP_LINK
    KEY_GRP_READ
    KEY_GRP_SEARCH
    KEY_GRP_SETATTR
    KEY_GRP_VIEW

    group permissions...

    KEY_GRP_WRITE
    KEY_IS_POSITIVE

    Positively instantiated

    KEY_IS_UNINSTANTIATED
    KEY_NEED_ALL

    All the above permissions

    KEY_NEED_LINK

    Require permission to link

    KEY_NEED_READ

    Require permission to read content

    KEY_NEED_SEARCH

    Require permission to search (keyring) or find (key)

    KEY_NEED_SETATTR

    Require permission to change attributes

    KEY_NEED_VIEW

    The permissions required on a key that we're looking up. Require permission to view attributes

    KEY_NEED_WRITE

    Require permission to update / modify

    KEY_OTH_ALL
    KEY_OTH_LINK
    KEY_OTH_READ
    KEY_OTH_SEARCH
    KEY_OTH_SETATTR
    KEY_OTH_VIEW

    third party permissions...

    KEY_OTH_WRITE
    KEY_PERM_UNDEF
    KEY_POS_ALL
    KEY_POS_LINK

    possessor can create a link to a key/keyring

    KEY_POS_READ

    possessor can read key payload / view keyring

    KEY_POS_SEARCH

    possessor can find a key in search / search a keyring

    KEY_POS_SETATTR

    possessor can set key attributes

    KEY_POS_VIEW

    possessor can view a key's attributes

    KEY_POS_WRITE

    possessor can update key payload / add link to keyring

    KEY_USR_ALL
    KEY_USR_LINK
    KEY_USR_READ
    KEY_USR_SEARCH
    KEY_USR_SETATTR
    KEY_USR_VIEW

    user permissions...

    KEY_USR_WRITE
    LDT_ENTRIES

    ldt.h Definitions of structures used with the modify_ldt system call. Maximum number of LDT entries supported.

    LDT_ENTRY_SIZE

    The size of each LDT entry.

    LINK_MAX

    links a file may have

    LINUX_CAPABILITY_U32S
    LINUX_CAPABILITY_U32S_1
    LINUX_CAPABILITY_U32S_2
    LINUX_CAPABILITY_U32S_3
    LINUX_CAPABILITY_VERSION

    Backwardly compatible definition for source code - trapped in a 32-bit world. If you find you need this, please consider using libcap to untrap yourself...

    LINUX_CAPABILITY_VERSION_1

    User-level do most of the mapping between kernel and user capabilities based on the version tag given by the kernel. The kernel might be somewhat backwards compatible, but don't bet on it. Note, cap_t, is defined by POSIX (draft) to be an "opaque" pointer to a set of three capability sets. The transposition of 3*the following structure to such a composite is better handled in a user library since the draft standard requires the use of malloc/free etc..

    LINUX_CAPABILITY_VERSION_2

    deprecated - use v3

    LINUX_CAPABILITY_VERSION_3
    LINUX_GETCPU_H
    LOCK_EX

    exclusive lock

    LOCK_MAND

    This is a mandatory flock ...

    LOCK_NB

    or'd with one of the above to prevent blocking

    LOCK_READ

    which allows concurrent read operations

    LOCK_RW

    which allows concurrent read & write ops

    LOCK_SH

    operations for bsd flock(), also used by the kernel implementation shared lock

    LOCK_UN

    remove lock

    LOCK_WRITE

    which allows concurrent write operations

    MADV_COLD

    deactivate these pages

    MADV_DODUMP

    Clear the MADV_DONTDUMP flag

    MADV_DOFORK

    do inherit across fork

    MADV_DONTDUMP

    Explicity exclude from the core dump, overrides the coredump filter bits

    MADV_DONTFORK

    don't inherit across fork

    MADV_DONTNEED

    don't need these pages

    MADV_FREE

    common parameters: try to keep these consistent across architectures free pages only if memory pressure

    MADV_HUGEPAGE

    Worth backing with hugepages

    MADV_HWPOISON

    poison a page for testing

    MADV_KEEPONFORK

    Undo MADV_WIPEONFORK

    MADV_MERGEABLE

    KSM may merge identical pages

    MADV_NOHUGEPAGE

    Not worth backing with hugepages

    MADV_NORMAL

    no further special treatment

    MADV_PAGEOUT

    reclaim these pages

    MADV_RANDOM

    expect random page references

    MADV_REMOVE

    remove these pages & resources

    MADV_SEQUENTIAL

    expect sequential page references

    MADV_SOFT_OFFLINE

    soft offline page for testing

    MADV_UNMERGEABLE

    KSM may not merge identical pages

    MADV_WILLNEED

    will need these pages

    MADV_WIPEONFORK

    Zero memory on fork, child only

    MAP_ANONYMOUS

    don't use a file

    MAP_DENYWRITE

    ETXTBSY

    MAP_EXECUTABLE

    mark it as an executable

    MAP_FILE

    compatibility flags

    MAP_FIXED

    Interpret addr exactly

    MAP_FIXED_NOREPLACE

    MAP_FIXED which doesn't unmap underlying mapping

    MAP_GROWSDOWN

    From uapi/asm-generic/mman.h stack-like segment

    MAP_HUGETLB

    create a huge page mapping

    MAP_HUGE_1GB
    MAP_HUGE_1MB
    MAP_HUGE_2GB
    MAP_HUGE_2MB
    MAP_HUGE_8MB
    MAP_HUGE_16GB
    MAP_HUGE_16MB
    MAP_HUGE_32MB
    MAP_HUGE_64KB
    MAP_HUGE_256MB
    MAP_HUGE_512KB
    MAP_HUGE_512MB
    MAP_HUGE_MASK
    MAP_HUGE_SHIFT

    Huge page size encoding when MAP_HUGETLB is specified, and a huge page size other than the default is desired. See hugetlb_encode.h. All known huge page size encodings are provided here. It is the responsibility of the application to know which sizes are supported on the running system. See mmap(2) man page for details.

    MAP_LOCKED

    pages are locked

    MAP_NONBLOCK

    do not block on IO

    MAP_NORESERVE

    don't check for reservations

    MAP_POPULATE

    0x0100 - 0x4000 flags are defined in asm-generic/mman.h populate (prefault) pagetables

    MAP_PRIVATE

    Changes are private

    MAP_SHARED

    Share changes

    MAP_SHARED_VALIDATE

    share + validate extension flags

    MAP_STACK

    give out an address that is best suited for process/thread stacks

    MAP_SYNC

    perform synchronous page faults for the mapping

    MAP_TYPE

    0x01 - 0x03 are defined in linux/mman.h Mask for type of mapping

    MAP_UNINITIALIZED

    For anonymous mmap, memory could be uninitialized

    MAXFREQ

    max frequency error (ns/s)

    MAXPHASE

    max phase error (ns)

    MAXQUOTAS
    MAXSEC

    max interval between updates (s)

    MAXTC

    maximum time constant (shift)

    MAX_BPF_ATTACH_TYPE
    MAX_BPF_REG

    BPF has 10 general purpose 64-bit registers and stack frame.

    MAX_CANON

    size of the canonical input queue

    MAX_CLOCKS
    MAX_INPUT

    size of the type-ahead buffer

    MCAST_BLOCK_SOURCE
    MCAST_EXCLUDE
    MCAST_INCLUDE
    MCAST_JOIN_GROUP
    MCAST_JOIN_SOURCE_GROUP
    MCAST_LEAVE_GROUP
    MCAST_LEAVE_SOURCE_GROUP
    MCAST_MSFILTER
    MCAST_UNBLOCK_SOURCE
    MCL_CURRENT

    lock all current mappings

    MCL_FUTURE

    lock all future mappings

    MCL_ONFAULT

    lock all pages that are faulted in

    MEMBARRIER_CMD_GLOBAL
    MEMBARRIER_CMD_GLOBAL_EXPEDITED
    MEMBARRIER_CMD_PRIVATE_EXPEDITED
    MEMBARRIER_CMD_PRIVATE_EXPEDITED_SYNC_CORE
    MEMBARRIER_CMD_QUERY

    enum membarrier_cmd - membarrier system call command @MEMBARRIER_CMD_QUERY: Query the set of supported commands. It returns a bitmask of valid commands. @MEMBARRIER_CMD_GLOBAL: Execute a memory barrier on all running threads. Upon return from system call, the caller thread is ensured that all running threads have passed through a state where all memory accesses to user-space addresses match program order between entry to and return from the system call (non-running threads are de facto in such a state). This covers threads from all processes running on the system. This command returns 0. @MEMBARRIER_CMD_GLOBAL_EXPEDITED: Execute a memory barrier on all running threads of all processes which previously registered with MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED. Upon return from system call, the caller thread is ensured that all running threads have passed through a state where all memory accesses to user-space addresses match program order between entry to and return from the system call (non-running threads are de facto in such a state). This only covers threads from processes which registered with MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED. This command returns 0. Given that registration is about the intent to receive the barriers, it is valid to invoke MEMBARRIER_CMD_GLOBAL_EXPEDITED from a non-registered process. @MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED: Register the process intent to receive MEMBARRIER_CMD_GLOBAL_EXPEDITED memory barriers. Always returns 0. @MEMBARRIER_CMD_PRIVATE_EXPEDITED: Execute a memory barrier on each running thread belonging to the same process as the current thread. Upon return from system call, the caller thread is ensured that all its running threads siblings have passed through a state where all memory accesses to user-space addresses match program order between entry to and return from the system call (non-running threads are de facto in such a state). This only covers threads from the same process as the caller thread. This command returns 0 on success. The "expedited" commands complete faster than the non-expedited ones, they never block, but have the downside of causing extra overhead. A process needs to register its intent to use the private expedited command prior to using it, otherwise this command returns -EPERM. @MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED: Register the process intent to use MEMBARRIER_CMD_PRIVATE_EXPEDITED. Always returns 0. @MEMBARRIER_CMD_PRIVATE_EXPEDITED_SYNC_CORE: In addition to provide memory ordering guarantees described in MEMBARRIER_CMD_PRIVATE_EXPEDITED, ensure the caller thread, upon return from system call, that all its running threads siblings have executed a core serializing instruction. (architectures are required to guarantee that non-running threads issue core serializing instructions before they resume user-space execution). This only covers threads from the same process as the caller thread. This command returns 0 on success. The "expedited" commands complete faster than the non-expedited ones, they never block, but have the downside of causing extra overhead. If this command is not implemented by an architecture, -EINVAL is returned. A process needs to register its intent to use the private expedited sync core command prior to using it, otherwise this command returns -EPERM. @MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_SYNC_CORE: Register the process intent to use MEMBARRIER_CMD_PRIVATE_EXPEDITED_SYNC_CORE. If this command is not implemented by an architecture, -EINVAL is returned. Returns 0 on success. @MEMBARRIER_CMD_SHARED: Alias to MEMBARRIER_CMD_GLOBAL. Provided for header backward compatibility.

    MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED
    MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED
    MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_SYNC_CORE
    MEMBARRIER_CMD_SHARED

    Alias for header backward compatibility.

    MFD_ALLOW_SEALING
    MFD_CLOEXEC

    flags for memfd_create(2) (unsigned int)

    MFD_HUGETLB
    MFD_HUGE_1GB
    MFD_HUGE_1MB
    MFD_HUGE_2GB
    MFD_HUGE_2MB
    MFD_HUGE_8MB
    MFD_HUGE_16GB
    MFD_HUGE_16MB
    MFD_HUGE_32MB
    MFD_HUGE_64KB
    MFD_HUGE_256MB
    MFD_HUGE_512KB
    MFD_HUGE_512MB
    MFD_HUGE_MASK
    MFD_HUGE_SHIFT

    Huge page size encoding when MFD_HUGETLB is specified, and a huge page size other than the default is desired. See hugetlb_encode.h. All known huge page size encodings are provided here. It is the responsibility of the application to know which sizes are supported on the running system. See mmap(2) man page for details.

    MINSEC

    min interval between updates (s)

    MINSIGSTKSZ
    MLOCK_ONFAULT

    Flags for mlock Lock pages in range after they are faulted in, do not prefault

    MMAP_PAGE_ZERO
    MNT_NS_INDEX
    MODIFY_LDT_CONTENTS_CODE
    MODIFY_LDT_CONTENTS_DATA
    MODIFY_LDT_CONTENTS_STACK
    MOD_ESTERROR
    MOD_FREQUENCY
    MOD_MAXERROR
    MOD_MICRO
    MOD_NANO
    MOD_OFFSET

    NTP userland likes the MOD_ prefix better

    MOD_STATUS
    MOD_TAI
    MOD_TIMECONST
    MPOL_BIND
    MPOL_DEFAULT

    NUMA memory policies for Linux. Both the MPOL_* mempolicy mode and the MPOL_F_* optional mode flags are passed by the user to either set_mempolicy() or mbind() in an 'int' actual. The MPOL_MODE_FLAGS macro determines the legal set of optional mode flags. Policies

    MPOL_F_ADDR

    look up vma using address

    MPOL_F_LOCAL

    preferred local allocation

    MPOL_F_MEMS_ALLOWED

    return allowed memories

    MPOL_F_MOF

    this policy wants migrate on fault

    MPOL_F_MORON

    Migrate On protnone Reference On Node

    MPOL_F_NODE

    Flags for get_mempolicy return next IL mode instead of node mask

    MPOL_F_RELATIVE_NODES
    MPOL_F_SHARED

    Internal flags that share the struct mempolicy flags word with "mode flags". These flags are allocated from bit 0 up, as they are never OR'ed into the mode in mempolicy API arguments. identify shared policies

    MPOL_F_STATIC_NODES

    Flags for set_mempolicy

    MPOL_INTERLEAVE
    MPOL_LOCAL
    MPOL_MAX

    always last member of enum

    MPOL_MF_INTERNAL

    Internal flags start here

    MPOL_MF_LAZY

    Modifies '_MOVE: lazy migrate on fault

    MPOL_MF_MOVE

    Move pages owned by this process to conform to policy

    MPOL_MF_MOVE_ALL

    Move every page to conform to policy

    MPOL_MF_STRICT

    Flags for mbind Verify existing pages in the mapping

    MPOL_MF_VALID
    MPOL_MODE_FLAGS

    MPOL_MODE_FLAGS is the union of all possible optional mode flags passed to either set_mempolicy() or mbind().

    MPOL_PREFERRED
    MQ_BYTES_MAX

    per-uid limit of kernel memory used by mqueue, in bytes

    MQ_PRIO_MAX
    MREMAP_DONTUNMAP
    MREMAP_FIXED
    MREMAP_MAYMOVE

    From uapi/linux/mman.h

    MSEC_PER_SEC

    Parameters used to convert the timespec values:

    MSGCTL
    MSGGET
    MSGMAP

    number of entries in message map

    MSGMAX

    <= INT_MAX, max size of message (bytes)

    MSGMNB

    <= INT_MAX, default max size of a message queue

    MSGMNI

    MSGMNI, MSGMAX and MSGMNB are default values which can be modified by sysctl.

    MSGPOOL

    unused

    MSGRCV
    MSGSEG

    max no. of segments

    MSGSND
    MSGSSZ

    message segment size

    MSGTQL

    number of system message headers

    MSG_BATCH

    sendmmsg(): more messages coming

    MSG_CMSG_CLOEXEC

    Set close_on_exec for file descriptor received through SCM_RIGHTS

    MSG_CMSG_COMPAT

    We never have 32 bit fixups

    MSG_CONFIRM

    Confirm path validity

    MSG_COPY

    copy (not remove) all queue messages

    MSG_CTRUNC
    MSG_DONTROUTE
    MSG_DONTWAIT

    Nonblocking io

    MSG_EOF
    MSG_EOR

    End of record

    MSG_ERRQUEUE

    Fetch message from error queue

    MSG_EXCEPT

    recv any msg except of specified type.

    MSG_FASTOPEN

    Send data in TCP SYN

    MSG_FIN
    MSG_INFO
    MSG_MORE

    Sender will send more

    MSG_NOERROR

    msgrcv options no error if message is too big

    MSG_NOSIGNAL

    Do not generate SIGPIPE

    MSG_NO_SHARED_FRAGS

    sendpage() internal : page frags are not shared

    MSG_OOB

    Flags we can use with send/ and recv. Added those for 1003.1g not all are supported yet

    MSG_PEEK
    MSG_PROBE

    Do not send. Only probe path f.e. for MTU

    MSG_RST
    MSG_SENDPAGE_DECRYPTED

    sendpage() internal : page may carry plain text and require encryption

    MSG_SENDPAGE_NOPOLICY

    sendpage() internal : do no apply policy

    MSG_SENDPAGE_NOTLAST

    sendpage() internal : not the last page

    MSG_STAT

    ipcs ctl commands

    MSG_STAT_ANY
    MSG_SYN
    MSG_TRUNC
    MSG_TRYHARD

    Synonym for MSG_DONTROUTE for DECnet

    MSG_WAITALL

    Wait for a full request

    MSG_WAITFORONE

    recvmmsg(): block until 1+ packets avail

    MSG_ZEROCOPY

    Use user data in kernel path

    MS_ACTIVE
    MS_ASYNC

    sync memory asynchronously

    MS_BIND
    MS_BORN
    MS_DIRSYNC

    Directory modifications are synchronous

    MS_INVALIDATE

    invalidate the caches

    MS_I_VERSION

    Update inode I_version field

    MS_KERNMOUNT

    this is a kern_mount call

    MS_LAZYTIME

    Update the on-disk [acm]times lazily

    MS_MANDLOCK

    Allow mandatory locks on an FS

    MS_MGC_MSK
    MS_MGC_VAL

    Old magic mount flag and mask

    MS_MOVE
    MS_NOATIME

    Do not update access times.

    MS_NODEV

    Disallow access to device special files

    MS_NODIRATIME

    Do not update directory access times

    MS_NOEXEC

    Disallow program execution

    MS_NOREMOTELOCK
    MS_NOSEC
    MS_NOSUID

    Ignore suid and sgid bits

    MS_NOUSER
    MS_POSIXACL

    VFS does not apply the umask

    MS_PRIVATE

    change to private

    MS_RDONLY

    These are the fs-independent mount-flags: up to 32 flags are supported

    MS_REC
    MS_RELATIME

    Update atime relative to mtime/ctime.

    MS_REMOUNT

    Alter flags of a mounted FS

    MS_RMT_MASK

    Superblock flags that can be altered by MS_REMOUNT

    MS_SHARED

    change to shared

    MS_SILENT
    MS_SLAVE

    change to slave

    MS_STRICTATIME

    Always perform atime updates

    MS_SUBMOUNT

    These sb flags are internal to the kernel

    MS_SYNC

    synchronous memory sync

    MS_SYNCHRONOUS

    Writes are synced at once

    MS_UNBINDABLE

    change to unbindable

    MS_VERBOSE

    MS_VERBOSE is deprecated.

    NAME_MAX

    chars in a file name

    NCC
    NCCS
    NET_802
    NET_ATALK
    NET_ATALK_AARP_EXPIRY_TIME

    /proc/sys/net/appletalk

    NET_ATALK_AARP_RESOLVE_TIME
    NET_ATALK_AARP_RETRANSMIT_LIMIT
    NET_ATALK_AARP_TICK_TIME
    NET_AX25
    NET_AX25_BACKOFF_TYPE
    NET_AX25_CONNECT_MODE
    NET_AX25_DAMA_SLAVE_TIMEOUT
    NET_AX25_DEFAULT_MODE
    NET_AX25_EXTENDED_WINDOW
    NET_AX25_IDLE_TIMEOUT
    NET_AX25_IP_DEFAULT_MODE

    /proc/sys/net/ax25

    NET_AX25_N2
    NET_AX25_PACLEN
    NET_AX25_PROTOCOL
    NET_AX25_STANDARD_WINDOW
    NET_AX25_T1_TIMEOUT
    NET_AX25_T2_TIMEOUT
    NET_AX25_T3_TIMEOUT
    NET_BRIDGE
    NET_BRIDGE_NF_CALL_ARPTABLES

    /proc/sys/net/bridge

    NET_BRIDGE_NF_CALL_IP6TABLES
    NET_BRIDGE_NF_CALL_IPTABLES
    NET_BRIDGE_NF_FILTER_PPPOE_TAGGED
    NET_BRIDGE_NF_FILTER_VLAN_TAGGED
    NET_CIPSOV4_CACHE_BUCKET_SIZE
    NET_CIPSOV4_CACHE_ENABLE
    NET_CIPSOV4_RBM_OPTFMT
    NET_CIPSOV4_RBM_STRICTVALID
    NET_CORE

    CTL_NET names:

    NET_CORE_AEVENT_ETIME
    NET_CORE_AEVENT_RSEQTH
    NET_CORE_BUDGET
    NET_CORE_DEV_WEIGHT
    NET_CORE_DIVERT_VERSION
    NET_CORE_FASTROUTE
    NET_CORE_HOT_LIST_LENGTH
    NET_CORE_LO_CONG
    NET_CORE_MAX_BACKLOG

    was NET_CORE_DESTROY_DELAY

    NET_CORE_MOD_CONG
    NET_CORE_MSG_BURST
    NET_CORE_MSG_COST
    NET_CORE_NO_CONG
    NET_CORE_NO_CONG_THRESH
    NET_CORE_OPTMEM_MAX
    NET_CORE_RMEM_DEFAULT
    NET_CORE_RMEM_MAX
    NET_CORE_SOMAXCONN
    NET_CORE_WARNINGS
    NET_CORE_WMEM_DEFAULT
    NET_CORE_WMEM_MAX

    /proc/sys/net/core

    NET_DCCP
    NET_DCCP_DEFAULT

    /proc/sys/net/dccp

    NET_DECNET
    NET_DECNET_CONF
    NET_DECNET_CONF_DDCMP
    NET_DECNET_CONF_DEV_BLKSIZE
    NET_DECNET_CONF_DEV_FORWARDING
    NET_DECNET_CONF_DEV_PRIORITY

    /proc/sys/net/decnet/conf//

    NET_DECNET_CONF_DEV_STATE
    NET_DECNET_CONF_DEV_T1
    NET_DECNET_CONF_DEV_T2
    NET_DECNET_CONF_DEV_T3
    NET_DECNET_CONF_ETHER
    NET_DECNET_CONF_GRE
    NET_DECNET_CONF_LOOPBACK

    /proc/sys/net/decnet/conf/

    NET_DECNET_CONF_PPP
    NET_DECNET_CONF_X25
    NET_DECNET_DEBUG_LEVEL
    NET_DECNET_DEFAULT_DEVICE
    NET_DECNET_DI_COUNT
    NET_DECNET_DN_COUNT
    NET_DECNET_DR_COUNT
    NET_DECNET_DST_GC_INTERVAL
    NET_DECNET_MEM
    NET_DECNET_NODE_ADDRESS
    NET_DECNET_NODE_NAME
    NET_DECNET_NODE_TYPE

    /proc/sys/net/decnet/

    NET_DECNET_NO_FC_MAX_CWND
    NET_DECNET_RMEM
    NET_DECNET_TIME_WAIT
    NET_DECNET_WMEM
    NET_ECONET
    NET_ETHER
    NET_IPV4
    NET_IPV4_ALWAYS_DEFRAG
    NET_IPV4_AUTOCONFIG
    NET_IPV4_CONF
    NET_IPV4_CONF_ACCEPT_REDIRECTS
    NET_IPV4_CONF_ACCEPT_SOURCE_ROUTE
    NET_IPV4_CONF_ARPFILTER
    NET_IPV4_CONF_ARP_ACCEPT
    NET_IPV4_CONF_ARP_ANNOUNCE
    NET_IPV4_CONF_ARP_IGNORE
    NET_IPV4_CONF_ARP_NOTIFY
    NET_IPV4_CONF_BOOTP_RELAY
    NET_IPV4_CONF_FORCE_IGMP_VERSION
    NET_IPV4_CONF_FORWARDING
    NET_IPV4_CONF_LOG_MARTIANS
    NET_IPV4_CONF_MC_FORWARDING
    NET_IPV4_CONF_MEDIUM_ID
    NET_IPV4_CONF_NOPOLICY
    NET_IPV4_CONF_NOXFRM
    NET_IPV4_CONF_PROMOTE_SECONDARIES
    NET_IPV4_CONF_PROXY_ARP
    NET_IPV4_CONF_RP_FILTER
    NET_IPV4_CONF_SECURE_REDIRECTS
    NET_IPV4_CONF_SEND_REDIRECTS
    NET_IPV4_CONF_SHARED_MEDIA
    NET_IPV4_CONF_TAG
    NET_IPV4_DEFAULT_TTL
    NET_IPV4_DYNADDR
    NET_IPV4_FIB_HASH
    NET_IPV4_FORWARD

    /proc/sys/net/ipv4 v2.0 compatibile variables

    NET_IPV4_ICMP_DESTUNREACH_RATE
    NET_IPV4_ICMP_ECHOREPLY_RATE
    NET_IPV4_ICMP_ECHO_IGNORE_ALL
    NET_IPV4_ICMP_ECHO_IGNORE_BROADCASTS
    NET_IPV4_ICMP_ERRORS_USE_INBOUND_IFADDR
    NET_IPV4_ICMP_IGNORE_BOGUS_ERROR_RESPONSES
    NET_IPV4_ICMP_PARAMPROB_RATE
    NET_IPV4_ICMP_RATELIMIT
    NET_IPV4_ICMP_RATEMASK
    NET_IPV4_ICMP_SOURCEQUENCH_RATE
    NET_IPV4_ICMP_TIMEEXCEED_RATE
    NET_IPV4_IGMP_MAX_MEMBERSHIPS
    NET_IPV4_IGMP_MAX_MSF
    NET_IPV4_INET_PEER_GC_MAXTIME
    NET_IPV4_INET_PEER_GC_MINTIME
    NET_IPV4_INET_PEER_MAXTTL
    NET_IPV4_INET_PEER_MINTTL
    NET_IPV4_INET_PEER_THRESHOLD
    NET_IPV4_IPFRAG_HIGH_THRESH
    NET_IPV4_IPFRAG_LOW_THRESH
    NET_IPV4_IPFRAG_MAX_DIST
    NET_IPV4_IPFRAG_SECRET_INTERVAL
    NET_IPV4_IPFRAG_TIME
    NET_IPV4_IP_MASQ_DEBUG
    NET_IPV4_LOCAL_PORT_RANGE
    NET_IPV4_NEIGH
    NET_IPV4_NETFILTER
    NET_IPV4_NF_CONNTRACK_BUCKETS
    NET_IPV4_NF_CONNTRACK_CHECKSUM
    NET_IPV4_NF_CONNTRACK_COUNT
    NET_IPV4_NF_CONNTRACK_GENERIC_TIMEOUT
    NET_IPV4_NF_CONNTRACK_ICMP_TIMEOUT
    NET_IPV4_NF_CONNTRACK_LOG_INVALID
    NET_IPV4_NF_CONNTRACK_MAX

    /proc/sys/net/ipv4/netfilter

    NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_CLOSED
    NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_COOKIE_ECHOED
    NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_COOKIE_WAIT
    NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_ESTABLISHED
    NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_ACK_SENT
    NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_RECD
    NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_SENT
    NET_IPV4_NF_CONNTRACK_TCP_BE_LIBERAL
    NET_IPV4_NF_CONNTRACK_TCP_LOOSE
    NET_IPV4_NF_CONNTRACK_TCP_MAX_RETRANS
    NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_CLOSE
    NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_CLOSE_WAIT
    NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_ESTABLISHED
    NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_FIN_WAIT
    NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_LAST_ACK
    NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_MAX_RETRANS
    NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_SYN_RECV
    NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_SYN_SENT
    NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_TIME_WAIT
    NET_IPV4_NF_CONNTRACK_UDP_TIMEOUT
    NET_IPV4_NF_CONNTRACK_UDP_TIMEOUT_STREAM
    NET_IPV4_NONLOCAL_BIND
    NET_IPV4_NO_PMTU_DISC
    NET_IPV4_ROUTE
    NET_IPV4_ROUTE_ERROR_BURST
    NET_IPV4_ROUTE_ERROR_COST
    NET_IPV4_ROUTE_FLUSH
    NET_IPV4_ROUTE_GC_ELASTICITY
    NET_IPV4_ROUTE_GC_INTERVAL

    obsolete since 2.6.38

    NET_IPV4_ROUTE_GC_MIN_INTERVAL
    NET_IPV4_ROUTE_GC_MIN_INTERVAL_MS
    NET_IPV4_ROUTE_GC_THRESH
    NET_IPV4_ROUTE_GC_TIMEOUT
    NET_IPV4_ROUTE_MAX_DELAY

    obsolete since 2.6.25

    NET_IPV4_ROUTE_MAX_SIZE
    NET_IPV4_ROUTE_MIN_ADVMSS
    NET_IPV4_ROUTE_MIN_DELAY

    obsolete since 2.6.25

    NET_IPV4_ROUTE_MIN_PMTU
    NET_IPV4_ROUTE_MTU_EXPIRES
    NET_IPV4_ROUTE_REDIRECT_LOAD
    NET_IPV4_ROUTE_REDIRECT_NUMBER
    NET_IPV4_ROUTE_REDIRECT_SILENCE
    NET_IPV4_ROUTE_SECRET_INTERVAL
    NET_IPV4_TCP_FIN_TIMEOUT
    NET_IPV4_TCP_KEEPALIVE_INTVL
    NET_IPV4_TCP_KEEPALIVE_PROBES
    NET_IPV4_TCP_KEEPALIVE_TIME
    NET_IPV4_TCP_MAX_KA_PROBES
    NET_IPV4_TCP_RETRANS_COLLAPSE
    NET_IPV4_TCP_RETRIES1
    NET_IPV4_TCP_RETRIES2
    NET_IPV4_TCP_SACK
    NET_IPV4_TCP_SYN_RETRIES
    NET_IPV4_TCP_TIMESTAMPS
    NET_IPV4_TCP_WINDOW_SCALING
    NET_IPV4_TCP_WORKAROUND_SIGNED_WINDOWS
    NET_IPV6
    NET_IPV6_ACCEPT_RA
    NET_IPV6_ACCEPT_RA_DEFRTR
    NET_IPV6_ACCEPT_RA_FROM_LOCAL
    NET_IPV6_ACCEPT_RA_PINFO
    NET_IPV6_ACCEPT_RA_RTR_PREF
    NET_IPV6_ACCEPT_RA_RT_INFO_MAX_PLEN
    NET_IPV6_ACCEPT_RA_RT_INFO_MIN_PLEN
    NET_IPV6_ACCEPT_REDIRECTS
    NET_IPV6_ACCEPT_SOURCE_ROUTE
    NET_IPV6_AUTOCONF
    NET_IPV6_BINDV6ONLY
    NET_IPV6_CONF

    /proc/sys/net/ipv6

    NET_IPV6_DAD_TRANSMITS
    NET_IPV6_FORCE_MLD_VERSION
    NET_IPV6_FORWARDING
    NET_IPV6_HOP_LIMIT
    NET_IPV6_ICMP
    NET_IPV6_ICMP_ECHO_IGNORE_ALL
    NET_IPV6_ICMP_RATELIMIT

    /proc/sys/net/ipv6/icmp

    NET_IPV6_IP6FRAG_HIGH_THRESH
    NET_IPV6_IP6FRAG_LOW_THRESH
    NET_IPV6_IP6FRAG_SECRET_INTERVAL
    NET_IPV6_IP6FRAG_TIME
    NET_IPV6_MAX
    NET_IPV6_MAX_ADDRESSES
    NET_IPV6_MAX_DESYNC_FACTOR
    NET_IPV6_MLD_MAX_MSF
    NET_IPV6_MTU
    NET_IPV6_NEIGH
    NET_IPV6_PROXY_NDP
    NET_IPV6_REGEN_MAX_RETRY
    NET_IPV6_ROUTE
    NET_IPV6_ROUTE_FLUSH
    NET_IPV6_ROUTE_GC_ELASTICITY
    NET_IPV6_ROUTE_GC_INTERVAL
    NET_IPV6_ROUTE_GC_MIN_INTERVAL
    NET_IPV6_ROUTE_GC_MIN_INTERVAL_MS
    NET_IPV6_ROUTE_GC_THRESH
    NET_IPV6_ROUTE_GC_TIMEOUT
    NET_IPV6_ROUTE_MAX_SIZE
    NET_IPV6_ROUTE_MIN_ADVMSS
    NET_IPV6_ROUTE_MTU_EXPIRES
    NET_IPV6_RTR_PROBE_INTERVAL
    NET_IPV6_RTR_SOLICITS
    NET_IPV6_RTR_SOLICIT_DELAY
    NET_IPV6_RTR_SOLICIT_INTERVAL
    NET_IPV6_TEMP_PREFERED_LFT
    NET_IPV6_TEMP_VALID_LFT
    NET_IPV6_USE_TEMPADDR
    NET_IPX
    NET_IPX_FORWARDING
    NET_IPX_PPROP_BROADCASTING

    /proc/sys/net/ipx

    NET_IRDA
    NET_LLC
    NET_LLC2

    /proc/sys/net/llc

    NET_LLC2_ACK_TIMEOUT

    /proc/sys/net/llc/llc2/timeout

    NET_LLC2_BUSY_TIMEOUT
    NET_LLC2_P_TIMEOUT
    NET_LLC2_REJ_TIMEOUT
    NET_LLC2_TIMEOUT

    /proc/sys/net/llc/llc2

    NET_LLC_STATION
    NET_LLC_STATION_ACK_TIMEOUT

    /proc/sys/net/llc/station

    NET_NEIGH_ANYCAST_DELAY
    NET_NEIGH_APP_SOLICIT
    NET_NEIGH_DELAY_PROBE_TIME
    NET_NEIGH_GC_INTERVAL
    NET_NEIGH_GC_STALE_TIME
    NET_NEIGH_GC_THRESH1
    NET_NEIGH_GC_THRESH2
    NET_NEIGH_GC_THRESH3
    NET_NEIGH_LOCKTIME
    NET_NEIGH_MCAST_SOLICIT

    /proc/sys/net//neigh/

    NET_NEIGH_PROXY_DELAY
    NET_NEIGH_PROXY_QLEN
    NET_NEIGH_REACHABLE_TIME
    NET_NEIGH_REACHABLE_TIME_MS
    NET_NEIGH_RETRANS_TIME
    NET_NEIGH_RETRANS_TIME_MS
    NET_NEIGH_UCAST_SOLICIT
    NET_NEIGH_UNRES_QLEN
    NET_NETFILTER
    NET_NETROM
    NET_NETROM_DEFAULT_PATH_QUALITY

    /proc/sys/net/netrom

    NET_NETROM_LINK_FAILS_COUNT
    NET_NETROM_NETWORK_TTL_INITIALISER
    NET_NETROM_OBSOLESCENCE_COUNT_INITIALISER
    NET_NETROM_RESET
    NET_NETROM_ROUTING_CONTROL
    NET_NETROM_TRANSPORT_ACKNOWLEDGE_DELAY
    NET_NETROM_TRANSPORT_BUSY_DELAY
    NET_NETROM_TRANSPORT_MAXIMUM_TRIES
    NET_NETROM_TRANSPORT_NO_ACTIVITY_TIMEOUT
    NET_NETROM_TRANSPORT_REQUESTED_WINDOW_SIZE
    NET_NETROM_TRANSPORT_TIMEOUT
    NET_NF_CONNTRACK_BUCKETS
    NET_NF_CONNTRACK_CHECKSUM
    NET_NF_CONNTRACK_COUNT
    NET_NF_CONNTRACK_FRAG6_HIGH_THRESH
    NET_NF_CONNTRACK_FRAG6_LOW_THRESH
    NET_NF_CONNTRACK_FRAG6_TIMEOUT
    NET_NF_CONNTRACK_GENERIC_TIMEOUT
    NET_NF_CONNTRACK_ICMPV6_TIMEOUT
    NET_NF_CONNTRACK_ICMP_TIMEOUT
    NET_NF_CONNTRACK_LOG_INVALID
    NET_NF_CONNTRACK_MAX

    /proc/sys/net/netfilter

    NET_NF_CONNTRACK_SCTP_TIMEOUT_CLOSED
    NET_NF_CONNTRACK_SCTP_TIMEOUT_COOKIE_ECHOED
    NET_NF_CONNTRACK_SCTP_TIMEOUT_COOKIE_WAIT
    NET_NF_CONNTRACK_SCTP_TIMEOUT_ESTABLISHED
    NET_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_ACK_SENT
    NET_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_RECD
    NET_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_SENT
    NET_NF_CONNTRACK_TCP_BE_LIBERAL
    NET_NF_CONNTRACK_TCP_LOOSE
    NET_NF_CONNTRACK_TCP_MAX_RETRANS
    NET_NF_CONNTRACK_TCP_TIMEOUT_CLOSE
    NET_NF_CONNTRACK_TCP_TIMEOUT_CLOSE_WAIT
    NET_NF_CONNTRACK_TCP_TIMEOUT_ESTABLISHED
    NET_NF_CONNTRACK_TCP_TIMEOUT_FIN_WAIT
    NET_NF_CONNTRACK_TCP_TIMEOUT_LAST_ACK
    NET_NF_CONNTRACK_TCP_TIMEOUT_MAX_RETRANS
    NET_NF_CONNTRACK_TCP_TIMEOUT_SYN_RECV
    NET_NF_CONNTRACK_TCP_TIMEOUT_SYN_SENT
    NET_NF_CONNTRACK_TCP_TIMEOUT_TIME_WAIT
    NET_NF_CONNTRACK_UDP_TIMEOUT
    NET_NF_CONNTRACK_UDP_TIMEOUT_STREAM
    NET_NS_INDEX
    NET_PROTO_CONF_ALL
    NET_PROTO_CONF_DEFAULT
    NET_ROSE
    NET_ROSE_ACK_HOLD_BACK_TIMEOUT
    NET_ROSE_CALL_REQUEST_TIMEOUT
    NET_ROSE_CLEAR_REQUEST_TIMEOUT
    NET_ROSE_LINK_FAIL_TIMEOUT
    NET_ROSE_MAX_VCS
    NET_ROSE_NO_ACTIVITY_TIMEOUT
    NET_ROSE_RESET_REQUEST_TIMEOUT
    NET_ROSE_RESTART_REQUEST_TIMEOUT

    /proc/sys/net/rose

    NET_ROSE_ROUTING_CONTROL
    NET_ROSE_WINDOW_SIZE
    NET_SCTP
    NET_SCTP_ADDIP_ENABLE
    NET_SCTP_ASSOCIATION_MAX_RETRANS
    NET_SCTP_HB_INTERVAL
    NET_SCTP_MAX_BURST
    NET_SCTP_MAX_INIT_RETRANSMITS
    NET_SCTP_PATH_MAX_RETRANS
    NET_SCTP_PRESERVE_ENABLE
    NET_SCTP_PRSCTP_ENABLE
    NET_SCTP_RCVBUF_POLICY
    NET_SCTP_RTO_ALPHA
    NET_SCTP_RTO_BETA
    NET_SCTP_RTO_INITIAL

    /proc/sys/net/sctp

    NET_SCTP_RTO_MAX
    NET_SCTP_RTO_MIN
    NET_SCTP_SACK_TIMEOUT
    NET_SCTP_SNDBUF_POLICY
    NET_SCTP_VALID_COOKIE_LIFE
    NET_TCP_ABC
    NET_TCP_ABORT_ON_OVERFLOW
    NET_TCP_ADV_WIN_SCALE
    NET_TCP_ALLOWED_CONG_CONTROL
    NET_TCP_APP_WIN
    NET_TCP_AVAIL_CONG_CONTROL
    NET_TCP_BASE_MSS
    NET_TCP_BIC_BETA
    NET_TCP_CONG_CONTROL
    NET_TCP_DEFAULT_WIN_SCALE
    NET_TCP_DMA_COPYBREAK
    NET_TCP_DSACK
    NET_TCP_ECN
    NET_TCP_FACK
    NET_TCP_FRTO
    NET_TCP_FRTO_RESPONSE
    NET_TCP_LOW_LATENCY
    NET_TCP_MAX_ORPHANS
    NET_TCP_MAX_SSTHRESH
    NET_TCP_MAX_SYN_BACKLOG
    NET_TCP_MAX_TW_BUCKETS
    NET_TCP_MEM
    NET_TCP_MODERATE_RCVBUF
    NET_TCP_MTU_PROBING
    NET_TCP_NO_METRICS_SAVE
    NET_TCP_ORPHAN_RETRIES
    NET_TCP_REORDERING
    NET_TCP_RFC1337
    NET_TCP_RMEM
    NET_TCP_SLOW_START_AFTER_IDLE
    NET_TCP_STDURG
    NET_TCP_SYNACK_RETRIES
    NET_TCP_SYNCOOKIES
    NET_TCP_SYN_TAILDROP
    NET_TCP_TSO_WIN_DIVISOR
    NET_TCP_TW_RECYCLE
    NET_TCP_TW_REUSE
    NET_TCP_WMEM
    NET_TR
    NET_TR_RIF_TIMEOUT

    /proc/sys/net/token-ring

    NET_UNIX
    NET_UNIX_DELETE_DELAY
    NET_UNIX_DESTROY_DELAY

    /proc/sys/net/ethernet /proc/sys/net/802 /proc/sys/net/unix

    NET_UNIX_MAX_DGRAM_QLEN
    NET_X25
    NET_X25_ACK_HOLD_BACK_TIMEOUT
    NET_X25_CALL_REQUEST_TIMEOUT
    NET_X25_CLEAR_REQUEST_TIMEOUT
    NET_X25_FORWARD
    NET_X25_RESET_REQUEST_TIMEOUT
    NET_X25_RESTART_REQUEST_TIMEOUT

    /proc/sys/net/x25

    NGROUPS_MAX

    supplemental group IDs are available

    NL0
    NL1
    NLDLY
    NOFLSH
    NOTIFY_COOKIE_LEN
    NOTIFY_NONE

    SIGEV_THREAD implementation: SIGEV_THREAD must be implemented in user space. If SIGEV_THREAD is passed to mq_notify, then

    NOTIFY_REMOVED
    NOTIFY_WOKENUP
    NPROTO

    NET: An implementation of the SOCKET network access protocol. This is the master header file for the Linux NET layer, or, in plain English: the networking handling part of the kernel.

    NR_FILE
    NR_NAMESPACES

    number of available namespaces

    NR_OPEN
    NSEC_PER_MSEC
    NSEC_PER_SEC
    NSEC_PER_USEC
    NSIGBUS
    NSIGCHLD
    NSIGEMT
    NSIGFPE
    NSIGILL
    NSIGPOLL
    NSIGSEGV
    NSIGSYS
    NSIGTRAP
    NTP_API

    NTP API version

    NTP_SCALE_SHIFT
    OCRNL
    OFDEL
    OFILL
    OLCUC
    ONLCR
    ONLRET
    ONOCR
    OPOST

    c_oflag bits

    OVERCOMMIT_ALWAYS
    OVERCOMMIT_GUESS
    OVERCOMMIT_NEVER
    O_ACCMODE
    O_APPEND
    O_CLOEXEC

    set close_on_exec

    O_CREAT

    not fcntl

    O_DIRECT

    direct disk access hint

    O_DIRECTORY

    must be a directory

    O_DSYNC

    used to be O_SYNC, see below

    O_EXCL

    not fcntl

    O_LARGEFILE
    O_NDELAY
    O_NOATIME
    O_NOCTTY

    not fcntl

    O_NOFOLLOW

    don't follow links

    O_NONBLOCK
    O_PATH
    O_RDONLY
    O_RDWR
    O_SYNC
    O_TMPFILE

    a horrid kludge trying to make sure that this will fail on old kernels

    O_TMPFILE_MASK
    O_TRUNC

    not fcntl

    O_WRONLY
    PAGE_MASK
    PAGE_OFFSET
    PAGE_SHIFT

    Generic page.h implementation, for NOMMU architectures. This provides the dummy definitions for the memory management. PAGE_SHIFT determines the page size

    PAGE_SIZE
    PARENB
    PARMRK
    PARODD
    PATH_MAX

    chars in a path name including nul

    PENDIN
    PERF_ATTR_SIZE_VER0

    sizeof first published struct

    PERF_ATTR_SIZE_VER1

    add: config2

    PERF_ATTR_SIZE_VER2

    add: branch_sample_type

    PERF_ATTR_SIZE_VER3

    add: sample_regs_user add: sample_stack_user

    PERF_ATTR_SIZE_VER4

    add: sample_regs_intr

    PERF_ATTR_SIZE_VER5

    add: aux_watermark

    PERF_AUX_FLAG_COLLISION

    sample collided with another

    PERF_AUX_FLAG_OVERWRITE

    snapshot from overwrite mode

    PERF_AUX_FLAG_PARTIAL

    record contains gaps

    PERF_AUX_FLAG_TRUNCATED

    PERF_RECORD_AUX::flags bits record was truncated to fit

    PERF_BR_CALL

    function call

    PERF_BR_COND

    conditional

    PERF_BR_COND_CALL

    conditional function call

    PERF_BR_COND_RET

    conditional function return

    PERF_BR_IND

    indirect

    PERF_BR_IND_CALL

    indirect function call

    PERF_BR_MAX
    PERF_BR_RET

    function return

    PERF_BR_SYSCALL

    syscall

    PERF_BR_SYSRET

    syscall return

    PERF_BR_UNCOND

    unconditional

    PERF_BR_UNKNOWN

    Common flow change classification unknown

    PERF_CONTEXT_GUEST
    PERF_CONTEXT_GUEST_KERNEL
    PERF_CONTEXT_GUEST_USER
    PERF_CONTEXT_HV

    enum perf_callchain_context:

    PERF_CONTEXT_KERNEL
    PERF_CONTEXT_MAX
    PERF_CONTEXT_USER
    PERF_COUNT_HW_BRANCH_INSTRUCTIONS
    PERF_COUNT_HW_BRANCH_MISSES
    PERF_COUNT_HW_BUS_CYCLES
    PERF_COUNT_HW_CACHE_BPU
    PERF_COUNT_HW_CACHE_DTLB
    PERF_COUNT_HW_CACHE_ITLB
    PERF_COUNT_HW_CACHE_L1D

    Generalized hardware cache events:

    PERF_COUNT_HW_CACHE_L1I
    PERF_COUNT_HW_CACHE_LL
    PERF_COUNT_HW_CACHE_MAX

    non-ABI

    PERF_COUNT_HW_CACHE_MISSES
    PERF_COUNT_HW_CACHE_NODE
    PERF_COUNT_HW_CACHE_OP_MAX

    non-ABI

    PERF_COUNT_HW_CACHE_OP_PREFETCH
    PERF_COUNT_HW_CACHE_OP_READ
    PERF_COUNT_HW_CACHE_OP_WRITE
    PERF_COUNT_HW_CACHE_REFERENCES
    PERF_COUNT_HW_CACHE_RESULT_ACCESS
    PERF_COUNT_HW_CACHE_RESULT_MAX

    non-ABI

    PERF_COUNT_HW_CACHE_RESULT_MISS
    PERF_COUNT_HW_CPU_CYCLES

    Generalized performance event event_id types, used by the attr.event_id parameter of the sys_perf_event_open() syscall: Common hardware events, generalized by the kernel:

    PERF_COUNT_HW_INSTRUCTIONS
    PERF_COUNT_HW_MAX

    non-ABI

    PERF_COUNT_HW_REF_CPU_CYCLES
    PERF_COUNT_HW_STALLED_CYCLES_BACKEND
    PERF_COUNT_HW_STALLED_CYCLES_FRONTEND
    PERF_COUNT_SW_ALIGNMENT_FAULTS
    PERF_COUNT_SW_BPF_OUTPUT
    PERF_COUNT_SW_CONTEXT_SWITCHES
    PERF_COUNT_SW_CPU_CLOCK

    Special "software" events provided by the kernel, even if the hardware does not support performance events. These events measure various physical and sw events of the kernel (and allow the profiling of them as well):

    PERF_COUNT_SW_CPU_MIGRATIONS
    PERF_COUNT_SW_DUMMY
    PERF_COUNT_SW_EMULATION_FAULTS
    PERF_COUNT_SW_MAX

    non-ABI

    PERF_COUNT_SW_PAGE_FAULTS
    PERF_COUNT_SW_PAGE_FAULTS_MAJ
    PERF_COUNT_SW_PAGE_FAULTS_MIN
    PERF_COUNT_SW_TASK_CLOCK
    PERF_FLAG_FD_CLOEXEC

    O_CLOEXEC

    PERF_FLAG_FD_NO_GROUP
    PERF_FLAG_FD_OUTPUT
    PERF_FLAG_PID_CGROUP

    pid=cgroup id, per-cpu mode only

    PERF_FORMAT_GROUP
    PERF_FORMAT_ID
    PERF_FORMAT_MAX

    non-ABI

    PERF_FORMAT_TOTAL_TIME_ENABLED

    The format of the data returned by read() on a perf event fd as specified by attr.read_format:

    PERF_FORMAT_TOTAL_TIME_RUNNING
    PERF_IOC_FLAG_GROUP

    Ioctls that can be done on a perf event fd:

    PERF_MAX_CONTEXTS_PER_STACK
    PERF_MAX_STACK_DEPTH
    PERF_MEM_LOCK_LOCKED

    locked transaction

    PERF_MEM_LOCK_NA

    locked instruction not available

    PERF_MEM_LOCK_SHIFT
    PERF_MEM_LVLNUM_ANY_CACHE

    5-0xa available Any cache

    PERF_MEM_LVLNUM_L1

    L1

    PERF_MEM_LVLNUM_L2

    L2

    PERF_MEM_LVLNUM_L3

    L3

    PERF_MEM_LVLNUM_L4

    L4

    PERF_MEM_LVLNUM_LFB

    LFB

    PERF_MEM_LVLNUM_NA

    N/A

    PERF_MEM_LVLNUM_PMEM

    PMEM

    PERF_MEM_LVLNUM_RAM

    RAM

    PERF_MEM_LVLNUM_SHIFT
    PERF_MEM_LVL_HIT

    hit level

    PERF_MEM_LVL_IO

    I/O memory

    PERF_MEM_LVL_L1

    L1

    PERF_MEM_LVL_L2

    L2

    PERF_MEM_LVL_L3

    L3

    PERF_MEM_LVL_LFB

    Line Fill Buffer

    PERF_MEM_LVL_LOC_RAM

    Local DRAM

    PERF_MEM_LVL_MISS

    miss level

    PERF_MEM_LVL_NA

    memory hierarchy (memory level, hit or miss) not available

    PERF_MEM_LVL_REM_CCE1

    Remote Cache (1 hop)

    PERF_MEM_LVL_REM_CCE2

    Remote Cache (2 hops)

    PERF_MEM_LVL_REM_RAM1

    Remote DRAM (1 hop)

    PERF_MEM_LVL_REM_RAM2

    Remote DRAM (2 hops)

    PERF_MEM_LVL_SHIFT
    PERF_MEM_LVL_UNC

    Uncached memory

    PERF_MEM_OP_EXEC

    code (execution)

    PERF_MEM_OP_LOAD

    load instruction

    PERF_MEM_OP_NA

    type of opcode (load/store/prefetch,code) not available

    PERF_MEM_OP_PFETCH

    prefetch

    PERF_MEM_OP_SHIFT
    PERF_MEM_OP_STORE

    store instruction

    PERF_MEM_REMOTE_REMOTE

    Remote

    PERF_MEM_REMOTE_SHIFT
    PERF_MEM_SNOOPX_FWD

    forward

    PERF_MEM_SNOOPX_SHIFT

    1 free

    PERF_MEM_SNOOP_HIT

    snoop hit

    PERF_MEM_SNOOP_HITM

    snoop hit modified

    PERF_MEM_SNOOP_MISS

    snoop miss

    PERF_MEM_SNOOP_NA

    snoop mode not available

    PERF_MEM_SNOOP_NONE

    no snoop

    PERF_MEM_SNOOP_SHIFT
    PERF_MEM_TLB_HIT

    hit level

    PERF_MEM_TLB_L1

    L1

    PERF_MEM_TLB_L2

    L2

    PERF_MEM_TLB_MISS

    miss level

    PERF_MEM_TLB_NA

    TLB access not available

    PERF_MEM_TLB_OS

    OS fault handler

    PERF_MEM_TLB_SHIFT
    PERF_MEM_TLB_WK

    Hardware Walker

    PERF_RECORD_AUX

    Records that new data landed in the AUX buffer part.

    PERF_RECORD_COMM
    PERF_RECORD_EXIT

    struct { struct perf_event_header header; u32 pid, ppid; u32 tid, ptid; u64 time; struct sample_id sample_id; };

    PERF_RECORD_FORK
    PERF_RECORD_ITRACE_START

    Indicates that instruction trace has started

    PERF_RECORD_LOST

    struct { struct perf_event_header header; u64 id; u64 lost; struct sample_id sample_id; };

    PERF_RECORD_LOST_SAMPLES

    Records the dropped/lost sample number.

    PERF_RECORD_MAX

    non-ABI

    PERF_RECORD_MISC_COMM_EXEC
    PERF_RECORD_MISC_CPUMODE_MASK
    PERF_RECORD_MISC_CPUMODE_UNKNOWN
    PERF_RECORD_MISC_EXACT_IP

    These PERF_RECORD_MISC_* flags below are safely reused for the following events:

    PERF_RECORD_MISC_EXT_RESERVED

    Reserve the last bit to indicate some extended misc field

    PERF_RECORD_MISC_GUEST_KERNEL
    PERF_RECORD_MISC_GUEST_USER
    PERF_RECORD_MISC_HYPERVISOR
    PERF_RECORD_MISC_KERNEL
    PERF_RECORD_MISC_MMAP_DATA

    Following PERF_RECORD_MISC_* are used on different events, so can reuse the same bit position:

    PERF_RECORD_MISC_PROC_MAP_PARSE_TIMEOUT

    Indicates that /proc/PID/maps parsing are truncated by time out.

    PERF_RECORD_MISC_SWITCH_OUT
    PERF_RECORD_MISC_SWITCH_OUT_PREEMPT
    PERF_RECORD_MISC_USER
    PERF_RECORD_MMAP

    perf_event_type: If perf_event_attr.sample_id_all is set then all event types will have the sample_type selected fields related to where/when (identity) an event took place (TID, TIME, ID, STREAM_ID, CPU IDENTIFIER) described in PERF_RECORD_SAMPLE below, it will be stashed just after the perf_event_header and the fields already present for the existing fields, i.e. at the end of the payload. That way a newer perf.data file will be supported by older perf tools, with these new optional fields being ignored.

    PERF_RECORD_MMAP2

    The MMAP2 records are an augmented version of MMAP, they add maj, min, ino numbers to be used to uniquely identify each mapping

    PERF_RECORD_NAMESPACES
    PERF_RECORD_READ
    PERF_RECORD_SAMPLE
    PERF_RECORD_SWITCH

    Records a context switch in or out (flagged by PERF_RECORD_MISC_SWITCH_OUT). See also PERF_RECORD_SWITCH_CPU_WIDE.

    PERF_RECORD_SWITCH_CPU_WIDE

    CPU-wide version of PERF_RECORD_SWITCH with next_prev_pid and next_prev_tid that are the next (switching out) or previous (switching in) pid/tid.

    PERF_RECORD_THROTTLE
    PERF_RECORD_UNTHROTTLE
    PERF_SAMPLE_ADDR
    PERF_SAMPLE_BRANCH_ABORT_TX
    PERF_SAMPLE_BRANCH_ABORT_TX_SHIFT

    transaction aborts

    PERF_SAMPLE_BRANCH_ANY
    PERF_SAMPLE_BRANCH_ANY_CALL
    PERF_SAMPLE_BRANCH_ANY_CALL_SHIFT

    any call branch

    PERF_SAMPLE_BRANCH_ANY_RETURN
    PERF_SAMPLE_BRANCH_ANY_RETURN_SHIFT

    any return branch

    PERF_SAMPLE_BRANCH_ANY_SHIFT

    any branch types

    PERF_SAMPLE_BRANCH_CALL
    PERF_SAMPLE_BRANCH_CALL_SHIFT

    direct call

    PERF_SAMPLE_BRANCH_CALL_STACK
    PERF_SAMPLE_BRANCH_CALL_STACK_SHIFT

    call/ret stack

    PERF_SAMPLE_BRANCH_COND
    PERF_SAMPLE_BRANCH_COND_SHIFT

    conditional branches

    PERF_SAMPLE_BRANCH_HV
    PERF_SAMPLE_BRANCH_HV_SHIFT

    hypervisor branches

    PERF_SAMPLE_BRANCH_IND_CALL
    PERF_SAMPLE_BRANCH_IND_CALL_SHIFT

    indirect calls

    PERF_SAMPLE_BRANCH_IND_JUMP
    PERF_SAMPLE_BRANCH_IND_JUMP_SHIFT

    indirect jumps

    PERF_SAMPLE_BRANCH_IN_TX
    PERF_SAMPLE_BRANCH_IN_TX_SHIFT

    in transaction

    PERF_SAMPLE_BRANCH_KERNEL
    PERF_SAMPLE_BRANCH_KERNEL_SHIFT

    kernel branches

    PERF_SAMPLE_BRANCH_MAX
    PERF_SAMPLE_BRANCH_MAX_SHIFT

    non-ABI

    PERF_SAMPLE_BRANCH_NO_CYCLES
    PERF_SAMPLE_BRANCH_NO_CYCLES_SHIFT

    no cycles

    PERF_SAMPLE_BRANCH_NO_FLAGS
    PERF_SAMPLE_BRANCH_NO_FLAGS_SHIFT

    no flags

    PERF_SAMPLE_BRANCH_NO_TX
    PERF_SAMPLE_BRANCH_NO_TX_SHIFT

    not in transaction

    PERF_SAMPLE_BRANCH_PLM_ALL
    PERF_SAMPLE_BRANCH_STACK
    PERF_SAMPLE_BRANCH_TYPE_SAVE
    PERF_SAMPLE_BRANCH_TYPE_SAVE_SHIFT

    save branch type

    PERF_SAMPLE_BRANCH_USER
    PERF_SAMPLE_BRANCH_USER_SHIFT

    values to program into branch_sample_type when PERF_SAMPLE_BRANCH is set

    PERF_SAMPLE_CALLCHAIN
    PERF_SAMPLE_CPU
    PERF_SAMPLE_DATA_SRC
    PERF_SAMPLE_ID
    PERF_SAMPLE_IDENTIFIER
    PERF_SAMPLE_IP

    Bits that can be set in attr.sample_type to request information in the overflow packets.

    PERF_SAMPLE_MAX

    non-ABI

    PERF_SAMPLE_PERIOD
    PERF_SAMPLE_PHYS_ADDR
    PERF_SAMPLE_RAW
    PERF_SAMPLE_READ
    PERF_SAMPLE_REGS_ABI_32
    PERF_SAMPLE_REGS_ABI_64
    PERF_SAMPLE_REGS_ABI_NONE

    Values to determine ABI of the registers dump.

    PERF_SAMPLE_REGS_INTR
    PERF_SAMPLE_REGS_USER
    PERF_SAMPLE_STACK_USER
    PERF_SAMPLE_STREAM_ID
    PERF_SAMPLE_TID
    PERF_SAMPLE_TIME
    PERF_SAMPLE_TRANSACTION
    PERF_SAMPLE_WEIGHT
    PERF_TXN_ABORT_MASK

    bits 32..63 are reserved for the abort code

    PERF_TXN_ABORT_SHIFT
    PERF_TXN_ASYNC

    Instruction not related

    PERF_TXN_CAPACITY_READ

    Capacity read abort

    PERF_TXN_CAPACITY_WRITE

    Capacity write abort

    PERF_TXN_CONFLICT

    Conflict abort

    PERF_TXN_ELISION

    Values for the memory transaction event qualifier, mostly for abort events. Multiple bits can be set. From elision

    PERF_TXN_MAX

    non-ABI

    PERF_TXN_RETRY

    Retry possible

    PERF_TXN_SYNC

    Instruction is related

    PERF_TXN_TRANSACTION

    From transaction

    PERF_TYPE_BREAKPOINT
    PERF_TYPE_HARDWARE

    User-space ABI bits: attr.type

    PERF_TYPE_HW_CACHE
    PERF_TYPE_MAX

    non-ABI

    PERF_TYPE_RAW
    PERF_TYPE_SOFTWARE
    PERF_TYPE_TRACEPOINT
    PER_BSD
    PER_CLEAR_ON_SETID

    Security-relevant compatibility flags that must be cleared upon setuid or setgid exec:

    PER_HPUX
    PER_IRIX32

    IRIX5 32-bit

    PER_IRIX64

    IRIX6 64-bit

    PER_IRIXN32

    IRIX6 new 32-bit

    PER_ISCR4
    PER_LINUX

    Personality types.

    PER_LINUX32
    PER_LINUX32_3GB
    PER_LINUX_32BIT
    PER_LINUX_FDPIC
    PER_MASK
    PER_OSF4

    OSF/1 v4

    PER_OSR5
    PER_RISCOS
    PER_SCOSVR3
    PER_SOLARIS
    PER_SUNOS
    PER_SVR3
    PER_SVR4
    PER_UW7
    PER_WYSEV386
    PER_XENIX
    PF_ALG
    PF_APPLETALK
    PF_ASH
    PF_ATMPVC
    PF_ATMSVC
    PF_AX25
    PF_BLUETOOTH
    PF_BRIDGE
    PF_CAIF
    PF_CAN
    PF_DECNET
    PF_ECONET
    PF_IB
    PF_IEEE802154
    PF_INET
    PF_INET6
    PF_IPX
    PF_IRDA
    PF_ISDN
    PF_IUCV
    PF_KCM
    PF_KEY
    PF_LLC
    PF_LOCAL
    PF_MAX
    PF_MPLS
    PF_NETBEUI
    PF_NETLINK
    PF_NETROM
    PF_NFC
    PF_PACKET
    PF_PHONET
    PF_PPPOX
    PF_QIPCRTR
    PF_RDS
    PF_ROSE
    PF_ROUTE
    PF_RXRPC
    PF_SECURITY
    PF_SMC
    PF_SNA
    PF_TIPC
    PF_UNIX
    PF_UNSPEC

    Protocol families, same as address families.

    PF_VSOCK
    PF_WANPIPE
    PF_X25
    PF_XDP
    PID_NS_INDEX
    PIPE_BUF

    bytes in atomic write to a pipe

    PIT_TICK_RATE

    The clock frequency of the i8253/i8254 PIT

    PKEY_ACCESS_MASK
    PKEY_DISABLE_ACCESS
    PKEY_DISABLE_WRITE
    POLLERR
    POLLFREE

    currently only for epoll

    POLLHUP
    POLLIN

    These are specified by iBCS2

    POLLMSG
    POLLNVAL
    POLLOUT
    POLLPRI
    POLLRDBAND
    POLLRDHUP
    POLLRDNORM

    The rest seem to be more-or-less nonstandard. Check them!

    POLLREMOVE
    POLLWRBAND
    POLLWRNORM
    POLL_BUSY_LOOP
    POLL_ERR

    i/o error

    POLL_HUP

    device disconnected

    POLL_IN

    SIGPOLL (or any other signal without signal specific si_codes) si_codes data input available

    POLL_MSG

    input message available

    POLL_OUT

    output buffers available

    POLL_PRI

    high priority input available

    PORT_16C950

    Oxford Semiconductor

    PORT_8250
    PORT_16450
    PORT_16550
    PORT_16550A
    PORT_16650
    PORT_16650V2
    PORT_16654
    PORT_16750
    PORT_16850
    PORT_CIRRUS

    usurped by cyclades.c

    PORT_MAX
    PORT_RSA

    RSA-DV II/S card

    PORT_STARTECH

    usurped by cyclades.c

    PORT_UNKNOWN

    These are the supported serial types.

    PPM_SCALE_INV_SHIFT
    PRIO_MAX
    PRIO_MIN
    PRIO_PGRP
    PRIO_PROCESS
    PRIO_USER
    PROT_EXEC

    page can be executed

    PROT_GROWSDOWN

    mprotect flag: extend change to start of growsdown vma

    PROT_GROWSUP

    mprotect flag: extend change to end of growsup vma

    PROT_NONE

    0x10 reserved for arch-specific use 0x20 reserved for arch-specific use page can not be accessed

    PROT_READ

    From uapi/asm-generic/mman-common.h page can be read

    PROT_SEM

    page may be used for atomic ops

    PROT_WRITE

    page can be written

    PR_CAPBSET_DROP
    PR_CAPBSET_READ

    Get/set the capability bounding set (as per security/commoncap.c)

    PR_CAP_AMBIENT

    Control the ambient capability set

    PR_CAP_AMBIENT_CLEAR_ALL
    PR_CAP_AMBIENT_IS_SET
    PR_CAP_AMBIENT_LOWER
    PR_CAP_AMBIENT_RAISE
    PR_ENDIAN_BIG
    PR_ENDIAN_LITTLE

    True little endian mode

    PR_ENDIAN_PPC_LITTLE

    "PowerPC" pseudo little endian

    PR_FPEMU_NOPRINT

    silently emulate fp operations accesses

    PR_FPEMU_SIGFPE

    don't emulate fp operations, send SIGFPE instead

    PR_FP_EXC_ASYNC

    async recoverable exception mode

    PR_FP_EXC_DISABLED

    FP exceptions disabled

    PR_FP_EXC_DIV

    floating point divide by zero

    PR_FP_EXC_INV

    floating point invalid operation

    PR_FP_EXC_NONRECOV

    async non-recoverable exc. mode

    PR_FP_EXC_OVF

    floating point overflow

    PR_FP_EXC_PRECISE

    precise exception mode

    PR_FP_EXC_RES

    floating point inexact result

    PR_FP_EXC_SW_ENABLE

    Use FPEXC for FP exception enables

    PR_FP_EXC_UND

    floating point underflow

    PR_FP_MODE_FR

    64b FP registers

    PR_FP_MODE_FRE

    32b compatibility

    PR_GET_CHILD_SUBREAPER
    PR_GET_DUMPABLE

    Get/set current->mm->dumpable

    PR_GET_ENDIAN

    Get/set process endian

    PR_GET_FPEMU

    Get/set floating-point emulation control bits (if meaningful)

    PR_GET_FPEXC

    Get/set floating-point exception mode (if meaningful)

    PR_GET_FP_MODE
    PR_GET_IO_FLUSHER
    PR_GET_KEEPCAPS

    Get/set whether or not to drop capabilities on setuid() away from uid 0 (as per security/commoncap.c)

    PR_GET_NAME

    Get process name

    PR_GET_NO_NEW_PRIVS
    PR_GET_PDEATHSIG

    Second arg is a ptr to return the signal

    PR_GET_SECCOMP

    Get/set process seccomp mode

    PR_GET_SECUREBITS

    Get/set securebits (as per security/commoncap.c)

    PR_GET_SPECULATION_CTRL

    Per task speculation control

    PR_GET_TAGGED_ADDR_CTRL
    PR_GET_THP_DISABLE
    PR_GET_TID_ADDRESS
    PR_GET_TIMERSLACK
    PR_GET_TIMING

    Get/set whether we use statistical process timing or accurate timestamp based process timing

    PR_GET_TSC

    Get/set the process' ability to use the timestamp counter instruction

    PR_GET_UNALIGN

    Get/set unaligned access control bits (if meaningful)

    PR_MCE_KILL

    Set early/late kill mode for hwpoison memory corruption. This influences when the process gets killed on a memory corruption.

    PR_MCE_KILL_CLEAR
    PR_MCE_KILL_DEFAULT
    PR_MCE_KILL_EARLY
    PR_MCE_KILL_GET
    PR_MCE_KILL_LATE
    PR_MCE_KILL_SET
    PR_MPX_DISABLE_MANAGEMENT
    PR_MPX_ENABLE_MANAGEMENT

    No longer implemented, but left here to ensure the numbers stay reserved:

    PR_PAC_APDAKEY
    PR_PAC_APDBKEY
    PR_PAC_APGAKEY
    PR_PAC_APIAKEY
    PR_PAC_APIBKEY
    PR_PAC_RESET_KEYS

    Reset arm64 pointer authentication keys

    PR_SET_CHILD_SUBREAPER
    PR_SET_DUMPABLE
    PR_SET_ENDIAN
    PR_SET_FPEMU
    PR_SET_FPEXC
    PR_SET_FP_MODE
    PR_SET_IO_FLUSHER

    Control reclaim behavior when allocating memory

    PR_SET_KEEPCAPS
    PR_SET_MM

    Tune up process memory map specifics.

    PR_SET_MM_ARG_END
    PR_SET_MM_ARG_START
    PR_SET_MM_AUXV
    PR_SET_MM_BRK
    PR_SET_MM_END_CODE
    PR_SET_MM_END_DATA
    PR_SET_MM_ENV_END
    PR_SET_MM_ENV_START
    PR_SET_MM_EXE_FILE
    PR_SET_MM_MAP
    PR_SET_MM_MAP_SIZE
    PR_SET_MM_START_BRK
    PR_SET_MM_START_CODE
    PR_SET_MM_START_DATA
    PR_SET_MM_START_STACK
    PR_SET_NAME

    Set process name

    PR_SET_NO_NEW_PRIVS

    If no_new_privs is set, then operations that grant new privileges (i.e. execve) will either fail or not grant them. This affects suid/sgid, file capabilities, and LSMs. Operations that merely manipulate or drop existing privileges (setresuid, capset, etc.) will still work. Drop those privileges if you want them gone. Changing LSM security domain is considered a new privilege. So, for example, asking selinux for a specific new context (e.g. with runcon) will result in execve returning -EPERM. See Documentation/userspace-api/no_new_privs.rst for more details.

    PR_SET_PDEATHSIG

    Values to pass as first argument to prctl() Second arg is a signal

    PR_SET_PTRACER

    Set specific pid that is allowed to ptrace the current task. A value of 0 mean "no process".

    PR_SET_PTRACER_ANY
    PR_SET_SECCOMP
    PR_SET_SECUREBITS
    PR_SET_SPECULATION_CTRL
    PR_SET_TAGGED_ADDR_CTRL

    Tagged user address controls for arm64

    PR_SET_THP_DISABLE
    PR_SET_TIMERSLACK

    Get/set the timerslack as used by poll/select/nanosleep A value of 0 means "use default"

    PR_SET_TIMING
    PR_SET_TSC
    PR_SET_UNALIGN
    PR_SPEC_DISABLE
    PR_SPEC_DISABLE_NOEXEC
    PR_SPEC_ENABLE
    PR_SPEC_FORCE_DISABLE
    PR_SPEC_INDIRECT_BRANCH
    PR_SPEC_NOT_AFFECTED

    Return and control values for PR_SET/GET_SPECULATION_CTRL

    PR_SPEC_PRCTL
    PR_SPEC_STORE_BYPASS

    Speculation control variants

    PR_SVE_GET_VL

    get task vector length

    PR_SVE_SET_VL

    arm64 Scalable Vector Extension controls Flag values must be kept in sync with ptrace NT_ARM_SVE interface set task vector length

    PR_SVE_SET_VL_ONEXEC

    defer effect until exec

    PR_SVE_VL_INHERIT

    inherit across exec

    PR_SVE_VL_LEN_MASK

    Bits common to PR_SVE_SET_VL and PR_SVE_GET_VL

    PR_TAGGED_ADDR_ENABLE
    PR_TASK_PERF_EVENTS_DISABLE
    PR_TASK_PERF_EVENTS_ENABLE
    PR_TIMING_STATISTICAL

    Normal, traditional, statistical process timing

    PR_TIMING_TIMESTAMP

    Accurate timestamp based process timing

    PR_TSC_ENABLE

    allow the use of the timestamp counter

    PR_TSC_SIGSEGV

    throw a SIGSEGV instead of reading the TSC

    PR_UNALIGN_NOPRINT

    silently fix up unaligned user accesses

    PR_UNALIGN_SIGBUS

    generate SIGBUS on unaligned user access

    PTRACE_ATTACH
    PTRACE_CONT
    PTRACE_DETACH
    PTRACE_EVENTMSG_SYSCALL_ENTRY

    These values are stored in task->ptrace_message by tracehook_report_syscall_* to describe the current syscall-stop.

    PTRACE_EVENTMSG_SYSCALL_EXIT
    PTRACE_EVENT_CLONE
    PTRACE_EVENT_EXEC
    PTRACE_EVENT_EXIT
    PTRACE_EVENT_FORK

    Wait extended result codes for the above trace options.

    PTRACE_EVENT_SECCOMP
    PTRACE_EVENT_STOP

    Extended result codes which enabled by means other than options.

    PTRACE_EVENT_VFORK
    PTRACE_EVENT_VFORK_DONE
    PTRACE_GETEVENTMSG
    PTRACE_GETREGSET

    Generic ptrace interface that exports the architecture specific regsets using the corresponding NT_* types (which are also used in the core dump). Please note that the NT_PRSTATUS note type in a core dump contains a full 'struct elf_prstatus'. But the user_regset for NT_PRSTATUS contains just the elf_gregset_t that is the pr_reg field of 'struct elf_prstatus'. For all the other user_regset flavors, the user_regset layout and the ELF core dump note payload are exactly the same layout.

    PTRACE_GETSIGINFO
    PTRACE_GETSIGMASK
    PTRACE_GET_SYSCALL_INFO
    PTRACE_INTERRUPT
    PTRACE_KILL
    PTRACE_LISTEN
    PTRACE_O_EXITKILL

    eventless options

    PTRACE_O_MASK
    PTRACE_O_SUSPEND_SECCOMP
    PTRACE_O_TRACECLONE
    PTRACE_O_TRACEEXEC
    PTRACE_O_TRACEEXIT
    PTRACE_O_TRACEFORK
    PTRACE_O_TRACESECCOMP
    PTRACE_O_TRACESYSGOOD

    Options set using PTRACE_SETOPTIONS or using PTRACE_SEIZE @data param

    PTRACE_O_TRACEVFORK
    PTRACE_O_TRACEVFORKDONE
    PTRACE_PEEKDATA
    PTRACE_PEEKSIGINFO
    PTRACE_PEEKSIGINFO_SHARED

    Read signals from a shared (process wide) queue

    PTRACE_PEEKTEXT
    PTRACE_PEEKUSR
    PTRACE_POKEDATA
    PTRACE_POKETEXT
    PTRACE_POKEUSR
    PTRACE_SECCOMP_GET_FILTER
    PTRACE_SECCOMP_GET_METADATA
    PTRACE_SEIZE
    PTRACE_SETOPTIONS

    0x4200-0x4300 are reserved for architecture-independent additions.

    PTRACE_SETREGSET
    PTRACE_SETSIGINFO
    PTRACE_SETSIGMASK
    PTRACE_SINGLESTEP
    PTRACE_SYSCALL
    PTRACE_SYSCALL_INFO_ENTRY
    PTRACE_SYSCALL_INFO_EXIT
    PTRACE_SYSCALL_INFO_NONE
    PTRACE_SYSCALL_INFO_SECCOMP
    PTRACE_TRACEME

    ptrace.h structs and defines to help the user use the ptrace system call. has the defines to get at the registers.

    PTY_MAX

    /proc/sys/kernel/pty

    PTY_NR
    QFMT_OCFS2
    QFMT_VFS_OLD

    Quota format type IDs

    QFMT_VFS_V0
    QFMT_VFS_V1
    QIF_ALL
    QIF_BLIMITS
    QIF_BLIMITS_B

    Quota structure used for communication with userspace via quotactl Following flags are used to specify which fields are valid

    QIF_BTIME
    QIF_BTIME_B
    QIF_DQBLKSIZE
    QIF_DQBLKSIZE_BITS

    Size of block in which space limits are passed through the quota interface

    QIF_ILIMITS
    QIF_ILIMITS_B
    QIF_INODES
    QIF_INODES_B
    QIF_ITIME
    QIF_ITIME_B
    QIF_LIMITS
    QIF_SPACE
    QIF_SPACE_B
    QIF_TIMES
    QIF_USAGE
    QTYPE_MASK_GRP
    QTYPE_MASK_PRJ
    QTYPE_MASK_USR

    Masks for quota types when used as a bitmask

    QUOTA_NL_A_CAUSED_ID
    QUOTA_NL_A_DEV_MAJOR
    QUOTA_NL_A_DEV_MINOR
    QUOTA_NL_A_EXCESS_ID
    QUOTA_NL_A_MAX
    QUOTA_NL_A_PAD
    QUOTA_NL_A_QTYPE
    QUOTA_NL_A_UNSPEC
    QUOTA_NL_A_WARNING
    QUOTA_NL_BHARDBELOW

    Usage got below block hardlimit

    QUOTA_NL_BHARDWARN

    Block hardlimit reached

    QUOTA_NL_BSOFTBELOW

    Usage got below block softlimit

    QUOTA_NL_BSOFTLONGWARN

    Block grace time expired

    QUOTA_NL_BSOFTWARN

    Block softlimit reached

    QUOTA_NL_C_MAX
    QUOTA_NL_C_UNSPEC
    QUOTA_NL_C_WARNING
    QUOTA_NL_IHARDBELOW

    Usage got below inode hardlimit

    QUOTA_NL_IHARDWARN

    Inode hardlimit reached

    QUOTA_NL_ISOFTBELOW

    Usage got below inode softlimit

    QUOTA_NL_ISOFTLONGWARN

    Inode grace time expired

    QUOTA_NL_ISOFTWARN

    Inode softlimit reached

    QUOTA_NL_NOWARN

    Definitions for quota netlink interface

    Q_GETFMT

    get quota format used on given filesystem

    Q_GETINFO

    get information about quota files

    Q_GETNEXTQUOTA

    get disk limits and usage >= ID

    Q_GETQUOTA

    get user quota structure

    Q_QUOTAOFF

    turn quotas off

    Q_QUOTAON

    turn quotas on

    Q_SETINFO

    set information about quota files

    Q_SETQUOTA

    set user quota structure

    Q_SYNC

    sync disk copy of a filesystems quotas

    Q_XGETNEXTQUOTA

    get disk limits and usage >= ID

    Q_XGETQSTAT

    get quota subsystem status

    Q_XGETQSTATV

    newer version of get quota

    Q_XGETQUOTA

    get disk limits and usage

    Q_XQUOTAOFF

    disable accounting/enforcement

    Q_XQUOTAON

    enable accounting/enforcement

    Q_XQUOTARM

    free disk space used by dquots

    Q_XQUOTASYNC

    delalloc flush, updates dquots

    Q_XSETQLIM

    set disk limits

    RANDOM_BOOT_ID
    RANDOM_ENTROPY_COUNT
    RANDOM_POOLSIZE

    /proc/sys/kernel/random

    RANDOM_READ_THRESH
    RANDOM_UUID
    RANDOM_WRITE_THRESH
    READ_IMPLIES_EXEC
    RENAME_EXCHANGE

    Exchange source and dest

    RENAME_NOREPLACE

    Don't overwrite target

    RENAME_WHITEOUT

    Whiteout source

    RLIM64_INFINITY
    RLIMIT_AS

    address space limit

    RLIMIT_CORE

    max core file size

    RLIMIT_CPU

    Resource limit IDs

    RLIMIT_DATA

    max data size

    RLIMIT_FSIZE

    Maximum filesize

    RLIMIT_LOCKS

    maximum file locks held

    RLIMIT_MEMLOCK

    max locked-in-memory address space

    RLIMIT_MSGQUEUE

    maximum bytes in POSIX mqueues

    RLIMIT_NICE

    max nice prio allowed to raise to 0-39 for nice level 19 .. -20

    RLIMIT_NOFILE

    max number of open files

    RLIMIT_NPROC

    max number of processes

    RLIMIT_RSS

    max resident set size

    RLIMIT_RTPRIO

    maximum realtime priority

    RLIMIT_RTTIME

    timeout for RT tasks in us

    RLIMIT_SIGPENDING

    max number of pending signals

    RLIMIT_STACK

    max stack size

    RLIM_INFINITY

    SuS says limits have to be unsigned. Which makes a ton more sense anyway.

    RLIM_NLIMITS
    ROBUST_LIST_LIMIT

    This limit protects against a deliberately circular list. (Not worth introducing an rlimit for it)

    RSEQ_CPU_ID_REGISTRATION_FAILED
    RSEQ_CPU_ID_UNINITIALIZED

    linux/rseq.h

    RSEQ_CS_FLAG_NO_RESTART_ON_MIGRATE
    RSEQ_CS_FLAG_NO_RESTART_ON_MIGRATE_BIT
    RSEQ_CS_FLAG_NO_RESTART_ON_PREEMPT
    RSEQ_CS_FLAG_NO_RESTART_ON_PREEMPT_BIT
    RSEQ_CS_FLAG_NO_RESTART_ON_SIGNAL
    RSEQ_CS_FLAG_NO_RESTART_ON_SIGNAL_BIT
    RSEQ_FLAG_UNREGISTER
    RTSIG_MAX
    RUSAGE_BOTH

    sys_wait4() uses this

    RUSAGE_CHILDREN
    RUSAGE_SELF

    Resource control/accounting header file for linux Definition of struct rusage taken from BSD 4.3 Reno

    RUSAGE_THREAD

    only the calling thread

    RWF_APPEND

    per-IO O_APPEND

    RWF_DSYNC

    per-IO O_DSYNC

    RWF_HIPRI

    high priority request, poll if possible

    RWF_NOWAIT

    per-IO, return -EAGAIN if operation would block

    RWF_SUPPORTED

    mask of flags supported by the kernel

    RWF_SYNC

    per-IO O_SYNC

    RWF_WRITE_LIFE_NOT_SET

    (1U << 31) is reserved for signed error codes

    RWH_WRITE_LIFE_EXTREME
    RWH_WRITE_LIFE_LONG
    RWH_WRITE_LIFE_MEDIUM
    RWH_WRITE_LIFE_NONE
    RWH_WRITE_LIFE_SHORT
    SA_NOCLDSTOP

    SA_FLAGS values:

    SA_NOCLDWAIT
    SA_NODEFER
    SA_NOMASK
    SA_ONESHOT
    SA_ONSTACK
    SA_RESETHAND
    SA_RESTART
    SA_SIGINFO
    SCHED_ATTR_SIZE_VER0

    sizeof first published struct

    SCHED_ATTR_SIZE_VER1

    add: util_{min,max}

    SCHED_BATCH
    SCHED_DEADLINE
    SCHED_FIFO
    SCHED_FLAG_ALL
    SCHED_FLAG_DL_OVERRUN
    SCHED_FLAG_RECLAIM
    SCHED_FLAG_RESET_ON_FORK

    For the sched_{set,get}attr() calls

    SCHED_IDLE

    SCHED_ISO: reserved but not implemented yet

    SCHED_NORMAL

    Scheduling policies

    SCHED_RESET_ON_FORK

    Can be ORed in to make sure the process is reverted back to SCHED_NORMAL on fork

    SCHED_RR
    SCM_CREDENTIALS

    rw: struct ucred

    SCM_RIGHTS

    Ancillary data object information MACROS Table 5-14 of POSIX 1003.1g "Socket"-level control message types: rw: access rights (array of int)

    SCM_SECURITY

    rw: security label

    SCM_TIMESTAMP
    SCM_TIMESTAMPING
    SCM_TIMESTAMPING_OPT_STATS
    SCM_TIMESTAMPING_PKTINFO
    SCM_TIMESTAMPNS
    SCM_TXTIME
    SCM_WIFI_STATUS
    SECCOMP_FILTER_FLAG_LOG
    SECCOMP_FILTER_FLAG_NEW_LISTENER
    SECCOMP_FILTER_FLAG_SPEC_ALLOW
    SECCOMP_FILTER_FLAG_TSYNC

    Valid flags for SECCOMP_SET_MODE_FILTER

    SECCOMP_GET_ACTION_AVAIL
    SECCOMP_GET_NOTIF_SIZES
    SECCOMP_IOC_MAGIC
    SECCOMP_MODE_DISABLED

    Valid values for seccomp.mode and prctl(PR_SET_SECCOMP, ) seccomp is not in use.

    SECCOMP_MODE_FILTER

    uses user-supplied filter.

    SECCOMP_MODE_STRICT

    uses hard-coded filter.

    SECCOMP_RET_ACTION
    SECCOMP_RET_ACTION_FULL

    Masks for the return value sections.

    SECCOMP_RET_ALLOW

    allow

    SECCOMP_RET_DATA
    SECCOMP_RET_ERRNO

    returns an errno

    SECCOMP_RET_KILL
    SECCOMP_RET_KILL_PROCESS

    All BPF programs must return a 32-bit value. The bottom 16-bits are for optional return data. The upper 16-bits are ordered from least permissive values to most, as a signed value (so 0x8000000 is negative).

    SECCOMP_RET_KILL_THREAD

    kill the thread

    SECCOMP_RET_LOG

    allow after logging

    SECCOMP_RET_TRACE

    pass to a tracer or disallow

    SECCOMP_RET_TRAP

    disallow and force a SIGSYS

    SECCOMP_RET_USER_NOTIF

    notifies userspace

    SECCOMP_SET_MODE_FILTER
    SECCOMP_SET_MODE_STRICT

    Valid operations for seccomp syscall.

    SEEK_CUR

    seek relative to current file position

    SEEK_DATA

    seek to the next data

    SEEK_END

    seek relative to end of file

    SEEK_HOLE

    seek to the next hole

    SEEK_MAX
    SEEK_SET

    seek relative to beginning of file

    SEGV_ACCADI

    ADI not enabled for mapped object

    SEGV_ACCERR

    invalid permissions for mapped object

    SEGV_ADIDERR

    Disrupting MCD error

    SEGV_ADIPERR

    Precise MCD exception

    SEGV_BNDERR

    failed address bound checks

    SEGV_MAPERR

    SIGSEGV si_codes address not mapped to object

    SEGV_PKUERR

    failed protection key checks

    SEMAEM

    adjust on exit max value

    SEMCTL
    SEMGET
    SEMMAP

    of entries in semaphore map

    SEMMNI

    SEMMNI, SEMMSL and SEMMNS are default values which can be modified by sysctl. The values has been chosen to be larger than necessary for any known configuration.

    SEMMNS

    <= INT_MAX max # of semaphores in system

    SEMMNU

    num of undo structures system wide

    SEMMSL

    <= INT_MAX max num of semaphores per id

    SEMOP
    SEMOPM

    <= 1 000 max num of ops per semop call

    SEMTIMEDOP
    SEMUME

    unused max num of undo entries per process

    SEMUSZ

    sizeof struct sem_undo

    SEMVMX

    <= 32767 semaphore maximum value

    SEM_INFO
    SEM_STAT

    ipcs ctl cmds

    SEM_STAT_ANY
    SEM_UNDO

    semop flags undo the operation on exit

    SERIAL_IO_AU
    SERIAL_IO_HUB6
    SERIAL_IO_MEM
    SERIAL_IO_MEM16
    SERIAL_IO_MEM32
    SERIAL_IO_MEM32BE
    SERIAL_IO_PORT
    SERIAL_IO_TSI
    SER_ISO7816_ENABLED
    SER_ISO7816_T_PARAM
    SER_RS485_ENABLED

    If enabled

    SER_RS485_RTS_AFTER_SEND

    Logical level for RTS pin after sent

    SER_RS485_RTS_ON_SEND

    Logical level for RTS pin when sending

    SER_RS485_RX_DURING_TX
    SER_RS485_TERMINATE_BUS

    Enable bus termination (if supported)

    SETALL

    set all semval's

    SETVAL

    set semval

    SHIFT_FLL

    FLL frequency factor (shift)

    SHIFT_PLL

    SHIFT_PLL is used as a dampening factor to define how much we adjust the frequency correction for a given offset in PLL mode. It also used in dampening the offset correction, to define how much of the current value in time_offset we correct for each second. Changing this value changes the stiffness of the ntp adjustment code. A lower value makes it more flexible, reducing NTP convergence time. A higher value makes it stiffer, increasing convergence time, but making the clock more stable.

    SHIFT_USEC

    SHIFT_USEC defines the scaling (shift) of the time_freq and time_tolerance variables, which represent the current frequency offset and maximum frequency tolerance. frequency offset scale (shift)

    SHMALL

    max shm system wide (pages)

    SHMAT
    SHMCTL
    SHMDT
    SHMGET
    SHMMAX

    max shared seg size (bytes)

    SHMMIN

    SHMMNI, SHMMAX and SHMALL are default upper limits which can be modified by sysctl. The SHMMAX and SHMALL values have been chosen to be as large possible without facilitating scenarios where userspace causes overflows when adjusting the limits via operations of the form "retrieve current limit; add X; update limit". It is therefore not advised to make SHMMAX and SHMALL any larger. These limits are suitable for both 32 and 64-bit systems. min shared seg size (bytes)

    SHMMNI

    max num of segs system wide

    SHMSEG

    max shared segs per process

    SHM_EXEC

    execution access

    SHM_HUGETLB

    Bits 9 & 10 are IPC_CREAT and IPC_EXCL segment will use huge TLB pages

    SHM_HUGE_1GB
    SHM_HUGE_1MB
    SHM_HUGE_2GB
    SHM_HUGE_2MB
    SHM_HUGE_8MB
    SHM_HUGE_16GB
    SHM_HUGE_16MB
    SHM_HUGE_32MB
    SHM_HUGE_64KB
    SHM_HUGE_256MB
    SHM_HUGE_512KB
    SHM_HUGE_512MB
    SHM_HUGE_MASK
    SHM_HUGE_SHIFT

    Huge page size encoding when SHM_HUGETLB is specified, and a huge page size other than the default is desired. See hugetlb_encode.h

    SHM_INFO
    SHM_LOCK

    super user shmctl commands

    SHM_NORESERVE

    don't check for reservations

    SHM_R

    shmget() shmflg values. The bottom nine bits are the same as open(2) mode flags or S_IRUGO from <linux/stat.h>

    SHM_RDONLY

    shmat() shmflg values read-only access

    SHM_REMAP

    take-over region on attach

    SHM_RND

    round attach address to SHMLBA boundary

    SHM_STAT

    ipcs ctl commands

    SHM_STAT_ANY
    SHM_UNLOCK
    SHM_W

    or S_IWUGO from <linux/stat.h>

    SHORT_INODE
    SHUT_RD

    enum sock_shutdown_cmd - Shutdown types @SHUT_RD: shutdown receptions @SHUT_WR: shutdown transmissions @SHUT_RDWR: shutdown receptions/transmissions

    SHUT_RDWR
    SHUT_WR
    SIGABRT
    SIGALRM
    SIGBUS
    SIGCHLD
    SIGCONT
    SIGEV_MAX_SIZE
    SIGEV_NONE

    other notification: meaningless

    SIGEV_PAD_SIZE
    SIGEV_SIGNAL

    sigevent definitions

    SIGEV_THREAD

    deliver via thread creation

    SIGEV_THREAD_ID

    deliver to thread

    SIGFPE
    SIGHUP
    SIGILL
    SIGINT
    SIGIO
    SIGIOT
    SIGKILL
    SIGPIPE
    SIGPOLL
    SIGPROF
    SIGPWR
    SIGQUIT
    SIGRTMAX
    SIGRTMIN

    These should not be considered constants from userland.

    SIGSEGV
    SIGSTKFLT
    SIGSTKSZ
    SIGSTOP
    SIGSYS
    SIGTERM
    SIGTRAP
    SIGTSTP
    SIGTTIN
    SIGTTOU
    SIGUNUSED
    SIGURG
    SIGUSR1
    SIGUSR2
    SIGVTALRM
    SIGWINCH
    SIGXCPU
    SIGXFSZ
    SIG_BLOCK

    for blocking signals

    SIG_DFL

    default signal handling

    SIG_ERR

    error return from signal

    SIG_IGN

    ignore signal

    SIG_SETMASK

    for setting the signal mask

    SIG_UNBLOCK

    for unblocking signals

    SIOCATMARK
    SIOCGPGRP
    SIOCGSTAMP

    Get stamp (timeval)

    SIOCGSTAMPNS

    Get stamp (timespec)

    SIOCSPGRP
    SI_ASYNCIO

    sent by AIO completion

    SI_ASYNCNL

    sent by glibc async name lookup completion

    SI_DETHREAD

    sent by execve() killing subsidiary threads

    SI_KERNEL

    sent by the kernel from somewhere

    SI_LOAD_SHIFT
    SI_MAX_SIZE
    SI_MESGQ

    sent by real time mesq state change

    SI_QUEUE

    sent by sigqueue

    SI_SIGIO

    sent by queued SIGIO

    SI_TIMER

    sent by timer expiration

    SI_TKILL

    sent by tkill system call

    SI_USER

    How these fields are to be accessed. si_code values Digital reserves positive values for kernel-generated signals. sent by kill, sigsend, raise

    SK_DROP
    SK_PASS
    SOCKWQ_ASYNC_NOSPACE

    NET: An implementation of the SOCKET network access protocol. This is the master header file for the Linux NET layer, or, in plain English: the networking handling part of the kernel. Historically, SOCKWQ_ASYNC_NOSPACE & SOCKWQ_ASYNC_WAITDATA were located in sock->flags, but moved into sk->sk_wq->flags to be RCU protected. Eventually all flags will be in sk->sk_wq->flags.

    SOCKWQ_ASYNC_WAITDATA
    SOCK_CLOEXEC

    Flags for socket, socketpair, accept4

    SOCK_DCCP
    SOCK_DGRAM
    SOCK_MAX
    SOCK_NONBLOCK
    SOCK_NOSPACE
    SOCK_PACKET
    SOCK_PASSCRED
    SOCK_PASSSEC
    SOCK_RAW
    SOCK_RDM
    SOCK_SEQPACKET
    SOCK_SIZE

    Structure describing an Internet (IP) socket address. sizeof(struct sockaddr)

    SOCK_STREAM

    enum sock_type - Socket types @SOCK_STREAM: stream (connection) socket @SOCK_DGRAM: datagram (conn.less) socket @SOCK_RAW: raw socket @SOCK_RDM: reliably-delivered message @SOCK_SEQPACKET: sequential packet socket @SOCK_DCCP: Datagram Congestion Control Protocol socket @SOCK_PACKET: linux specific way of getting packets at the dev level. For writing rarp and other similar things on the user level.

    SOCK_TYPE_MASK

    Mask which covers at least up to SOCK_MASK-1. The remaining bits are used as flags.

    SOCK_WAKE_IO
    SOCK_WAKE_SPACE
    SOCK_WAKE_URG
    SOCK_WAKE_WAITD
    SOL_AAL

    ATM Adaption Layer (packet level)

    SOL_ALG
    SOL_ATALK
    SOL_ATM

    ATM layer (cell level)

    SOL_AX25
    SOL_BLUETOOTH
    SOL_CAIF
    SOL_DCCP
    SOL_DECNET
    SOL_ICMPV6
    SOL_IP

    Setsockoptions(2) level. Thanks to BSD these must match IPPROTO_xxx

    SOL_IPV6
    SOL_IPX
    SOL_IRDA
    SOL_IUCV
    SOL_KCM
    SOL_LLC
    SOL_NETBEUI
    SOL_NETLINK
    SOL_NETROM
    SOL_NFC
    SOL_PACKET
    SOL_PNPIPE
    SOL_PPPOL2TP
    SOL_RAW
    SOL_RDS
    SOL_ROSE
    SOL_RXRPC
    SOL_SCTP
    SOL_SOCKET

    For setsockopt(3)

    SOL_TCP

    #define SOL_ICMP 1 No-no-no! Due to Linux :-) we cannot use SOL_ICMP=1

    SOL_TIPC
    SOL_TLS
    SOL_UDP
    SOL_UDPLITE

    UDP-Lite (RFC 3828)

    SOL_X25
    SOL_XDP
    SOMAXCONN

    Maximum queue length specifiable by listen.

    SO_ACCEPTCONN
    SO_ATTACH_BPF
    SO_ATTACH_FILTER

    Socket filtering

    SO_ATTACH_REUSEPORT_CBPF
    SO_ATTACH_REUSEPORT_EBPF
    SO_BINDTODEVICE
    SO_BINDTOIFINDEX
    SO_BPF_EXTENSIONS
    SO_BROADCAST
    SO_BSDCOMPAT
    SO_BUSY_POLL
    SO_CNX_ADVICE
    SO_COOKIE
    SO_DEBUG
    SO_DETACH_BPF
    SO_DETACH_FILTER
    SO_DOMAIN
    SO_DONTROUTE
    SO_ERROR
    SO_GET_FILTER
    SO_INCOMING_CPU
    SO_INCOMING_NAPI_ID
    SO_KEEPALIVE
    SO_LINGER
    SO_LOCK_FILTER
    SO_MARK
    SO_MAX_PACING_RATE
    SO_MEMINFO
    SO_NOFCS

    Instruct lower device to use last 4-bytes of skb data as FCS

    SO_NO_CHECK
    SO_OOBINLINE
    SO_PASSCRED

    powerpc only differs in these

    SO_PASSSEC
    SO_PEEK_OFF
    SO_PEERCRED
    SO_PEERGROUPS
    SO_PEERNAME
    SO_PEERSEC
    SO_PRIORITY
    SO_PROTOCOL
    SO_RCVBUF
    SO_RCVBUFFORCE
    SO_RCVLOWAT
    SO_RCVTIMEO
    SO_RCVTIMEO_NEW
    SO_RCVTIMEO_OLD
    SO_REUSEADDR
    SO_REUSEPORT
    SO_RXQ_OVFL
    SO_SECURITY_AUTHENTICATION

    Security levels - as per NRL IPv6 - don't actually do anything

    SO_SECURITY_ENCRYPTION_NETWORK
    SO_SECURITY_ENCRYPTION_TRANSPORT
    SO_SELECT_ERR_QUEUE
    SO_SNDBUF
    SO_SNDBUFFORCE
    SO_SNDLOWAT
    SO_SNDTIMEO
    SO_SNDTIMEO_NEW
    SO_SNDTIMEO_OLD
    SO_TIMESTAMP

    on 64-bit and x32, avoid the ?: operator

    SO_TIMESTAMPING
    SO_TIMESTAMPING_NEW
    SO_TIMESTAMPING_OLD
    SO_TIMESTAMPNS
    SO_TIMESTAMPNS_NEW
    SO_TIMESTAMPNS_OLD
    SO_TIMESTAMP_NEW
    SO_TIMESTAMP_OLD
    SO_TXTIME
    SO_TYPE
    SO_WIFI_STATUS
    SO_ZEROCOPY
    SPLICE_F_FD_IN_FIXED

    sqe->splice_flags extends splice(2) flags the last bit of u32

    SS_CONNECTED

    connected to socket

    SS_CONNECTING

    in process of connecting

    SS_DISCONNECTING

    in process of disconnecting

    SS_FREE

    not allocated

    SS_UNCONNECTED

    unconnected to any socket

    STAT64_HAS_BROKEN_ST_INO
    STATX_ALL

    All currently supported flags

    STATX_ATIME

    Want/got stx_atime

    STATX_ATTR_APPEND

    [I] File is append-only

    STATX_ATTR_AUTOMOUNT

    Dir: Automount trigger

    STATX_ATTR_COMPRESSED

    Attributes to be found in stx_attributes and masked in stx_attributes_mask.

    STATX_ATTR_ENCRYPTED

    [I] File requires key to decrypt in fs

    STATX_ATTR_IMMUTABLE

    [I] File is marked immutable

    STATX_ATTR_NODUMP

    [I] File is not to be dumped

    STATX_BASIC_STATS

    The stuff in the normal stat struct

    STATX_BLOCKS

    Want/got stx_blocks

    STATX_BTIME

    Want/got stx_btime

    STATX_CTIME

    Want/got stx_ctime

    STATX_GID

    Want/got stx_gid

    STATX_INO

    Want/got stx_ino

    STATX_MODE

    Want/got stx_mode & ~S_IFMT

    STATX_MTIME

    Want/got stx_mtime

    STATX_NLINK

    Want/got stx_nlink

    STATX_SIZE

    Want/got stx_size

    STATX_TYPE

    Flags to be stx_mask

    STATX_UID

    Want/got stx_uid

    STATX__RESERVED

    Reserved for future struct statx expansion

    STAT_HAVE_NSEC
    STA_CLK

    clock source (0 = A, 1 = B) (ro)

    STA_CLOCKERR

    clock hardware fault (ro)

    STA_DEL

    delete leap (rw)

    STA_FLL

    select frequency-lock mode (rw)

    STA_FREQHOLD

    hold frequency (rw)

    STA_INS

    insert leap (rw)

    STA_MODE

    mode (0 = PLL, 1 = FLL) (ro)

    STA_NANO

    resolution (0 = us, 1 = ns) (ro)

    STA_PLL

    Status codes (timex.status) enable PLL updates (rw)

    STA_PPSERROR

    PPS signal calibration error (ro)

    STA_PPSFREQ

    enable PPS freq discipline (rw)

    STA_PPSJITTER

    PPS signal jitter exceeded (ro)

    STA_PPSSIGNAL

    PPS signal present (ro)

    STA_PPSTIME

    enable PPS time discipline (rw)

    STA_PPSWANDER

    PPS signal wander exceeded (ro)

    STA_RONLY

    read-only bits

    STA_UNSYNC

    clock unsynchronized (rw)

    STICKY_TIMEOUTS
    SUBCMDMASK

    Command definitions for the 'quotactl' system call. The commands are broken into a main command defined below and a subcommand that is used to convey the type of quota that is being manipulated (see above).

    SUBCMDSHIFT
    SYNC_FILE_RANGE_WAIT_AFTER
    SYNC_FILE_RANGE_WAIT_BEFORE
    SYNC_FILE_RANGE_WRITE
    SYS_ACCEPT4_

    sys_accept4(2)

    SYS_ACCEPT_

    sys_accept(2)

    SYS_BIND_

    sys_bind(2)

    SYS_CONNECT_

    sys_connect(2)

    SYS_GETPEERNAME_

    sys_getpeername(2)

    SYS_GETSOCKNAME_

    sys_getsockname(2)

    SYS_GETSOCKOPT_

    sys_getsockopt(2)

    SYS_LISTEN_

    sys_listen(2)

    SYS_RECVFROM_

    sys_recvfrom(2)

    SYS_RECVMMSG_

    sys_recvmmsg(2)

    SYS_RECVMSG_

    sys_recvmsg(2)

    SYS_RECV_

    sys_recv(2)

    SYS_SECCOMP_

    SIGSYS si_codes seccomp triggered

    SYS_SENDMMSG_

    sys_sendmmsg(2)

    SYS_SENDMSG_

    sys_sendmsg(2)

    SYS_SENDTO_

    sys_sendto(2)

    SYS_SEND_

    sys_send(2)

    SYS_SETSOCKOPT_

    sys_setsockopt(2)

    SYS_SHUTDOWN_

    sys_shutdown(2)

    SYS_SOCKETPAIR_

    sys_socketpair(2)

    SYS_SOCKET_

    sys_socket(2)

    S_DT_MASK
    S_DT_SHIFT

    This is a header for the common implementation of dirent to fs on-disk file type conversion. Although the fs on-disk bits are specific to every file system, in practice, many file systems use the exact same on-disk format to describe the lower 3 file type bits that represent the 7 POSIX file types.

    S_IFBLK
    S_IFCHR
    S_IFDIR
    S_IFIFO
    S_IFLNK
    S_IFMT
    S_IFREG
    S_IFSOCK
    S_IRGRP
    S_IROTH
    S_IRUSR
    S_IRWXG
    S_IRWXO
    S_IRWXU
    S_ISGID
    S_ISUID
    S_ISVTX
    S_IWGRP
    S_IWOTH
    S_IWUSR
    S_IXGRP
    S_IXOTH
    S_IXUSR
    TAB0
    TAB1
    TAB2
    TAB3
    TABDLY
    TCFLSH
    TCGETA
    TCGETS

    These are the most common definitions for tty ioctl numbers. Most of them do not use the recommended _IOC(), but there is probably some source code out there hardcoding the number, so we might as well use them for all new platforms.

    TCGETS2
    TCGETX

    SYS5 TCGETX compatibility

    TCIFLUSH

    tcflush() and TCFLSH use these

    TCIOFF
    TCIOFLUSH
    TCION
    TCOFLUSH
    TCOOFF

    tcflow() and TCXONC use these

    TCOON
    TCP_BPF_IW

    Set TCP initial congestion window

    TCP_BPF_SNDCWND_CLAMP

    Set sndcwnd_clamp

    TCSADRAIN
    TCSAFLUSH
    TCSANOW

    tcsetattr uses these

    TCSBRK
    TCSBRKP

    Needed for POSIX tcsendbreak()

    TCSETA
    TCSETAF
    TCSETAW
    TCSETS
    TCSETS2
    TCSETSF
    TCSETSF2
    TCSETSW
    TCSETSW2
    TCSETX
    TCSETXF
    TCSETXW
    TCXONC
    TIMER_ABSTIME

    The various flags for setting POSIX.1b interval timers:

    TIME_BAD

    bw compat

    TIME_DEL

    delete leap second

    TIME_ERROR

    clock not synchronized

    TIME_INS

    insert leap second

    TIME_OK

    Clock states (time_state) clock synchronized, no leap second

    TIME_OOP

    leap second in progress

    TIME_UPTIME_SEC_MAX

    Located here for timespec[64]_valid_strict Limits for settimeofday():

    TIME_WAIT

    leap second has occurred

    TIOCCBRK

    BSD compatibility

    TIOCCONS
    TIOCEXCL
    TIOCGDEV

    Get primary device node of /dev/console

    TIOCGETD
    TIOCGEXCL

    Get exclusive mode state

    TIOCGICOUNT

    read serial port inline interrupt counts

    TIOCGISO7816
    TIOCGLCKTRMIOS
    TIOCGPGRP
    TIOCGPKT

    Get packet mode state

    TIOCGPTLCK

    Get Pty lock state

    TIOCGPTN

    Get Pty Number (of pty-mux device)

    TIOCGPTPEER

    Safely open the slave

    TIOCGRS485
    TIOCGSERIAL
    TIOCGSID

    Return the session ID of FD

    TIOCGSOFTCAR
    TIOCGWINSZ
    TIOCINQ
    TIOCLINUX
    TIOCMBIC
    TIOCMBIS
    TIOCMGET
    TIOCMIWAIT

    wait for a change on serial input line(s)

    TIOCMSET
    TIOCM_CAR
    TIOCM_CD
    TIOCM_CTS
    TIOCM_DSR
    TIOCM_DTR
    TIOCM_LE

    modem lines

    TIOCM_LOOP
    TIOCM_OUT1
    TIOCM_OUT2
    TIOCM_RI
    TIOCM_RNG
    TIOCM_RTS
    TIOCM_SR
    TIOCM_ST
    TIOCNOTTY
    TIOCNXCL
    TIOCOUTQ
    TIOCPKT
    TIOCPKT_DATA

    Used for packet mode

    TIOCPKT_DOSTOP
    TIOCPKT_FLUSHREAD
    TIOCPKT_FLUSHWRITE
    TIOCPKT_IOCTL
    TIOCPKT_NOSTOP
    TIOCPKT_START
    TIOCPKT_STOP
    TIOCSBRK

    BSD compatibility

    TIOCSCTTY
    TIOCSERCONFIG
    TIOCSERGETLSR

    Get line status register

    TIOCSERGETMULTI

    Get multiport config

    TIOCSERGSTRUCT

    For debugging only

    TIOCSERGWILD
    TIOCSERSETMULTI

    Set multiport config

    TIOCSERSWILD
    TIOCSER_TEMT

    Transmitter physically empty

    TIOCSETD
    TIOCSIG

    pty: generate signal

    TIOCSISO7816
    TIOCSLCKTRMIOS
    TIOCSPGRP
    TIOCSPTLCK

    Lock/unlock Pty

    TIOCSRS485
    TIOCSSERIAL
    TIOCSSOFTCAR
    TIOCSTI
    TIOCSWINSZ
    TIOCVHANGUP
    TOSTOP
    TRAP_BRANCH

    process taken branch trap

    TRAP_BRKPT

    SIGTRAP si_codes process breakpoint

    TRAP_HWBKPT

    hardware breakpoint/watchpoint

    TRAP_TRACE

    process trace trap

    TRAP_UNK

    undiagnosed trap

    UART_CLEAR_FIFO
    UART_NATSEMI
    UART_STARTECH
    UART_USE_FIFO
    UIO_FASTIOV

    UIO_MAXIOV shall be at least 16 1003.1g (5.4.1.1)

    UIO_MAXIOV
    UNAME26

    Flags for bug emulation.

    USEC_PER_MSEC
    USEC_PER_SEC
    USER_NS_INDEX
    UTS_NS_INDEX
    VDISCARD
    VEOF
    VEOL
    VEOL2
    VERASE
    VFS_CAP_FLAGS_EFFECTIVE
    VFS_CAP_REVISION
    VFS_CAP_REVISION_1
    VFS_CAP_REVISION_2
    VFS_CAP_REVISION_3
    VFS_CAP_REVISION_MASK
    VFS_CAP_REVISION_SHIFT
    VFS_CAP_U32
    VFS_CAP_U32_1
    VFS_CAP_U32_2
    VFS_CAP_U32_3
    VINTR

    c_cc characters

    VKILL
    VLNEXT
    VMIN
    VM_BLOCK_DUMP

    block dump mode

    VM_DIRTY_BACKGROUND

    dirty_background_ratio

    VM_DIRTY_EXPIRE_CS

    dirty_expire_centisecs

    VM_DIRTY_RATIO

    dirty_ratio

    VM_DIRTY_WB_CS

    dirty_writeback_centisecs

    VM_DROP_PAGECACHE

    int: nuke lots of pagecache

    VM_HUGETLB_GROUP

    permitted hugetlb group

    VM_HUGETLB_PAGES

    int: Number of available Huge Pages

    VM_LAPTOP_MODE

    vm laptop mode

    VM_LEGACY_VA_LAYOUT

    legacy/compatibility virtual address space layout

    VM_LOWMEM_RESERVE_RATIO

    reservation ratio for lower memory zones

    VM_MAX_MAP_COUNT

    int: Maximum number of mmaps/address-space

    VM_MIN_FREE_KBYTES

    Minimum free kilobytes to maintain

    VM_MIN_SLAB

    Percent pages ignored by zone reclaim

    VM_MIN_UNMAPPED

    Set min percent of unmapped pages

    VM_NR_PDFLUSH_THREADS

    nr_pdflush_threads

    VM_OVERCOMMIT_MEMORY

    Turn off the virtual memory safety limit

    VM_OVERCOMMIT_RATIO

    percent of RAM to allow overcommit in

    VM_PAGEBUF

    struct: Control pagebuf parameters

    VM_PAGE_CLUSTER

    int: set number of pages to swap together

    VM_PANIC_ON_OOM

    panic at out-of-memory

    VM_PERCPU_PAGELIST_FRACTION

    int: fraction of pages in each percpu_pagelist

    VM_SWAPPINESS

    Tendency to steal mapped memory

    VM_SWAP_TOKEN_TIMEOUT

    default time for token time out

    VM_UNUSED1

    CTL_VM names: was: struct: Set vm swapping control

    VM_UNUSED2

    was; int: Linear or sqrt() swapout for hogs

    VM_UNUSED3

    was: struct: Set free page thresholds

    VM_UNUSED4

    Spare

    VM_UNUSED5

    was: struct: Set buffer memory thresholds

    VM_UNUSED7

    was: struct: Set cache memory thresholds

    VM_UNUSED8

    was: struct: Control kswapd behaviour

    VM_UNUSED9

    was: struct: Set page table cache parameters

    VM_VDSO_ENABLED

    map VDSO into new processes?

    VM_VFS_CACHE_PRESSURE

    dcache/icache reclaim pressure

    VM_ZONE_RECLAIM_MODE

    reclaim local zone memory before going off node

    VQUIT
    VREPRINT
    VSTART
    VSTOP
    VSUSP
    VSWTC
    VT0
    VT1
    VTDLY
    VTIME
    VWERASE
    WHOLE_SECONDS
    XATTR_CAPS_SZ
    XATTR_CAPS_SZ_1
    XATTR_CAPS_SZ_2
    XATTR_CAPS_SZ_3
    XATTR_LIST_MAX

    size of extended attribute namelist (64k)

    XATTR_NAME_MAX

    chars in an extended attribute name

    XATTR_SIZE_MAX

    size of an extended attribute value (64k)

    XCASE
    XDP_ABORTED
    XDP_DROP
    XDP_PACKET_HEADROOM
    XDP_PASS
    XDP_REDIRECT
    XDP_TX
    XQM_GRPQUOTA

    system call group quota type

    XQM_MAXQUOTAS
    XQM_PRJQUOTA

    system call project quota type

    XQM_USRQUOTA

    system call user quota type

    XTABS
    _NSIG
    _NSIG_BPW
    _NSIG_WORDS
    _STK_LIM

    Limit the stack by to some sane default: root can always increase this limit if needed.. 8MB seems reasonable.

    __FPE_DECDIV

    decimal division by zero

    __FPE_DECERR

    packed decimal error

    __FPE_DECOVF

    decimal overflow

    __FPE_INVASC

    invalid ASCII digit

    __FPE_INVDEC

    invalid decimal digit

    __ILL_BNDMOD

    bundle-update (modification) in progress

    __ILL_BREAK

    illegal break

    __O_SYNC

    Before Linux 2.6.33 only O_DSYNC semantics were implemented, but using the O_SYNC flag. We continue to use the existing numerical value for O_DSYNC semantics now, but using the correct symbolic name for it. This new value is used to request true Posix O_SYNC semantics. It is defined in this strange way to make sure applications compiled against new headers get at least O_DSYNC semantics on older kernels.

    __O_TMPFILE
    __PERF_SAMPLE_CALLCHAIN_EARLY

    non-ABI; internal use

    __QUOTA_NL_A_MAX
    __QUOTA_NL_C_MAX
    __SO_ACCEPTCON

    performed a listen

    Functions

    FUTEX_OP

    FUTEX_WAKE_OP will perform atomically int oldval = *(int *)UADDR2; *(int *)UADDR2 = oldval OP OPARG; if (oldval CMP CMPARG) wake UADDR2;

    IN_BADCLASS
    IN_CLASSA

    Definitions of the bits in an Internet address integer. On subnets, host and network parts are found according to the subnet mask, not these masks.

    IN_CLASSB
    IN_CLASSC
    IN_CLASSD
    IN_CLASSE
    IN_EXPERIMENTAL
    IN_LOOPBACK
    IN_MULTICAST
    IO

    Used to create numbers.

    IOC
    IOC_DIR

    used to decode ioctl numbers..

    IOC_NR
    IOC_SIZE
    IOC_TYPE
    IOC_TYPECHECK
    IOPRIO_PRIO_CLASS
    IOPRIO_PRIO_DATA
    IOPRIO_PRIO_VALUE
    IOR
    IOR_BAD
    IOW
    IOWR
    IOWR_BAD
    IOW_BAD
    QCMD
    SECCOMP_IO
    SER_ISO7816_T
    S_DT
    XQM_CMD

    Disk quota - quotactl(2) commands for the XFS Quota Manager (XQM). forms first QCMD argument

    XQM_COMMAND

    test if for XFS

    ioprio_valid
    perf_flags

    Type Definitions

    _statfs_word

    Most 64-bit platforms use 'long', while most 32-bit platforms use '__u32'. Yes, they differ in signedness as well as size. Special cases can override it for themselves -- except for S390x, which is just a little too special for us. And MIPS, which I'm not touching with a 10' pole.

    aio_context_t
    arch_si_band_t

    The default "si_band" type is "long", as specified by POSIX. However, some architectures want to override this to "int" for historical compatibility reasons, so we allow that.

    arch_si_clock_t
    be16_t
    be32_t
    be64_t
    blkcnt_t
    blksize_t
    cc_t
    clock_t
    clockid_t
    compat_aio_context_t
    compat_clock_t
    compat_daddr_t
    compat_ino_t
    compat_int_t
    compat_key_t
    compat_loff_t
    compat_long_t
    compat_off_t
    compat_pid_t
    compat_short_t
    compat_size_t

    These types are common across all compat ABIs

    compat_ssize_t
    compat_timer_t
    compat_uint_t
    compat_ulong_t
    compat_uptr_t
    compat_ushort_t
    daddr_t
    dev_t
    file_t
    fmode_t
    fsblkcnt_t
    fsfilcnt_t
    gfp_t
    gid16_t
    gid32_t
    gid_t
    ino64_t
    ino_t
    intptr_t
    ipc_pid_t
    kernel_sa_family_t
    key_perm_t

    key handle permissions mask

    key_serial_t

    key handle serial number

    key_t

    Type of a SYSV IPC key.

    le16_t
    le32_t
    le64_t
    loff_t
    mode_t
    mqd_t
    msqid_ds_t
    nlink_t
    off_t

    anything below here should be completely generic

    old_sigset_t

    not actually used, but required for linux/syscalls.h

    pgoff_t

    The type of an index into the pagecache.

    pid_t
    poll_t
    pthread_key_t
    pthread_once_t
    pthread_spinlock_t
    ptrdiff_t
    qid_t

    Type in which we store ids in memory

    qsize_t

    Type in which we store sizes

    register_t
    regoff_t
    rwf_t

    Flags for preadv2/pwritev2:

    sa_family_t
    sector_t

    The type used for indexing onto a disc or disc partition.

    sighandler_t
    size_t

    Most 32 bit architectures use "unsigned int" size_t, and all 64 bit architectures use "unsigned long" size_t.

    slab_flags_t
    sockaddr_storage_t
    socket_state_t

    socket-state enum.

    socklen_t
    speed_t
    ssize_t
    suseconds_t
    tcflag_t
    time_t
    timer_t
    timeu64_t
    uid16_t
    uid32_t
    uid_t
    uintptr_t
    umode_t
    useconds_t
    user_msghdr_t
    utsname_t
    wctype_t
    wint_t

    Unions

    bpf_attr_getid_id_t
    bpf_attr_t
    bpf_fib_lookup_addr_t
    bpf_fib_lookup_inputs_t

    inputs to lookup

    bpf_flow_keys_addr_t
    bpf_md_end_ptr_t
    bpf_md_ptr_t
    bpf_sock_ops_reply_t
    bpf_sock_tuple_t
    epoll_data_t
    in6_un_t

    SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note Types and definitions for AF_INET6 Linux INET6 implementation

    io_uring_sqe_buf_addr_t
    io_uring_sqe_buf_group_t
    io_uring_sqe_file_off_t
    io_uring_sqe_opt_buf_t
    io_uring_sqe_other_flags_t
    perf_event_attr_config1_t
    perf_event_attr_config2_t
    perf_event_attr_sample_t
    perf_event_attr_wakeup_t
    perf_event_mmap_page_cap_t
    perf_mem_data_src_t
    ptrace_syscall_info_seccomp_t
    rseq_cs_union_t
    semun_t

    arg for semctl system calls.

    sifields_t
    sigev_un_t
    siginfo_t
    sigval_t