linux-pinenote/include/uapi/linux
Daniel Borkmann e2e9b6541d cls_bpf: add initial eBPF support for programmable classifiers
This work extends the "classic" BPF programmable tc classifier by
extending its scope also to native eBPF code!

This allows for user space to implement own custom, 'safe' C like
classifiers (or whatever other frontend language LLVM et al may
provide in future), that can then be compiled with the LLVM eBPF
backend to an eBPF elf file. The result of this can be loaded into
the kernel via iproute2's tc. In the kernel, they can be JITed on
major archs and thus run in native performance.

Simple, minimal toy example to demonstrate the workflow:

  #include <linux/ip.h>
  #include <linux/if_ether.h>
  #include <linux/bpf.h>

  #include "tc_bpf_api.h"

  __section("classify")
  int cls_main(struct sk_buff *skb)
  {
    return (0x800 << 16) | load_byte(skb, ETH_HLEN + __builtin_offsetof(struct iphdr, tos));
  }

  char __license[] __section("license") = "GPL";

The classifier can then be compiled into eBPF opcodes and loaded
via tc, for example:

  clang -O2 -emit-llvm -c cls.c -o - | llc -march=bpf -filetype=obj -o cls.o
  tc filter add dev em1 parent 1: bpf cls.o [...]

As it has been demonstrated, the scope can even reach up to a fully
fledged flow dissector (similarly as in samples/bpf/sockex2_kern.c).

For tc, maps are allowed to be used, but from kernel context only,
in other words, eBPF code can keep state across filter invocations.
In future, we perhaps may reattach from a different application to
those maps e.g., to read out collected statistics/state.

Similarly as in socket filters, we may extend functionality for eBPF
classifiers over time depending on the use cases. For that purpose,
cls_bpf programs are using BPF_PROG_TYPE_SCHED_CLS program type, so
we can allow additional functions/accessors (e.g. an ABI compatible
offset translation to skb fields/metadata). For an initial cls_bpf
support, we allow the same set of helper functions as eBPF socket
filters, but we could diverge at some point in time w/o problem.

I was wondering whether cls_bpf and act_bpf could share C programs,
I can imagine that at some point, we introduce i) further common
handlers for both (or even beyond their scope), and/or if truly needed
ii) some restricted function space for each of them. Both can be
abstracted easily through struct bpf_verifier_ops in future.

The context of cls_bpf versus act_bpf is slightly different though:
a cls_bpf program will return a specific classid whereas act_bpf a
drop/non-drop return code, latter may also in future mangle skbs.
That said, we can surely have a "classify" and "action" section in
a single object file, or considered mentioned constraint add a
possibility of a shared section.

The workflow for getting native eBPF running from tc [1] is as
follows: for f_bpf, I've added a slightly modified ELF parser code
from Alexei's kernel sample, which reads out the LLVM compiled
object, sets up maps (and dynamically fixes up map fds) if any, and
loads the eBPF instructions all centrally through the bpf syscall.

The resulting fd from the loaded program itself is being passed down
to cls_bpf, which looks up struct bpf_prog from the fd store, and
holds reference, so that it stays available also after tc program
lifetime. On tc filter destruction, it will then drop its reference.

Moreover, I've also added the optional possibility to annotate an
eBPF filter with a name (e.g. path to object file, or something
else if preferred) so that when tc dumps currently installed filters,
some more context can be given to an admin for a given instance (as
opposed to just the file descriptor number).

Last but not least, bpf_prog_get() and bpf_prog_put() needed to be
exported, so that eBPF can be used from cls_bpf built as a module.
Thanks to 60a3b2253c ("net: bpf: make eBPF interpreter images
read-only") I think this is of no concern since anything wanting to
alter eBPF opcode after verification stage would crash the kernel.

  [1] http://git.breakpoint.cc/cgit/dborkman/iproute2.git/log/?h=ebpf

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Cc: Jamal Hadi Salim <jhs@mojatatu.com>
Cc: Jiri Pirko <jiri@resnulli.us>
Acked-by: Alexei Starovoitov <ast@plumgrid.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-03-01 14:05:19 -05:00
..
android android: uapi: binder.h 2014-10-20 10:30:15 +08:00
byteorder
caif
can can: m_can: tag current CAN FD controllers as non-ISO 2015-01-15 16:57:59 +01:00
cifs cifs: Move and expand MAX_SERVER_SIZE definition 2013-09-08 14:34:22 -05:00
dvb
genwqe GenWQE: Update author information 2014-09-23 23:15:46 -07:00
hdlc
hsi
isdn
mmc
netfilter netfilter: ipset: Alignment problem between 64bit kernel 32bit userspace 2014-12-03 12:43:35 +01:00
netfilter_arp uapi: netfilter_arp: use __u8 instead of u_int8_t 2014-08-20 15:13:08 +02:00
netfilter_bridge netfilter: kill ulog targets 2014-06-25 19:28:43 +02:00
netfilter_ipv4 netfilter: kill ulog targets 2014-06-25 19:28:43 +02:00
netfilter_ipv6
nfsd nfsd: implement pNFS operations 2015-02-02 18:09:42 +01:00
raid md: discard PRINT_RAID_DEBUG ioctl 2014-10-14 13:08:29 +11:00
spi spi: spidev: Add support for Dual/Quad SPI Transfers 2014-02-27 13:51:29 +09:00
sunrpc
tc_act net: sched: Introduce connmark action 2015-01-19 16:02:06 -05:00
tc_ematch
usb usb: gadget: ffs: add eventfd notification about ffs events 2015-01-27 09:34:59 -06:00
wimax uapi: Convert some uses of 6 to ETH_ALEN 2013-08-02 12:33:54 -07:00
a.out.h
acct.h
adb.h
adfs_fs.h
affs_hardblocks.h
agpgart.h
aio_abi.h
am437x-vpfe.h [media] media: platform: add VPFE capture driver support for AM437X 2014-12-23 12:09:58 -02:00
apm_bios.h apm-emulation: add hibernation APM events to support suspend2disk 2014-01-07 13:50:28 +01:00
arcfb.h
atalk.h
atm.h
atm_eni.h
atm_he.h
atm_idt77105.h
atm_nicstar.h
atm_tcp.h
atm_zatm.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 powerpc updates for 3.19 batch 2 2014-12-19 12:57:45 -08:00
auto_fs.h
auto_fs4.h
auxvec.h
ax25.h
b1lli.h
baycom.h
bcache.h bcache: Add bch_btree_keys_u64s_remaining() 2014-01-08 13:05:13 -08:00
bcm933xx_hcs.h MIPS: BCM63XX: recognize Cable Modem firmware format 2013-07-01 15:10:53 +02:00
bfs_fs.h
binfmts.h
blkpg.h
blktrace_api.h
bpf.h ebpf: add sched_cls_type and map it to sk_filter's verifier ops 2015-03-01 14:05:19 -05:00
bpf_common.h net: filter: move common defines into bpf_common.h 2014-10-14 16:06:45 -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.h Btrfs: return failure if btrfs_dev_replace_finishing() failed 2014-11-20 17:14:28 -08:00
can.h can: unify identifiers to ensure unique include processing 2014-05-19 09:38:24 +02:00
capability.h audit: add netlink audit protocol bind to check capabilities on multicast join 2014-04-22 21:42:27 -04:00
capi.h isdn: capi: fix "CAPI_VERSION" comment 2014-03-20 14:55:18 +01:00
cciss_defs.h
cciss_ioctl.h
cdrom.h
cgroupstats.h
chio.h
cm4000_cs.h Omnikey Cardman 4000: pull in ioctl.h in user header 2013-08-28 19:26:38 -07:00
cn_proc.h
coda.h
coda_psdev.h
coff.h
connector.h
const.h linux/const.h: Add _BITUL() and _BITULL() 2013-06-25 15:50:04 -07:00
cramfs_fs.h
cuda.h
cyclades.h
cycx_cfm.h
dcbnl.h dcbnl : Fix misleading dcb_app->priority explanation 2014-07-30 17:21:05 -07:00
dccp.h
dlm.h
dlm_device.h
dlm_netlink.h
dlm_plock.h
dlmconstants.h dlm: adopt orphan locks 2014-11-19 14:48:02 -06:00
dm-ioctl.h dm: allocate requests in target when stacking on blk-mq devices 2015-02-09 13:06:47 -05:00
dm-log-userspace.h dm log userspace: allow mark requests to piggyback on flush requests 2014-01-21 23:46:27 -05:00
dn.h include/uapi/linux/dn.h: pull in ioctl.h header 2014-01-23 16:36:55 -08:00
dqblk_xfs.h quota: Add a new quotactl command Q_XGETQSTATV 2013-08-20 16:53:58 -05:00
edd.h
efs_fs_sb.h
elf-em.h Add ELF machine define for Nios2 2014-12-08 12:55:57 +08:00
elf-fdpic.h
elf.h arm64: ptrace: add NT_ARM_SYSTEM_CALL regset 2014-11-28 10:19:49 +00:00
elfcore.h
errno.h
errqueue.h net-timestamp: ACK timestamp for bytestreams 2014-08-05 16:35:54 -07:00
ethtool.h ethtool: rename reserved1 memeber in ethtool_drvinfo for expansion ROM version 2015-02-09 14:07:54 -08:00
eventpoll.h epoll: drop EPOLLWAKEUP if PM_SLEEP is disabled 2013-12-03 15:35:52 +01:00
fadvise.h
falloc.h fs: Introduce FALLOC_FL_ZERO_RANGE flag for fallocate 2014-03-13 19:07:42 +11:00
fanotify.h
fb.h
fcntl.h shm: add sealing API 2014-08-08 15:57:31 -07:00
fd.h floppy: bail out in open() if drive is not responding to block0 read 2014-01-17 11:12:06 +01:00
fdreg.h
fib_rules.h fib_rules: fix suppressor names and default values 2013-08-03 10:40:23 -07:00
fiemap.h ext4: add support for extent pre-caching 2013-08-16 22:05:14 -04:00
filter.h net: filter: move common defines into bpf_common.h 2014-10-14 16:06:45 -04:00
firewire-cdev.h firewire: fix libdc1394/FlyCap2 iso event regression 2013-07-27 20:24:36 +02:00
firewire-constants.h
flat.h
fou.h gue: Use checksum partial with remote checksum offload 2015-02-11 15:12:13 -08:00
fs.h vfs: add support for a lazytime mount option 2015-02-05 02:45:00 -05:00
fsl_hypervisor.h
fuse.h fuse: add FUSE_NO_OPEN_SUPPORT flag to INIT 2014-07-22 16:37:43 +02:00
futex.h
gameport.h
gen_stats.h
genetlink.h genetlink/pmcraid: use proper genetlink multicast API 2013-11-28 18:26:30 -05:00
gfs2_ondisk.h GFS2: remove transaction glock 2014-05-14 10:04:34 +01:00
gigaset_dev.h
hash_info.h crypto: provide single place for hash algo information 2013-10-25 17:14:03 -04:00
hdlc.h
hdlcdrv.h
hdreg.h
hid.h
hiddev.h
hidraw.h
hpet.h
hsr_netlink.h net/hsr: Add support for the High-availability Seamless Redundancy protocol (HSRv0) 2013-11-03 23:20:14 -05:00
hw_breakpoint.h
hyperv.h Drivers: hv: util: make struct hv_do_fcopy match Hyper-V host messages 2014-11-07 10:21:44 -08:00
hysdn_if.h
i2c-dev.h
i2c.h
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 ICMPv6: treat dest unreachable codes 5 and 6 as EACCES, not EPROTO 2013-09-03 22:11:44 -04:00
if.h net: move net_device priv_flags out from UAPI 2014-02-27 15:59:09 -05:00
if_addr.h multicast: Extend ip address command to enable multicast group join/leave on 2015-02-27 16:25:25 -05: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
if_arp.h net: if_arp: add ARPHRD_6LOWPAN type 2013-12-11 12:57:55 -08:00
if_bonding.h bonding: modify the old and add new xmit hash policies 2013-10-03 15:36:38 -04:00
if_bridge.h bridge: support for multiple vlans and vlan ranges in setlink and dellink requests 2015-01-12 16:47:04 -05:00
if_cablemodem.h
if_eql.h
if_ether.h net: dsa: reduce number of protocol hooks 2014-08-27 22:59:39 -07:00
if_fc.h
if_fddi.h FDDI: Reformat <linux/if_fddi.h> for 8-character tabs 2014-04-27 19:08:06 -04:00
if_frad.h
if_hippi.h
if_infiniband.h
if_link.h vxlan: Use checksum partial with remote checksum offload 2015-02-11 15:12:13 -08:00
if_ltalk.h
if_packet.h packet: remove deprecated syststamp timestamp 2014-07-29 11:39:50 -07:00
if_phonet.h
if_plip.h
if_ppp.h
if_pppol2tp.h
if_pppox.h pptp: fix byte order warnings 2013-08-13 15:10:22 -07:00
if_slip.h
if_team.h
if_tun.h if_tun: drop broken IFF_VNET_LE 2014-12-16 11:19:42 -05:00
if_tunnel.h gue: TX support for using remote checksum offload option 2014-11-05 16:30:03 -05:00
if_vlan.h
if_x25.h
igmp.h
in.h ip: Add offset parameter to ip_cmsg_recv 2015-01-05 22:44:46 -05:00
in6.h in6: fix conflict with glibc 2014-12-22 16:12:36 -05:00
in_route.h
inet_diag.h net: tcp: add DCTCP congestion control algorithm 2014-09-29 00:13:10 -04:00
inotify.h
input.h HID: wacom: add support for Cintiq 27QHD and 27QHD touch 2015-01-29 14:05:05 +01:00
ioctl.h
ip.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-08-26 16:37:08 -04:00
ip6_tunnel.h
ip_vs.h ipvs: Add destination address family to netlink interface 2014-09-16 09:03:33 +09:00
ipc.h
ipmi.h
ipmi_msgdefs.h
ipsec.h
ipv6.h net: ipv6: Add sysctl entry to disable MTU updates from RA 2015-01-25 14:54:41 -08:00
ipv6_route.h
ipx.h
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
Kbuild fs/binfmt_som: Drop kernel support for HP-UX SOM binaries 2015-02-17 16:29:36 +01:00
kcmp.h kcmp: Move kcmp.h into uapi 2014-12-02 13:52:53 -07:00
kd.h
kdev_t.h
kernel-page-flags.h mm:add KPF_ZERO_PAGE flag for /proc/kpageflags 2015-02-11 17:06:00 -08:00
kernel.h
kernelcapi.h
kexec.h kexec: Fix make headers_check 2015-02-17 14:34:51 -08:00
keyboard.h
keyctl.h KEYS: Add per-user_namespace registers for persistent per-UID kerberos caches 2013-09-24 10:35:19 +01:00
kfd_ioctl.h drm/amdkfd: reformat IOCTL definitions to drm-style 2015-01-06 19:44:36 +02:00
kvm.h KVM: s390: fixes and features for kvm/next (3.20) 2015-01-23 14:33:36 +01:00
kvm_para.h MIPS: Add functions for hypervisor call 2014-05-30 21:01:11 +02:00
l2tp.h l2tp : multicast notification to the registered listeners 2014-12-31 14:17:20 -05:00
libc-compat.h ipv6: fix redefinition of in6_pktinfo and ip6_mtuinfo 2015-01-08 19:29:11 -08:00
limits.h
llc.h
loop.h
lp.h
magic.h take the targets of /proc/*/ns/* symlinks to separate fs 2014-12-10 21:30:20 -05:00
major.h mtd: Move major number definitions to major.h 2013-11-06 23:32:59 -08:00
map_to_7segment.h
matroxfb.h
mdio.h
media-bus-format.h [media] Move mediabus format definition to a more standard place 2014-11-14 17:47:47 -02:00
media.h [media] media: Add pad flag MEDIA_PAD_FL_MUST_CONNECT 2013-12-04 14:59:20 -02:00
mei.h
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: Fix endianness issues. 2013-11-27 11:03:38 -08:00
mic_ioctl.h misc: mic: fix possible signed underflow (undefined behavior) in userspace API 2014-02-07 15:30:34 -08:00
mii.h
minix_fs.h
mman.h
mmtimer.h
module.h
mpls.h UAPI: add MPLS label stack definition 2014-03-04 13:51:06 -05:00
mqueue.h uapi: Use __kernel_long_t in struct mq_attr 2014-01-20 14:45:33 -08:00
mroute.h
mroute6.h
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
ncp.h
ncp_fs.h
ncp_mount.h
ncp_no.h
neighbour.h vxlan: advertise link netns in fdb messages 2015-01-27 17:11:07 -08:00
net.h
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 net-timestamp: no-payload option 2015-02-02 18:46:51 -08:00
netconf.h netconf: rename PROXY_ARP to NEIGH_PROXY 2013-12-22 18:02:43 -05:00
netdevice.h net: add name_assign_type netdev attribute 2014-07-15 16:12:01 -07:00
netfilter.h netfilter: nf_tables: add "inet" table for IPv4/IPv6 2014-01-07 23:57:25 +01:00
netfilter_arp.h
netfilter_bridge.h
netfilter_decnet.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h
netlink_diag.h diag: warn about missing first netlink attribute 2013-11-28 18:16:43 -05:00
netrom.h
nfc.h NFC: Forward NFC_EVT_TRANSACTION to user space 2015-02-02 21:50:40 +01:00
nfs.h
nfs2.h
nfs3.h
nfs4.h uapi: convert u64 to __u64 in exported headers 2014-01-23 16:36:55 -08:00
nfs4_mount.h
nfs_fs.h
nfs_idmap.h
nfs_mount.h NFS: stop using NFS_MOUNT_SECFLAVOUR server flag 2013-10-28 15:37:56 -04:00
nfsacl.h
nl80211.h nl80211: don't document per-wiphy interface dump 2015-01-29 16:54:44 +01:00
nubus.h
nvme.h NVMe: Updates for 1.1 spec 2014-11-04 13:17:10 -07:00
nvram.h
omap3isp.h
omapfb.h
oom.h
openvswitch.h net: openvswitch: Support masked set actions. 2015-02-07 22:40:17 -08:00
packet_diag.h diag: warn about missing first netlink attribute 2013-11-28 18:16:43 -05:00
param.h
parport.h
patchkey.h
pci.h
pci_regs.h PCI: Add defines for PCIe Max_Read_Request_Size 2015-01-27 08:14:26 -06:00
perf_event.h perf: Add ability to sample machine state on interrupt 2014-11-16 11:41:57 +01:00
personality.h
pfkeyv2.h ipsec: add support of limited SA dump 2014-02-17 07:18:19 +01:00
pg.h
phantom.h
phonet.h
pkt_cls.h cls_bpf: add initial eBPF support for programmable classifiers 2015-03-01 14:05:19 -05:00
pkt_sched.h pkt_sched: fq: better control of DDOS traffic 2015-02-04 22:15:45 -08:00
pktcdvd.h
pmu.h
poll.h
posix_types.h
ppdev.h
ppp-comp.h
ppp-ioctl.h include/uapi/linux/ppp-ioctl.h: pull in ppp_defs.h 2014-01-23 16:36:55 -08:00
ppp_defs.h
pps.h
prctl.h x86, mpx: On-demand kernel allocation of bounds tables 2014-11-18 00:58:53 +01:00
psci.h ARM/ARM64: KVM: Add common header for PSCI related defines 2014-04-30 04:18:57 -07:00
ptp_clock.h ptp: introduce programmable pins. 2014-03-21 14:21:13 -04:00
ptrace.h ptrace: add ability to get/set signal-blocked mask 2013-07-03 16:08:01 -07:00
qnx4_fs.h
qnxtypes.h
quota.h quota: Cleanup flags definitions 2015-01-21 19:21:30 +01:00
radeonfb.h
random.h random: introduce getrandom(2) system call 2014-08-05 16:41:22 -04:00
raw.h
rds.h
reboot.h
reiserfs_fs.h
reiserfs_xattr.h xattr: Constify ->name member of "struct xattr". 2013-07-25 19:30:03 +10:00
resource.h uapi: Use __kernel_long_t/__kernel_ulong_t in <linux/resource.h> 2014-01-20 14:44:17 -08:00
rfkill.h
romfs_fs.h
rose.h
route.h
rtc.h
rtnetlink.h netns: add rtnl cmd to add and get peer netns ids 2015-01-19 14:21:18 -05:00
scc.h
sched.h sched: Update comments about CLONE_NEWUTS and CLONE_NEWIPC 2014-11-16 10:58:53 +01:00
screen_info.h
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
selinux_netlink.h
sem.h ipc/sem.c: increase SEMMSL, SEMMNI, SEMOPM 2014-12-13 12:42:52 -08:00
serial.h
serial_core.h serial: driver for ETRAX FS UART 2015-02-07 18:43:16 +08:00
serial_reg.h tty: 8250: Add 64byte UART support for FSL platforms 2015-01-09 14:33:04 -08:00
serio.h Input: add support for Wacom protocol 4 serial tablets 2014-07-20 14:33:23 -07:00
shm.h ipc,shm: document new limits in the uapi header 2014-06-06 16:08:14 -07:00
signal.h
signalfd.h
smiapp.h [media] smiapp: Add driver-specific test pattern menu item definitions 2014-08-21 15:25:11 -05:00
snmp.h tcp: helpers to mitigate ACK loops by rate-limiting out-of-window dupacks 2015-02-08 01:03:12 -08:00
sock_diag.h
socket.h
sockios.h net_tstamp: Add SIOCGHWTSTAMP ioctl to match SIOCSHWTSTAMP 2013-11-19 19:07:21 +00:00
sonet.h
sonypi.h
sound.h
soundcard.h
stat.h
stddef.h
string.h
suspend_ioctls.h
swab.h
synclink.h
sysctl.h kernel: add panic_on_warn 2014-12-10 17:41:10 -08:00
sysinfo.h
target_core_user.h uapi/linux/target_core_user.h: fix headers_install.sh badness 2014-12-18 11:07:27 -08:00
taskstats.h
tcp.h tcp: add pacing_rate information into tcp_info 2014-02-14 16:09:43 -05:00
tcp_metrics.h tcp: switch rtt estimations to usec resolution 2014-02-26 17:08:40 -05: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 uapi: Use __kernel_long_t in struct timex 2014-01-20 14:44:05 -08:00
tiocl.h
tipc.h tipc: add ioctl to fetch link names 2014-04-26 12:13:24 -04:00
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 name table dump to new netlink api 2014-11-21 15:01:32 -05:00
toshiba.h
tty.h
tty_flags.h tty: warn on deprecated serial flags 2014-11-06 15:01:03 -08:00
types.h
udf_fs_i.h
udp.h net: Make enabling of zero UDP6 csums more restrictive 2014-05-23 16:28:53 -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 - fix ioctl nr overflow for UI_GET_SYSNAME/VERSION 2015-01-11 16:27:25 -08:00
uio.h
ultrasound.h
un.h
unistd.h
unix_diag.h diag: warn about missing first netlink attribute 2013-11-28 18:16:43 -05:00
usbdevice_fs.h USB: usbfs: allow URBs to be reaped after disconnection 2015-01-31 09:05:06 -08:00
usbip.h usbip: move usbip kernel code out of staging 2014-08-25 10:40:06 -07:00
utime.h
utsname.h
uuid.h
uvcvideo.h
v4l2-common.h [media] v4l: Add V4L2_SEL_TGT_NATIVE_SIZE selection target 2014-12-04 12:37:01 -02:00
v4l2-controls.h [media] adv7180: Add fast switch support 2015-02-02 11:51:38 -02:00
v4l2-dv-timings.h Revert "[media] v4l2-dv-timings: fix a sparse warning" 2014-10-24 08:58:09 -02:00
v4l2-mediabus.h [media] v4l2-mediabus.h: use two __u16 instead of two __u32 2014-12-16 23:21:36 -02:00
v4l2-subdev.h [media] Make use of the new media_bus_format definitions 2014-11-14 17:51:18 -02:00
veth.h
vfio.h vfio/iommu_type1: add new VFIO_TYPE1_NESTING_IOMMU IOMMU type 2014-09-29 10:06:19 -06:00
vhost.h
videodev2.h [media] v4l: Add packed Bayer raw10 pixel formats 2014-12-23 10:57:09 -02:00
virtio_9p.h
virtio_balloon.h virtio_balloon: free some memory from balloon on OOM 2014-11-11 17:09:58 +10:30
virtio_blk.h virtio_blk: v1.0 support 2014-12-09 12:05:26 +02:00
virtio_config.h virtio: make VIRTIO_F_VERSION_1 a transport bit 2014-12-09 12:06:32 +02:00
virtio_console.h virtio_console: virtio 1.0 support 2014-12-09 12:06:32 +02:00
virtio_ids.h
virtio_net.h virtio_net: v1.0 endianness 2014-12-09 12:05:26 +02:00
virtio_pci.h virtio_pci: add VIRTIO_PCI_NO_LEGACY 2014-12-14 15:10:31 +02:00
virtio_ring.h virtio_ring: document alignment requirements 2014-12-29 10:54:54 +02:00
virtio_rng.h
virtio_scsi.h virtio_scsi: export to userspace 2014-12-09 12:06:31 +02:00
virtio_types.h virtio: memory access APIs 2014-12-09 12:05:24 +02:00
vm_sockets.h
vsp1.h [media] v4l: vsp1: Add LUT support 2013-12-11 09:25:20 -02:00
vt.h vt: Remove vt_get_kmsg_redirect() from uapi header 2014-11-05 20:18:30 -08: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: configure policy hash table thresholds by netlink 2014-09-02 13:37:56 +02:00
zorro.h zorro/UAPI: Use proper types (endianness/size) in <linux/zorro.h> 2013-11-26 11:09:09 +01:00
zorro_ids.h zorro/UAPI: Disintegrate include/linux/zorro*.h 2013-11-26 11:09:08 +01:00