linux-sg2042/include/uapi/linux
Jens Axboe c75b1d9421 fs: add fcntl() interface for setting/getting write life time hints
Define a set of write life time hints:

RWH_WRITE_LIFE_NOT_SET	No hint information set
RWH_WRITE_LIFE_NONE	No hints about write life time
RWH_WRITE_LIFE_SHORT	Data written has a short life time
RWH_WRITE_LIFE_MEDIUM	Data written has a medium life time
RWH_WRITE_LIFE_LONG	Data written has a long life time
RWH_WRITE_LIFE_EXTREME	Data written has an extremely long life time

The intent is for these values to be relative to each other, no
absolute meaning should be attached to these flag names.

Add an fcntl interface for querying these flags, and also for
setting them as well:

F_GET_RW_HINT		Returns the read/write hint set on the
			underlying inode.

F_SET_RW_HINT		Set one of the above write hints on the
			underlying inode.

F_GET_FILE_RW_HINT	Returns the read/write hint set on the
			file descriptor.

F_SET_FILE_RW_HINT	Set one of the above write hints on the
			file descriptor.

The user passes in a 64-bit pointer to get/set these values, and
the interface returns 0/-1 on success/error.

Sample program testing/implementing basic setting/getting of write
hints is below.

Add support for storing the write life time hint in the inode flags
and in struct file as well, and pass them to the kiocb flags. If
both a file and its corresponding inode has a write hint, then we
use the one in the file, if available. The file hint can be used
for sync/direct IO, for buffered writeback only the inode hint
is available.

This is in preparation for utilizing these hints in the block layer,
to guide on-media data placement.

/*
 * writehint.c: get or set an inode write hint
 */
 #include <stdio.h>
 #include <fcntl.h>
 #include <stdlib.h>
 #include <unistd.h>
 #include <stdbool.h>
 #include <inttypes.h>

 #ifndef F_GET_RW_HINT
 #define F_LINUX_SPECIFIC_BASE	1024
 #define F_GET_RW_HINT		(F_LINUX_SPECIFIC_BASE + 11)
 #define F_SET_RW_HINT		(F_LINUX_SPECIFIC_BASE + 12)
 #endif

static char *str[] = { "RWF_WRITE_LIFE_NOT_SET", "RWH_WRITE_LIFE_NONE",
			"RWH_WRITE_LIFE_SHORT", "RWH_WRITE_LIFE_MEDIUM",
			"RWH_WRITE_LIFE_LONG", "RWH_WRITE_LIFE_EXTREME" };

int main(int argc, char *argv[])
{
	uint64_t hint;
	int fd, ret;

	if (argc < 2) {
		fprintf(stderr, "%s: file <hint>\n", argv[0]);
		return 1;
	}

	fd = open(argv[1], O_RDONLY);
	if (fd < 0) {
		perror("open");
		return 2;
	}

	if (argc > 2) {
		hint = atoi(argv[2]);
		ret = fcntl(fd, F_SET_RW_HINT, &hint);
		if (ret < 0) {
			perror("fcntl: F_SET_RW_HINT");
			return 4;
		}
	}

	ret = fcntl(fd, F_GET_RW_HINT, &hint);
	if (ret < 0) {
		perror("fcntl: F_GET_RW_HINT");
		return 3;
	}

	printf("%s: hint %s\n", argv[1], str[hint]);
	close(fd);
	return 0;
}

Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2017-06-27 12:05:22 -06:00
..
android uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
byteorder uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
caif uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
can uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
cifs
dvb uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
genwqe
hdlc uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
hsi uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
iio uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
isdn uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
mmc uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
netfilter uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
netfilter_arp uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
netfilter_bridge uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
netfilter_ipv4 uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
netfilter_ipv6 uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
nfsd Kbuild UAPI header export updates for v4.12 2017-05-10 20:45:36 -07:00
raid uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
sched sched/headers: Move various ABI definitions to <uapi/linux/sched/types.h> 2017-03-02 08:42:42 +01:00
spi uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
sunrpc uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
tc_act uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
tc_ematch uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
usb USB: hub: fix SS max number of ports 2017-05-17 11:53:02 +02:00
wimax uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
Kbuild uapi: export all headers under uapi directories 2017-05-11 00:21:54 +09:00
a.out.h
acct.h
adb.h
adfs_fs.h
affs_hardblocks.h
agpgart.h include/uapi/linux/agpgart.h: include stdlib.h in userspace 2015-12-10 12:33:23 +01:00
aio_abi.h fs: Use RWF_* flags for AIO operations 2017-06-20 07:12:03 -06:00
am437x-vpfe.h [media] am437x: include linux/videodev2.h for expanding BASE_VIDIOC_PRIVATE 2015-04-02 18:10:35 -03:00
apm_bios.h
arcfb.h
aspeed-lpc-ctrl.h aspeed-lpc-ctrl: include linux/types.h for uapi header 2017-04-08 17:37:20 +02:00
atalk.h
atm.h
atm_eni.h
atm_he.h
atm_idt77105.h
atm_nicstar.h
atm_tcp.h
atm_zatm.h Revert "include/uapi/linux/atm_zatm.h: include linux/time.h" 2016-11-13 12:35:13 -05:00
atmapi.h
atmarp.h
atmbr2684.h
atmclip.h
atmdev.h
atmioc.h
atmlec.h
atmmpc.h
atmppp.h
atmsap.h
atmsvc.h
audit.h Merge branch 'stable-4.11' of git://git.infradead.org/users/pcmoore/audit 2017-02-21 13:25:50 -08:00
auto_dev-ioctl.h autofs: remove duplicated AUTOFS_DEV_IOCTL_SIZE definition 2017-02-27 18:43:45 -08:00
auto_fs.h autofs: add command enum/macros for root-dir ioctls 2017-02-27 18:43:45 -08:00
auto_fs4.h autofs: add command enum/macros for root-dir ioctls 2017-02-27 18:43:45 -08:00
auxvec.h
ax25.h
b1lli.h
batman_adv.h batman-adv: update copyright years for 2017 2017-01-26 08:34:19 +01:00
baycom.h
bcache.h uapi: includes linux/types.h before exporting files 2017-05-11 00:18:38 +09:00
bcm933xx_hcs.h
bfs_fs.h
binfmts.h
blkpg.h mtd: provide proper 32/64-bit compat_ioctl() support for BLKPG 2015-09-29 13:37:04 -07:00
blktrace_api.h
blkzoned.h blk-zoned: implement ioctls 2016-10-18 10:05:42 -06:00
bpf.h bpf: Add strict alignment flag for BPF_PROG_LOAD. 2017-05-11 14:19:00 -04:00
bpf_common.h
bpf_perf_event.h bpf: introduce BPF_PROG_TYPE_PERF_EVENT program type 2016-09-02 10:46:44 -07:00
bpqether.h net: bpqether.h: remove if_ether.h guard 2016-11-13 00:57:53 -05:00
bsg.h
bt-bmc.h ipmi: add an Aspeed BT IPMI BMC driver 2016-09-29 19:05:06 -05:00
btrfs.h Btrfs: consistent usage of types in balance_args 2017-04-18 14:07:25 +02:00
btrfs_tree.h btrfs_tree.h: fix include from userland 2017-05-11 00:18:38 +09:00
can.h can: raw: raw_setsockopt: limit number of can_filter that can be set 2016-12-07 10:45:57 +01:00
capability.h usb: fix some references for /proc/bus/usb 2017-04-18 16:54:19 +02:00
capi.h
cciss_defs.h
cciss_ioctl.h
cdrom.h
cec-funcs.h [media] cec: fix report_current_latency 2016-12-21 06:59:13 -02:00
cec.h [media] cec.h: small typo fix 2017-03-03 07:24:00 -03:00
cgroupstats.h
chio.h
cm4000_cs.h
cn_proc.h
coda.h
coda_psdev.h
coff.h
connector.h
const.h
coresight-stm.h coresight: stm: adding driver for CoreSight STM component 2016-05-03 14:59:30 -07:00
cramfs_fs.h
cryptouser.h uapi: includes linux/types.h before exporting files 2017-05-11 00:18:38 +09:00
cuda.h
cyclades.h
cycx_cfm.h
dcbnl.h dcb : Fix incorrect documentation for struct dcb_app 2015-06-23 07:00:41 -07:00
dccp.h
devlink.h net/devlink: Add E-Switch encapsulation control 2017-04-22 20:26:37 +03:00
dlm.h
dlm_device.h dlm: fix lvb copy for user locks 2015-08-25 14:41:50 -05:00
dlm_netlink.h
dlm_plock.h
dlmconstants.h
dm-ioctl.h dm: bump DM_VERSION_MINOR in response to target method error code changes 2017-06-09 09:27:55 -06:00
dm-log-userspace.h uapi dm-log-userspace.h: use __u32, __s32, __u64 and __s64 from linux/types.h 2016-11-21 09:52:02 -05:00
dma-buf.h dma-buf: Add ioctls to allow userspace to flush 2016-02-12 16:01:32 +01:00
dn.h
dqblk_xfs.h quota: add new quotactl Q_XGETNEXTQUOTA 2016-02-08 11:21:50 +11:00
edd.h
efs_fs_sb.h
elf-em.h avr32: remove support for AVR32 architecture 2017-05-01 09:27:15 +02:00
elf-fdpic.h
elf.h ARC updates for 4.12 2017-05-09 10:10:15 -07:00
elfcore.h
errno.h
errqueue.h
ethtool.h IB/ipoib: add get_link_ksettings in ethtool 2017-05-04 19:31:46 -04:00
eventpoll.h eventpoll.h: add missing epoll event masks 2017-03-14 09:47:33 +08:00
fadvise.h
falloc.h vfs: add a FALLOC_FL_UNSHARE mode to fallocate to unshare a range of blocks 2016-10-03 09:11:14 -07:00
fanotify.h
fb.h
fcntl.h fs: add fcntl() interface for setting/getting write life time hints 2017-06-27 12:05:22 -06:00
fd.h
fdreg.h
fib_rules.h net: core: add UID to flows, rules, and routes 2016-11-04 14:45:23 -04:00
fiemap.h
filter.h bpf: fix bpf helpers to use skb->mac_header relative offsets 2015-04-16 14:08:49 -04:00
firewire-cdev.h
firewire-constants.h
flat.h
fou.h fou: implement FOU_CMD_GET 2015-04-12 21:25:13 -04:00
fs.h fs: Introduce RWF_NOWAIT and FMODE_AIO_NOWAIT 2017-06-20 07:12:03 -06:00
fsl_hypervisor.h
fsmap.h vfs: add common GETFSMAP ioctl definitions 2017-04-03 15:18:16 -07:00
fuse.h fuse: Add posix ACL support 2016-10-01 07:32:32 +02:00
futex.h
gameport.h
gen_stats.h sched: align nlattr properly when needed 2016-04-26 12:00:49 -04:00
genetlink.h genetlink: use idr to track families 2016-10-27 16:16:09 -04:00
gfs2_ondisk.h gfs2: change gfs2 readdir cookie 2015-12-14 12:19:37 -06:00
gigaset_dev.h
gpio.h gpio: userspace ABI for reading GPIO line events 2016-06-15 09:29:17 +02:00
gsmmux.h tty: linux/gsmmux.h needs linux/types.h 2015-07-23 17:48:43 -07:00
gtp.h gtp: rename SGSN netlink attribute 2017-03-25 20:11:19 -07:00
hash_info.h keys, trusted: select hash algorithm for TPM2 chips 2015-12-20 15:27:12 +02:00
hdlc.h
hdlcdrv.h
hdreg.h
hid.h
hiddev.h
hidraw.h
hpet.h
hsr_netlink.h
hw_breakpoint.h hw_breakpoint: Allow watchpoint of length 3,5,6 and 7 2016-11-18 17:23:17 +00:00
hyperv.h tools: hv: report ENOSPC errors in hv_fcopy_daemon 2015-12-14 19:12:21 -08:00
hysdn_if.h
i2c-dev.h i2c-dev: Fix typo in ioctl name reference 2015-10-23 23:26:43 +02:00
i2c.h i2c: smbus: add SMBus Host Notify support 2016-06-17 13:24:05 +02:00
i2o-dev.h
i8k.h
icmp.h ipv6: RFC 4884 partial support for SIT/GRE tunnels 2016-06-18 22:11:39 -07:00
icmpv6.h
if.h uapi: fix linux/if.h userspace compilation errors 2017-02-22 16:09:04 -05:00
if_addr.h ipv6: introduce IFA_F_STABLE_PRIVACY flag 2015-03-23 22:12:09 -04:00
if_addrlabel.h
if_alg.h
if_arcnet.h arcnet: fix indentation of if_arcnet.h 2015-09-23 08:44:22 +02:00
if_arp.h VSOCK: Add vsockmon tap functions 2017-04-24 12:35:56 -04:00
if_bonding.h
if_bridge.h bridge: uapi: add per vlan tunnel info 2017-02-03 15:21:21 -05:00
if_cablemodem.h
if_eql.h
if_ether.h RDMA: Adding ethertype ETH_P_IBOE 2017-01-10 14:05:11 -05:00
if_fc.h
if_fddi.h
if_frad.h
if_hippi.h
if_infiniband.h
if_link.h xdp: refine xdp api with regards to generic xdp 2017-05-11 21:30:57 -04:00
if_ltalk.h
if_macsec.h macsec: limit ICV length to 16 octets 2016-07-25 10:55:39 -07:00
if_packet.h packet: add PACKET_FANOUT_FLAG_UNIQUEID to assign new fanout group id. 2017-04-24 12:46:00 -04:00
if_phonet.h
if_plip.h
if_ppp.h
if_pppol2tp.h net: l2tp: deprecate PPPOL2TP_MSG_* in favour of L2TP_MSG_* 2016-12-10 23:29:11 -05:00
if_pppox.h include/uapi/linux/if_pppox.h: include linux/in.h and linux/in6.h 2016-08-22 16:25:15 -07:00
if_slip.h
if_team.h
if_tun.h macvtap/tun: cross-endian support for little-endian hosts 2015-06-01 15:48:56 +02:00
if_tunnel.h ip6_tunnel: Allow policy-based routing through tunnels 2017-04-21 13:21:30 -04:00
if_vlan.h
if_x25.h
ife.h net: Introduce ife encapsulation module 2017-02-03 15:16:45 -05:00
igmp.h bridge: sparse fixes in br_ip6_multicast_alloc_query() 2017-01-17 15:22:05 -05:00
ila.h ila: add checksum neutral ILA translations 2016-04-26 01:27:07 -04:00
in.h ipv4: add IP_RECVFRAGSIZE cmsg 2016-11-03 15:41:11 -04:00
in6.h ipv6: add IPV6_RECVFRAGSIZE cmsg 2016-11-03 15:41:11 -04:00
in_route.h
inet_diag.h net: ip, diag -- Add diag interface for raw sockets 2016-10-23 19:35:24 -04:00
inotify.h
input-event-codes.h HID: wacom: generic: add 3 tablet touch keys 2017-03-06 14:06:51 +01:00
input.h HID: sony: Report DS4 motion sensors through a separate device 2017-03-21 15:11:32 +01:00
ioctl.h
ip.h ipv4: add option to drop gratuitous ARP packets 2016-02-11 04:27:35 -05:00
ip6_tunnel.h uapi: fix linux/ip6_tunnel.h userspace compilation errors 2017-02-23 10:46:07 -05:00
ip_vs.h netfilter/ipvs: use nla_put_u64_64bit() 2016-04-25 15:09:11 -04:00
ipc.h
ipmi.h scripts/spelling.txt: add regsiter -> register spelling mistake 2017-05-08 17:15:13 -07:00
ipmi_msgdefs.h
ipsec.h
ipv6.h net: ipv6: Add sysctl for minimum prefix len acceptable in RIOs. 2017-03-22 14:20:54 -07:00
ipv6_route.h net: ipv6: RTF_PCPU should not be settable from userspace 2017-04-21 13:55:33 -04:00
ipx.h include/uapi/linux/ipx.h: fix conflicting defitions with glibc netipx/ipx.h 2016-08-22 16:25:15 -07:00
irda.h
irqnr.h
isdn.h
isdn_divertif.h
isdn_ppp.h
isdnif.h
iso_fs.h
ivtv.h
ivtvfb.h
ixjuser.h
jffs2.h
joystick.h
kcm.h kcm: Kernel Connection Multiplexor module 2016-03-09 16:36:14 -05:00
kcmp.h
kcov.h kernel: add kcov code coverage 2016-03-22 15:36:02 -07:00
kd.h
kdev_t.h
kernel-page-flags.h proc: export idle flag via kpageflags 2015-09-10 13:29:01 -07:00
kernel.h uapi: define DIV_ROUND_UP for userland 2016-03-04 16:10:36 -05:00
kernelcapi.h
kexec.h arm64/kexec: Add core kexec support 2016-06-27 16:31:25 +01:00
keyboard.h
keyctl.h KEYS: DH: add __user annotations to keyctl_kdf_params 2017-06-09 13:29:49 +10:00
kfd_ioctl.h drm/amdkfd: add H/W debugger IOCTL set definitions 2015-06-03 11:32:07 +03:00
kvm.h KVM/ARM Changes for v4.12. 2017-04-27 17:33:14 +02:00
kvm_para.h KVM: x86: add KVM_HC_CLOCK_PAIRING hypercall 2017-02-07 18:16:45 +01:00
l2tp.h uapi: fix linux/if_pppol2tp.h userspace compilation errors 2017-02-14 22:18:05 -05:00
libc-compat.h include/uapi/linux/ipx.h: fix conflicting defitions with glibc netipx/ipx.h 2016-08-22 16:25:15 -07:00
lightnvm.h lightnvm: allow to init targets on factory mode 2017-04-16 10:06:25 -06:00
limits.h
lirc.h [media] lirc.h: remove several unused ioctls 2016-07-11 10:49:52 -03:00
llc.h uapi: fix linux/llc.h userspace compilation error 2017-02-23 10:46:08 -05:00
loop.h loop: support 4k physical blocksize 2017-06-08 08:40:00 -06:00
lp.h
lwtunnel.h bpf: BPF for lightweight tunnel infrastructure 2016-12-02 10:51:49 -05:00
magic.h x86/intel_rdt: Add basic resctrl filesystem support 2016-10-30 19:10:14 -06:00
major.h docs: fix locations of several documents that got moved 2016-10-24 08:12:35 -02:00
map_to_7segment.h
matroxfb.h
mdio.h
media-bus-format.h media: uapi: Add RGB and YUV bus formats for Synopsys HDMI TX Controller 2017-04-03 11:45:08 -04:00
media.h [media] v4l2-core: Add support for touch devices 2016-08-23 16:28:04 -03:00
mei.h mei: add async event notification ioctls 2015-08-03 17:30:00 -07:00
membarrier.h sys_membarrier(): system-wide memory barrier (generic, x86) 2015-09-11 15:21:34 -07:00
memfd.h
mempolicy.h mm: convert p[te|md]_numa users to p[te|md]_protnone_numa 2015-02-12 18:54:08 -08:00
meye.h
mic_common.h misc: mic: Update MIC host daemon with COSM changes 2015-10-04 12:54:54 +01:00
mic_ioctl.h
mii.h net: Add mask for Control register 10Mbps speed 2016-08-12 16:57:20 -07:00
minix_fs.h
mman.h
mmtimer.h
module.h
mpls.h mpls: Packet stats 2017-01-17 14:38:43 -05:00
mpls_iptunnel.h mpls: allow TTL propagation from IP packets to be configured 2017-03-13 15:29:22 -07:00
mqueue.h uapi: mqueue.h: add missing linux/types.h include 2017-02-24 17:46:56 -08:00
mroute.h uapi: fix linux/mroute.h userspace compilation errors 2017-02-19 18:15:12 -05:00
mroute6.h uapi: fix linux/mroute6.h userspace compilation errors 2017-02-19 18:15:12 -05:00
msdos_fs.h
msg.h
mtio.h
n_r3964.h
nbd-netlink.h nbd: add a status netlink command 2017-04-17 09:58:42 -06:00
nbd.h nbd: add FUA op support 2017-05-30 08:20:25 -06:00
ncp.h
ncp_fs.h
ncp_mount.h
ncp_no.h
ndctl.h libnvdimm: handle locked label storage areas 2017-05-04 15:41:39 -07:00
neighbour.h vxlan: support fdb and learning in COLLECT_METADATA mode 2017-02-03 15:21:21 -05:00
net.h
net_dropmon.h
net_namespace.h
net_tstamp.h tcp: SOF_TIMESTAMPING_OPT_STATS option for SO_TIMESTAMPING 2016-11-30 10:04:25 -05:00
netconf.h net: mpls: Add support for netconf 2017-02-20 11:13:37 -05:00
netdevice.h
netfilter.h uapi: stop including linux/sysctl.h in uapi/linux/netfilter.h 2017-02-23 21:51:39 +01:00
netfilter_arp.h
netfilter_bridge.h netfilter: fix include files for compilation 2015-11-23 17:54:38 +01:00
netfilter_decnet.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h netlink: allow sending extended ACK with cookie on success 2017-04-13 13:58:21 -04:00
netlink_diag.h netlink/diag: report flags for netlink sockets 2017-04-05 07:13:56 -07:00
netrom.h
nfc.h NFC: netlink: Add missing NFC_ATTR comments 2015-10-27 03:55:10 +01:00
nfs.h nfs: use btrfs ioctl defintions for clone 2015-11-23 21:53:08 -05:00
nfs2.h
nfs3.h
nfs4.h nfs: add a new NFS4_OPEN_RESULT_MAY_NOTIFY_LOCK constant 2016-09-26 15:20:37 -04:00
nfs4_mount.h
nfs_fs.h
nfs_idmap.h NFS: Move nfs_idmap.h into fs/nfs/ 2015-04-23 15:16:14 -04:00
nfs_mount.h
nfsacl.h nfsd: Add macro NFS_ACL_MASK for ACL 2015-07-20 14:58:46 -04:00
nilfs2_api.h nilfs2: move ioctl interface and disk layout to uapi separately 2016-08-02 19:35:21 -04:00
nilfs2_ondisk.h nilfs2: move ioctl interface and disk layout to uapi separately 2016-08-02 19:35:21 -04:00
nl80211.h nl80211: add support for BSSIDs in scheduled scan matchsets 2017-04-26 23:17:39 +02:00
nsfs.h nsfs: Add an ioctl() to return owner UID of a userns 2017-02-03 14:35:43 +13:00
nubus.h nubus: Add MVC and VSC video card definitions 2017-04-20 09:54:24 +02:00
nvme_ioctl.h NVMe: Allow user initiated rescan 2016-05-17 17:14:21 -06:00
nvram.h
omap3isp.h
omapfb.h
oom.h
openvswitch.h openvswitch: Add eventmask support to CT action. 2017-04-24 13:53:25 -04:00
packet_diag.h uapi: fix linux/packet_diag.h userspace compilation error 2017-03-09 13:22:28 -08:00
param.h
parport.h
patchkey.h
pci.h
pci_regs.h pci-v4.12-changes 2017-05-08 19:03:25 -07:00
pcitest.h misc: Add host side PCI driver for PCI test function device 2017-04-28 10:23:19 -05:00
perf_event.h powerpc updates for 4.12 part 1. 2017-05-05 11:36:44 -07:00
personality.h
pfkeyv2.h
pg.h
phantom.h
phonet.h
pkt_cls.h net: sched: add helpers to handle extended actions 2017-05-02 15:33:54 -04:00
pkt_sched.h mqprio: Change handling of hw u8 to allow for multiple hardware offload modes 2017-03-15 15:20:27 -07:00
pktcdvd.h
pmu.h
poll.h
posix_acl.h posix_acl: uapi header split 2016-09-27 21:52:00 -04:00
posix_acl_xattr.h posix_acl: uapi header split 2016-09-27 21:52:00 -04:00
posix_types.h
ppdev.h
ppp-comp.h
ppp-ioctl.h
ppp_defs.h
pps.h pps: fix padding issue with PPS_FETCH for ioctl_compat 2017-03-17 15:10:49 +09:00
pr.h uapi: includes linux/types.h before exporting files 2017-05-11 00:18:38 +09:00
prctl.h capabilities: ambient capabilities 2015-09-04 16:54:41 -07:00
psample.h net: Introduce psample, a new genetlink channel for packet sampling 2017-01-24 13:44:28 -05:00
psci.h drivers: firmware: psci: add system suspend support 2015-10-02 14:35:17 +01:00
ptp_clock.h ptp: Add PTP_SYS_OFFSET_PRECISE for driver crosstimestamping 2016-03-03 14:23:43 -08:00
ptrace.h seccomp, ptrace: add support for dumping seccomp filters 2015-10-27 19:55:13 -07:00
qnx4_fs.h
qnxtypes.h
qrtr.h uapi: includes linux/types.h before exporting files 2017-05-11 00:18:38 +09:00
quota.h fs/quota: use nla_put_u64_64bit() 2016-04-26 12:00:48 -04:00
radeonfb.h
random.h
raw.h
rds.h uapi: fix linux/rds.h userspace compilation errors 2017-02-23 10:55:08 -05:00
reboot.h
reiserfs_fs.h
reiserfs_xattr.h
resource.h
rfkill.h rfkill: Update userspace API documentation 2016-02-24 09:04:25 +01:00
rio_cm_cdev.h rapidio: add RapidIO channelized messaging driver 2016-08-02 19:35:31 -04:00
rio_mport_cdev.h rapidio/mport_cdev: fix uapi type definitions 2016-05-05 17:38:53 -07:00
romfs_fs.h
rose.h
route.h
rpmsg.h rpmsg: Driver for user space endpoint interface 2017-01-18 10:43:15 -08:00
rtc.h
rtnetlink.h rtnetlink: Add RTM_DELNETCONF 2017-03-28 22:32:42 -07:00
scc.h
sched.h sched: new clone flag CLONE_NEWCGROUP for cgroup namespace 2016-02-16 13:04:58 -05:00
scif_ioctl.h misc: mic: SCIF RMA header file and IOCTL changes 2015-10-04 12:54:54 +01:00
screen_info.h efifb: Add support for 64-bit frame buffer addresses 2015-10-12 14:20:06 +01:00
sctp.h sctp: add SCTP_PR_STREAM_STATUS sockopt for prsctp 2017-04-03 14:52:35 -07:00
sdla.h
seccomp.h
securebits.h capabilities: add a securebit to disable PR_CAP_AMBIENT_RAISE 2015-09-04 16:54:41 -07:00
sed-opal.h uapi: sed-opal fix IOW for activate lsp to use correct struct 2017-02-14 19:47:16 -07:00
seg6.h uapi: fix linux/seg6.h and linux/seg6_iptunnel.h userspace compilation errors 2017-02-23 10:55:08 -05:00
seg6_genl.h ipv6: sr: add code base for control plane support of SR-IPv6 2016-11-09 20:40:06 -05:00
seg6_hmac.h ipv6: sr: add missing Kbuild export for header files 2017-01-16 14:47:21 -05:00
seg6_iptunnel.h uapi: fix linux/seg6.h and linux/seg6_iptunnel.h userspace compilation errors 2017-02-23 10:55:08 -05:00
selinux_netlink.h
sem.h
serial.h serial: support 16-bit register interface for console 2015-12-13 19:59:48 -08:00
serial_core.h serial: 8250: Add new port type for TI DA8xx/66AK2x 2017-01-12 11:51:25 +01:00
serial_reg.h serial: exar: Move register defines from uapi header to consumer site 2017-02-10 15:13:26 +01:00
serio.h [media] serio.h: add SERIO_RAINSHADOW_CEC ID 2017-04-10 12:34:01 -03:00
shm.h
signal.h signals/sigaltstack: Change SS_AUTODISARM to (1U << 31) 2016-05-04 08:34:14 +02:00
signalfd.h
smc.h smc: establish pnet table management 2017-01-09 16:07:38 -05:00
smc_diag.h smc_diag.h: fix include from userland 2017-05-11 00:18:39 +09:00
smiapp.h
snmp.h net/tcp_fastopen: Add snmp counter for blackhole detection 2017-04-24 14:27:17 -04:00
sock_diag.h sock_diag: add SK_MEMINFO_DROPS 2016-04-04 22:11:20 -04:00
socket.h
sockios.h driver: tun: Use new macro SOCK_IOC_TYPE instead of literal number 0x89 2016-10-31 10:56:47 -04:00
sonet.h
sonypi.h
sound.h
soundcard.h
stat.h uapi: change the type of struct statx_timestamp.tv_nsec to unsigned 2017-04-26 21:19:05 -04:00
stddef.h uapi/linux/stddef.h: Provide __always_inline to userspace headers 2016-03-30 12:50:17 +02:00
stm.h stm class: Introduce an abstraction for System Trace Module devices 2015-10-04 20:28:58 +01:00
string.h
suspend_ioctls.h
swab.h byteswap: try to avoid __builtin_constant_p gcc bug 2016-05-05 17:38:53 -07:00
switchtec_ioctl.h switchtec: Add IOCTLs to the Switchtec driver 2017-04-12 12:23:37 -05:00
sync_file.h dma-buf/sync_file: fix documentation error 2016-09-20 18:12:38 +05:30
synclink.h
sysctl.h net: Remove NET_CORE_BUDGET_USECS from sysctl binary interface. 2017-04-21 15:59:52 -04:00
sysinfo.h
target_core_user.h uapi: fix linux/target_core_user.h userspace compilation errors 2017-02-18 21:44:59 -08:00
taskstats.h
tcp.h tcp: record pkts sent and retransmistted 2017-01-29 19:17:23 -05:00
tcp_metrics.h libnl: nla_put_msecs(): align on a 64-bit area 2016-04-23 20:13:24 -04:00
tee.h tee: generic TEE subsystem 2017-03-09 15:42:33 +01:00
telephony.h
termios.h
thermal.h
time.h
timerfd.h timerfd: export defines to userspace 2017-01-10 18:31:55 -08:00
times.h
timex.h
tiocl.h
tipc.h tipc: make replicast a user selectable option 2017-01-20 12:10:17 -05:00
tipc_config.h
tipc_netlink.h tipc: add the ability to get UDP options via netlink 2016-08-26 21:38:41 -07:00
toshiba.h toshiba_acpi: Add /dev/toshiba_acpi device 2015-07-24 14:15:10 -07:00
tty.h NFC: nci: add generic uart support 2015-06-11 23:37:37 +02:00
tty_flags.h tty: core: Undefine ASYNC_* flags superceded by TTY_PORT* flags 2016-04-30 09:26:55 -07:00
types.h linux/types.h: enable endian checks for all sparse builds 2016-12-16 00:13:39 +02:00
udf_fs_i.h
udp.h gtp: add initial driver for datapath of GPRS Tunneling Protocol (GTP-U) 2016-05-10 12:25:04 -04:00
uhid.h
uinput.h Input: uinput - rework ABS validation 2015-12-18 17:48:51 -08:00
uio.h
uleds.h leds: Introduce userspace LED class driver 2016-11-22 12:07:02 +01:00
ultrasound.h
un.h unix: add ioctl to open a unix socket file with O_PATH 2017-02-02 21:58:02 -05:00
unistd.h
unix_diag.h
usbdevice_fs.h usb: devio: Add ioctl to disallow detaching kernel USB drivers. 2016-03-05 12:05:01 -08:00
usbip.h
userfaultfd.h userfaultfd: non-cooperative: rollback userfaultfd_exit 2017-03-09 17:01:09 -08:00
userio.h Input: add userio module 2015-10-27 18:55:31 -07:00
utime.h
utsname.h
uuid.h uuid: rename uuid types 2017-06-05 16:58:59 +02:00
uvcvideo.h
v4l2-common.h [media] media: v4l: Dual license v4l2-common.h under GPL v2 and BSD licenses 2016-02-01 08:47:05 -02:00
v4l2-controls.h [media] v4l: ctrls: Add deinterlacing mode control 2016-11-16 16:16:08 -02:00
v4l2-dv-timings.h [media] v4l2-dv-timings: add VICs and picture aspect ratio 2016-11-16 15:13:18 -02:00
v4l2-mediabus.h [media] videodev2.h: add support for transfer functions 2015-06-05 11:45:45 -03:00
v4l2-subdev.h [media] v4l2-subdev.h: add 'which' field for the enum structs 2015-03-23 11:44:35 -07:00
veth.h
vfio.h vfio: ccw: realize VFIO_DEVICE_G(S)ET_IRQ_INFO ioctls 2017-03-31 12:55:09 +02:00
vfio_ccw.h vfio: ccw: introduce ccw_io_region 2017-03-31 12:55:06 +02:00
vhost.h vhost: remove unused feature bit 2016-12-16 00:13:38 +02:00
videodev2.h [media] videodev.h: add V4L2_CTRL_FLAG_MODIFY_LAYOUT 2017-04-14 22:54:01 -03:00
virtio_9p.h
virtio_balloon.h virtio_balloon: export 'available' memory to balloon statistics 2016-03-17 15:09:34 -07:00
virtio_blk.h virtio_blk: VIRTIO_BLK_F_WCE->VIRTIO_BLK_F_FLUSH 2016-03-02 17:01:59 +02:00
virtio_config.h virtio: new feature to detect IOMMU device quirk 2016-08-01 21:44:52 +03:00
virtio_console.h
virtio_crypto.h crypto: add virtio-crypto driver 2016-12-16 00:13:32 +02:00
virtio_gpu.h include/uapi/linux/virtio_gpu.h: use __u8 from <linux/types.h> 2015-12-10 12:33:23 +01:00
virtio_ids.h crypto: add virtio-crypto driver 2016-12-16 00:13:32 +02:00
virtio_input.h Add virtio-input driver. 2015-03-29 12:13:52 +10:30
virtio_mmio.h virtio_mmio: expose header to userspace 2017-02-27 16:31:23 +02:00
virtio_net.h virtio_net: add _UAPI prefix to virtio_net header guards 2016-06-10 23:03:55 -07:00
virtio_pci.h Revert "virtio_pci: don't duplicate the msix_enable flag in struct pci_dev" 2017-04-11 00:28:41 +03:00
virtio_ring.h virtio: Fix typecast of pointer in vring_init() 2015-07-07 14:27:04 +03:00
virtio_rng.h
virtio_scsi.h uapi/virtio_scsi: allow overriding CDB/SENSE size 2015-03-13 15:55:43 +10:30
virtio_types.h linux: drop __bitwise__ everywhere 2016-12-16 00:13:41 +02:00
virtio_vsock.h virtio-vsock: fix include guard typo 2016-08-09 13:42:38 +03:00
vm_sockets.h
vsockmon.h VSOCK: Add vsockmon device 2017-04-24 12:35:56 -04:00
vt.h tty: vt, remove reduntant check 2016-04-30 09:26:55 -07:00
vtpm_proxy.h tpm, tpm_vtpm_proxy: add kdoc comments for VTPM_PROXY_IOC_NEW_DEV 2016-11-28 01:31:31 +02:00
wait.h
wanrouter.h
watchdog.h
wil6210_uapi.h
wimax.h
wireless.h wext: reformat struct/union declarations 2016-06-09 10:14:39 +02:00
x25.h
xattr.h
xfrm.h xfrm: Add an IPsec hardware offloading API 2017-04-14 10:06:10 +02:00
xilinx-v4l2-controls.h [media] v4l: xilinx: Add Test Pattern Generator driver 2015-04-03 01:04:18 -03:00
zorro.h
zorro_ids.h