android_kernel_xiaomi_sm8450/include/uapi/linux
Minchan Kim 48b4800a1c zsmalloc: page migration support
This patch introduces run-time migration feature for zspage.

For migration, VM uses page.lru field so it would be better to not use
page.next field which is unified with page.lru for own purpose.  For
that, firstly, we can get first object offset of the page via runtime
calculation instead of using page.index so we can use page.index as link
for page chaining instead of page.next.

In case of huge object, it stores handle to page.index instead of next
link of page chaining because huge object doesn't need to next link for
page chaining.  So get_next_page need to identify huge object to return
NULL.  For it, this patch uses PG_owner_priv_1 flag of the page flag.

For migration, it supports three functions

* zs_page_isolate

It isolates a zspage which includes a subpage VM want to migrate from
class so anyone cannot allocate new object from the zspage.

We could try to isolate a zspage by the number of subpage so subsequent
isolation trial of other subpage of the zpsage shouldn't fail.  For
that, we introduce zspage.isolated count.  With that, zs_page_isolate
can know whether zspage is already isolated or not for migration so if
it is isolated for migration, subsequent isolation trial can be
successful without trying further isolation.

* zs_page_migrate

First of all, it holds write-side zspage->lock to prevent migrate other
subpage in zspage.  Then, lock all objects in the page VM want to
migrate.  The reason we should lock all objects in the page is due to
race between zs_map_object and zs_page_migrate.

  zs_map_object				zs_page_migrate

  pin_tag(handle)
  obj = handle_to_obj(handle)
  obj_to_location(obj, &page, &obj_idx);

					write_lock(&zspage->lock)
					if (!trypin_tag(handle))
						goto unpin_object

  zspage = get_zspage(page);
  read_lock(&zspage->lock);

If zs_page_migrate doesn't do trypin_tag, zs_map_object's page can be
stale by migration so it goes crash.

If it locks all of objects successfully, it copies content from old page
to new one, finally, create new zspage chain with new page.  And if it's
last isolated subpage in the zspage, put the zspage back to class.

* zs_page_putback

It returns isolated zspage to right fullness_group list if it fails to
migrate a page.  If it find a zspage is ZS_EMPTY, it queues zspage
freeing to workqueue.  See below about async zspage freeing.

This patch introduces asynchronous zspage free.  The reason to need it
is we need page_lock to clear PG_movable but unfortunately, zs_free path
should be atomic so the apporach is try to grab page_lock.  If it got
page_lock of all of pages successfully, it can free zspage immediately.
Otherwise, it queues free request and free zspage via workqueue in
process context.

If zs_free finds the zspage is isolated when it try to free zspage, it
delays the freeing until zs_page_putback finds it so it will free free
the zspage finally.

In this patch, we expand fullness_list from ZS_EMPTY to ZS_FULL.  First
of all, it will use ZS_EMPTY list for delay freeing.  And with adding
ZS_FULL list, it makes to identify whether zspage is isolated or not via
list_empty(&zspage->list) test.

[minchan@kernel.org: zsmalloc: keep first object offset in struct page]
  Link: http://lkml.kernel.org/r/1465788015-23195-1-git-send-email-minchan@kernel.org
[minchan@kernel.org: zsmalloc: zspage sanity check]
  Link: http://lkml.kernel.org/r/20160603010129.GC3304@bbox
Link: http://lkml.kernel.org/r/1464736881-24886-12-git-send-email-minchan@kernel.org
Signed-off-by: Minchan Kim <minchan@kernel.org>
Cc: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2016-07-26 16:19:19 -07:00
..
android android: uapi: binder.h 2014-10-20 10:30:15 +08:00
byteorder include/uapi/linux/byteorder, swab: force inlining of some byteswap operations 2016-03-17 15:09:34 -07:00
caif
can can: avoid using timeval for uapi 2015-10-13 17:42:34 +02:00
cifs
dvb [media] include/uapi/linux/dvb/video.h: remove stdint.h include 2015-11-19 08:18:38 -02:00
genwqe GenWQE: Update author information 2014-09-23 23:15:46 -07:00
hdlc
hsi HSI: cmt_speech: fix timestamp interface 2015-06-23 02:40:03 +02:00
iio iio: electricalconductivity: add IIO_ELECTRICALCONDUCTIVITY type 2016-05-29 20:03:21 +01:00
isdn
mmc mmc: block: Add new ioctl to send multi commands 2015-10-26 16:00:00 +01:00
netfilter netfilter: xt_SYNPROXY: include missing <linux/types.h> 2016-06-17 13:47:40 +02:00
netfilter_arp netfilter: fix include files for compilation 2015-11-23 17:54:38 +01:00
netfilter_bridge netfilter: fix include files for compilation 2015-11-23 17:54:38 +01:00
netfilter_ipv4 netfilter: fix include files for compilation 2015-11-23 17:54:38 +01:00
netfilter_ipv6 netfilter: fix include files for compilation 2015-11-23 17:54:38 +01:00
nfsd nfsd: eliminate NFSD_DEBUG 2015-04-21 16:16:02 -04:00
raid drivers: md: use ktime_get_real_seconds() 2016-01-06 11:39:53 +11:00
spi
sunrpc
tc_act Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-05-15 13:32:48 -04:00
tc_ematch
usb USB: PD: additional feature selectors 2016-04-19 04:33:15 +09:00
wimax
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
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
atalk.h
atm_eni.h
atm_he.h
atm_idt77105.h
atm_nicstar.h
atm_tcp.h
atm_zatm.h atm: remove 'struct zatm_t_hist' 2015-10-05 03:16:46 -07:00
atm.h
atmapi.h
atmarp.h
atmbr2684.h
atmclip.h
atmdev.h
atmioc.h
atmlec.h
atmmpc.h
atmppp.h
atmsap.h
atmsvc.h
audit.h audit: stop an old auditd being starved out by a new auditd 2016-01-25 18:04:15 -05:00
auto_fs4.h autofs4: fix some white space errors 2016-03-15 16:55:16 -07:00
auto_fs.h autofs4: fix some white space errors 2016-03-15 16:55:16 -07:00
auxvec.h
ax25.h
b1lli.h
baycom.h
bcache.h
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
bpf_common.h net: filter: move common defines into bpf_common.h 2014-10-14 16:06:45 -04:00
bpf.h bpf: direct packet access 2016-05-06 16:01:53 -04:00
bpqether.h
bsg.h block SG_IO: add SG_FLAG_Q_AT_HEAD flag 2014-07-01 10:48:05 -06:00
btrfs_tree.h btrfs: uapi/linux/btrfs_tree.h, use __u8 and __u64 2016-04-28 11:06:41 +02:00
btrfs.h btrfs: Use __u64 in exported linux/btrfs.h. 2016-05-30 13:50:02 +02:00
can.h can.h: make padding given by gcc explicit 2015-05-06 08:03:19 +02:00
capability.h
capi.h
cciss_defs.h
cciss_ioctl.h
cdrom.h
cgroupstats.h
chio.h
cm4000_cs.h
cn_proc.h
coda_psdev.h
coda.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 crypto: user - Add CRYPTO_MSG_DELRNG 2015-06-22 15:49:27 +08: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 devlink: implement shared buffer occupancy monitoring interface 2016-04-14 16:22:03 -04:00
dlm_device.h dlm: fix lvb copy for user locks 2015-08-25 14:41:50 -05:00
dlm_netlink.h
dlm_plock.h
dlm.h
dlmconstants.h dlm: adopt orphan locks 2014-11-19 14:48:02 -06:00
dm-ioctl.h dm: add support for passing through persistent reservations 2015-10-31 19:05:59 -04:00
dm-log-userspace.h
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 include/uapi/linux/elf-em.h: remove v850 2016-03-17 15:09:34 -07:00
elf-fdpic.h
elf.h Elf: add livepatch-specific Elf constants 2016-04-01 15:00:10 +02:00
elfcore.h
errno.h
errqueue.h net-timestamp: ACK timestamp for bytestreams 2014-08-05 16:35:54 -07:00
ethtool.h ethtool: add support for 25G/50G/100G speed modes 2016-05-25 12:26:54 -07:00
eventpoll.h epoll: add EPOLLEXCLUSIVE flag 2016-01-20 17:09:18 -08:00
fadvise.h
falloc.h fs: Add support FALLOC_FL_INSERT_RANGE for fallocate 2015-03-25 15:07:05 +11:00
fanotify.h
fb.h
fcntl.h shm: add sealing API 2014-08-08 15:57:31 -07:00
fd.h
fdreg.h
fib_rules.h libnl: nla_put_be64(): align on a 64-bit area 2016-04-23 20:13:24 -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 libnvdimm for 4.7 2016-05-23 11:18:01 -07:00
fsl_hypervisor.h
fuse.h fuse: serialize dirops by default 2016-06-30 13:10:49 +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 openvswitch: allow management from inside user namespaces 2016-02-11 09:53:19 -05:00
gfs2_ondisk.h gfs2: change gfs2 readdir cookie 2015-12-14 12:19:37 -06:00
gigaset_dev.h
gpio.h gpio: uapi: use 0xB4 as ioctl() major 2016-03-10 16:02:52 +07:00
gsmmux.h tty: linux/gsmmux.h needs linux/types.h 2015-07-23 17:48:43 -07:00
gtp.h gtp: #define _UAPI_LINUX_GTP_H_ and not _UAPI_LINUX_GTP_H__ 2016-06-07 16:25:49 -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
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: guarantee that I2C_M_RD will be 0x0001 forever 2016-04-11 18:54:59 +02:00
i2o-dev.h
i8k.h i8k: uapi: Introduce define for new highest fan speed 2014-07-09 16:41:36 -07:00
icmp.h
icmpv6.h
if_addr.h ipv6: introduce IFA_F_STABLE_PRIVACY flag 2015-03-23 22:12:09 -04:00
if_addrlabel.h
if_alg.h crypto: af_alg - add user space interface for AEAD 2014-12-05 23:56:55 +08:00
if_arcnet.h arcnet: fix indentation of if_arcnet.h 2015-09-23 08:44:22 +02:00
if_arp.h
if_bonding.h
if_bridge.h bridge: netlink: export per-vlan stats 2016-05-02 22:27:06 -04:00
if_cablemodem.h
if_eql.h
if_ether.h net/hsr: Added support for HSR v1 2016-04-15 17:06:48 -04:00
if_fc.h
if_fddi.h
if_frad.h
if_hippi.h
if_infiniband.h
if_link.h gtp: add initial driver for datapath of GPRS Tunneling Protocol (GTP-U) 2016-05-10 12:25:04 -04:00
if_ltalk.h
if_macsec.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-05-09 15:59:24 -04:00
if_packet.h packet: add extended BPF fanout mode 2015-08-17 14:22:48 -07:00
if_phonet.h
if_plip.h
if_ppp.h
if_pppol2tp.h
if_pppox.h
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 ip_gre: Add support to collect tunnel metadata. 2015-08-10 14:03:54 -07:00
if_vlan.h
if_x25.h
if.h uapi glibc compat: fix compile errors when glibc net/if.h included before linux/if.h 2016-05-09 21:29:31 -04:00
igmp.h
ila.h ila: add checksum neutral ILA translations 2016-04-26 01:27:07 -04:00
in6.h ipv6: add IPV6_HDRINCL option for raw sockets 2015-12-17 15:12:28 -05:00
in_route.h
in.h api: fix compatibility of linux/in.h with netinet/in.h 2015-06-29 18:56:21 -07:00
inet_diag.h sock_diag: align nlattr properly when needed 2016-04-26 12:00:48 -04:00
inotify.h
input-event-codes.h Input: add SW_PEN_INSERTED define 2016-06-29 09:51:03 -07:00
input.h Input: add BUS_CEC type 2016-06-18 10:32:28 -07:00
ioctl.h
ip6_tunnel.h
ip_vs.h netfilter/ipvs: use nla_put_u64_64bit() 2016-04-25 15:09:11 -04:00
ip.h ipv4: add option to drop gratuitous ARP packets 2016-02-11 04:27:35 -05:00
ipc.h
ipmi_msgdefs.h
ipmi.h
ipsec.h
ipv6_route.h ipv6: Create percpu rt6_info 2015-05-25 13:25:35 -04:00
ipv6.h Revert "ipv6: Revert optional address flusing on ifdown." 2016-04-26 11:47:41 -04:00
ipx.h
irda.h
irqnr.h
isdn_divertif.h
isdn_ppp.h
isdn.h
isdnif.h
iso_fs.h
ivtv.h
ivtvfb.h
ixjuser.h
jffs2.h
joystick.h
Kbuild uapi: export lirc.h header 2016-07-15 14:54:27 +09:00
kcm.h kcm: Kernel Connection Multiplexor module 2016-03-09 16:36:14 -05:00
kcmp.h kcmp: Move kcmp.h into uapi 2014-12-02 13:52:53 -07:00
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 kexec: Fix make headers_check 2015-02-17 14:34:51 -08:00
keyboard.h
keyctl.h KEYS: Add KEYCTL_DH_COMPUTE command 2016-04-12 19:54:58 +01:00
kfd_ioctl.h drm/amdkfd: add H/W debugger IOCTL set definitions 2015-06-03 11:32:07 +03:00
kvm_para.h
kvm.h kvm: introduce KVM_MAX_VCPU_ID 2016-05-11 22:37:54 +02:00
l2tp.h l2tp: use nla_put_u64_64bit() 2016-04-25 15:09:10 -04:00
libc-compat.h uapi glibc compat: fix compilation when !__USE_MISC in glibc 2016-05-20 19:57:22 -04:00
lightnvm.h lightnvm: introduce factory reset 2016-01-12 08:21:18 -07:00
limits.h
lirc.h [media] bz#75751: Move internal header file lirc.h to uapi/ 2015-11-17 06:47:43 -02:00
llc.h
loop.h block: loop: introduce ioctl command of LOOP_SET_DIRECT_IO 2015-09-23 11:01:16 -06:00
lp.h
lwtunnel.h libnl: nla_put_be64(): align on a 64-bit area 2016-04-23 20:13:24 -04:00
magic.h zsmalloc: page migration support 2016-07-26 16:19:19 -07:00
major.h
map_to_7segment.h
matroxfb.h
mdio.h
media-bus-format.h Merge branch 'drm-next-merged' of git://people.freedesktop.org/~airlied/linux into v4l_for_linus 2015-04-21 09:44:55 -03:00
media.h Merge commit '840f5b0572ea' into v4l_for_linus 2016-03-15 07:48:28 -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 shm: add memfd_create() syscall 2014-08-08 15:57:31 -07:00
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
minix_fs.h
mman.h
mmtimer.h
module.h
mpls_iptunnel.h mpls: ip tunnel support 2015-07-21 10:39:05 -07:00
mpls.h mpls: Use definition for reserved label checks 2015-08-03 22:35:00 -07:00
mqueue.h
mroute6.h uapi: define DIV_ROUND_UP for userland 2016-03-04 16:10:36 -05:00
mroute.h net: ipmr: fix code and comment style 2015-11-23 15:06:38 -05:00
msdos_fs.h msdos_fs.h: fix 'fields' in comment 2015-01-20 13:51:06 +01:00
msg.h ipc/msg: increase MSGMNI, remove scaling 2014-12-13 12:42:52 -08:00
mtio.h
n_r3964.h
nbd.h nbd: stop using req->cmd 2015-05-05 13:40:44 -06:00
ncp_fs.h
ncp_mount.h
ncp_no.h
ncp.h
ndctl.h Merge branch 'for-4.7/dsm' into libnvdimm-for-next 2016-05-18 10:06:59 -07:00
neighbour.h libnl: nla_put_msecs(): align on a 64-bit area 2016-04-23 20:13:24 -04:00
net_dropmon.h
net_namespace.h netns: add rtnl cmd to add and get peer netns ids 2015-01-19 14:21:18 -05:00
net_tstamp.h sock: accept SO_TIMESTAMPING flags in socket cmsg 2016-04-04 15:50:30 -04:00
net.h
netconf.h netconf: add macro to represent all attributes 2016-03-13 21:54:44 -04:00
netdevice.h net: add name_assign_type netdev attribute 2014-07-15 16:12:01 -07: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
netfilter.h netfilter: don't pull include/linux/netfilter.h from netns headers 2015-06-18 21:14:31 +02:00
netlink_diag.h netlink: remove mmapped netlink support 2016-02-18 11:42:18 -05:00
netlink.h netlink: remove mmapped netlink support 2016-02-18 11:42:18 -05:00
netrom.h
nfc.h NFC: netlink: Add missing NFC_ATTR comments 2015-10-27 03:55:10 +01:00
nfs2.h
nfs3.h
nfs4_mount.h
nfs4.h NFS: Update NFS4_BITMAP_SIZE 2015-08-27 19:44:53 -04:00
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
nfs.h nfs: use btrfs ioctl defintions for clone 2015-11-23 21:53:08 -05:00
nfsacl.h nfsd: Add macro NFS_ACL_MASK for ACL 2015-07-20 14:58:46 -04:00
nl80211.h nl80211: use nla_put_u64_64bit() for the remaining u64 attributes 2016-04-27 11:01:13 +02:00
nubus.h
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 ovs: align nlattr properly when needed 2016-04-26 12:00:48 -04:00
packet_diag.h
param.h
parport.h
patchkey.h
pci_regs.h PCI: Add Downstream Port Containment driver 2016-05-03 10:39:24 -05:00
pci.h
perf_event.h perf core: Per event callchain limit 2016-05-30 12:41:44 -03:00
personality.h
pfkeyv2.h
pg.h
phantom.h
phonet.h
pkt_cls.h net sched actions: policer missing timestamp processing 2016-05-24 16:23:23 -07:00
pkt_sched.h fq_codel: add memory limitation per queue 2016-05-08 23:49:38 -04:00
pktcdvd.h
pmu.h
poll.h
posix_types.h
ppdev.h
ppp_defs.h
ppp-comp.h
ppp-ioctl.h
pps.h
pr.h block: add an API for Persistent Reservations 2015-10-21 14:46:56 -06:00
prctl.h capabilities: ambient capabilities 2015-09-04 16:54:41 -07: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 net: Add Qualcomm IPC router 2016-05-08 23:46:14 -04:00
quota.h fs/quota: use nla_put_u64_64bit() 2016-04-26 12:00:48 -04:00
radeonfb.h
random.h random: introduce getrandom(2) system call 2014-08-05 16:41:22 -04:00
raw.h
rds.h net/rds: Declare SO_RDS_TRANSPORT and RDS_TRANS_* constants in uapi/linux/rds.h 2015-05-31 21:47:23 -07: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_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
rtc.h
rtnetlink.h sched: align nlattr properly when needed 2016-04-26 12:00:49 -04: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 net: sctp: implement rfc6458, 8.1.31. SCTP_DEFAULT_SNDINFO support 2014-07-16 14:40:04 -07:00
sdla.h
seccomp.h seccomp: implement SECCOMP_FILTER_FLAG_TSYNC 2014-07-18 12:13:40 -07:00
securebits.h capabilities: add a securebit to disable PR_CAP_AMBIENT_RAISE 2015-09-04 16:54:41 -07:00
selinux_netlink.h
sem.h ipc/sem.c: increase SEMMSL, SEMMNI, SEMOPM 2014-12-13 12:42:52 -08:00
serial_core.h TTY and Serial driver update for 4.7-rc1 2016-05-20 20:57:27 -07:00
serial_reg.h ARM: OMAP1: Move UART defines to prepare for sparse IRQ 2015-05-20 09:01:20 -07:00
serial.h serial: support 16-bit register interface for console 2015-12-13 19:59:48 -08:00
serio.h Input: add eGalaxTouch serial touchscreen driver 2015-12-16 11:31:33 -08:00
shm.h
signal.h signals/sigaltstack: Change SS_AUTODISARM to (1U << 31) 2016-05-04 08:34:14 +02:00
signalfd.h
smiapp.h [media] smiapp: Add driver-specific test pattern menu item definitions 2014-08-21 15:25:11 -05:00
snmp.h net: track success and failure of TCP PMTU probing 2015-07-21 22:36:33 -07:00
sock_diag.h sock_diag: add SK_MEMINFO_DROPS 2016-04-04 22:11:20 -04:00
socket.h
sockios.h include/uapi/linux/sockios.h: mark SIOCRTMSG unused 2016-01-05 16:44:06 -05:00
sonet.h
sonypi.h
sound.h
soundcard.h
stat.h
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
sync_file.h dma-buf/sync_file: de-stage sync_file headers 2016-04-29 17:37:10 -07:00
synclink.h
sysctl.h kernel: add panic_on_warn 2014-12-10 17:41:10 -08:00
sysinfo.h
target_core_user.h target/user: Report capability of handling out-of-order completions to userspace 2016-03-10 21:49:09 -08:00
taskstats.h
tcp_metrics.h libnl: nla_put_msecs(): align on a 64-bit area 2016-04-23 20:13:24 -04:00
tcp.h tcp: Add RFC4898 tcpEStatsPerfDataSegsOut/In 2016-03-14 14:55:26 -04:00
telephony.h
termios.h
thermal.h thermal: provide an UAPI header file 2014-12-09 14:10:41 +08:00
time.h
times.h
timex.h
tiocl.h
tipc_config.h tipc: convert legacy nl link stat to nl compat 2015-02-09 13:20:47 -08:00
tipc_netlink.h tipc: add ip/udp media type 2015-03-05 22:08:42 -05:00
tipc.h
toshiba.h toshiba_acpi: Add /dev/toshiba_acpi device 2015-07-24 14:15:10 -07:00
tty_flags.h tty: core: Undefine ASYNC_* flags superceded by TTY_PORT* flags 2016-04-30 09:26:55 -07:00
tty.h NFC: nci: add generic uart support 2015-06-11 23:37:37 +02:00
types.h
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 HID: uhid: report to user-space whether reports are numbered 2014-08-25 03:28:08 -05:00
uinput.h Input: uinput - rework ABS validation 2015-12-18 17:48:51 -08:00
uio.h
ultrasound.h
un.h
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 usbip: move usbip kernel code out of staging 2014-08-25 10:40:06 -07:00
userfaultfd.h userfaultfd: remove kernel header include from uapi header 2015-10-01 21:42:35 -04:00
userio.h Input: add userio module 2015-10-27 18:55:31 -07:00
utime.h
utsname.h
uuid.h lib/uuid.c: remove FSF address 2016-05-20 17:58:30 -07: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: add V4L2_CID_MPEG_VIDEO_FORCE_KEY_FRAME 2016-02-19 08:10:35 -02:00
v4l2-dv-timings.h [media] v4l2-dv-timings.h: fix polarity for 4k formats 2016-04-25 10:19:56 -03: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/pci: Intel IGD host and LCP bridge config space access 2016-02-22 16:10:09 -07:00
vhost.h vhost_net: basic polling support 2016-03-11 02:18:53 +02:00
videodev2.h [media] videodev2.h: remove 'experimental' annotations 2016-04-25 08:04:12 -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: add VIRTIO_CONFIG_S_NEEDS_RESET device status bit 2016-04-07 15:16:41 +03:00
virtio_console.h virtio_console: virtio 1.0 support 2014-12-09 12:06: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 Revert "Merge branch 'vsock-virtio'" 2015-12-08 21:55:49 -05:00
virtio_input.h Add virtio-input driver. 2015-03-29 12:13:52 +10:30
virtio_net.h virtio_net: document VIRTIO_NET_CTRL_GUEST_OFFLOADS 2015-07-01 10:11:17 +02:00
virtio_pci.h virtio: define virtio_pci_cfg_cap in header. 2015-07-07 14:27:05 +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 virtio: memory access APIs 2014-12-09 12:05:24 +02:00
vm_sockets.h
vsp1.h [media] media: uapi: vsp1: Use __u32 instead of u32 2015-07-06 08:25:50 -03:00
vt.h tty: vt, remove reduntant check 2016-04-30 09:26:55 -07:00
wait.h
wanrouter.h
watchdog.h
wil6210_uapi.h wil6210: atomic I/O for the card memory 2014-10-02 14:23:14 -04:00
wimax.h
wireless.h
x25.h
xattr.h xattr: fix check for simultaneous glibc header inclusion 2014-08-29 16:28:16 -07:00
xfrm.h xfrm: align nlattr properly when needed 2016-04-23 20:13:25 -04:00
xilinx-v4l2-controls.h [media] v4l: xilinx: Add Test Pattern Generator driver 2015-04-03 01:04:18 -03:00
zorro_ids.h
zorro.h