History

Merge branch 'drm-next-merged' of git://people.freedesktop.org/~airlied/linux into v4l_for_linus

* 'drm-next-merged' of git://people.freedesktop.org/~airlied/linux: (9717 commits) media-bus: Fixup RGB444_1X12, RGB565_1X16, and YUV8_1X24 media bus format hexdump: avoid warning in test function fs: take i_mutex during prepare_binprm for set[ug]id executables smp: Fix error case handling in smp_call_function_*() iommu-common: Fix PARISC compile-time warnings sparc: Make LDC use common iommu poll management functions sparc: Make sparc64 use scalable lib/iommu-common.c functions Break up monolithic iommu table/lock into finer graularity pools and lock sparc: Revert generic IOMMU allocator. tools/power turbostat: correct dumped pkg-cstate-limit value tools/power turbostat: calculate TSC frequency from CPUID(0x15) on SKL tools/power turbostat: correct DRAM RAPL units on recent Xeon processors tools/power turbostat: Initial Skylake support tools/power turbostat: Use $(CURDIR) instead of $(PWD) and add support for O= option in Makefile tools/power turbostat: modprobe msr, if needed tools/power turbostat: dump MSR_TURBO_RATIO_LIMIT2 tools/power turbostat: use new MSR_TURBO_RATIO_LIMIT names Bluetooth: hidp: Fix regression with older userspace and flags validation config: Enable NEED_DMA_MAP_STATE by default when SWIOTLB is selected perf/x86/intel/pt: Fix and clean up error handling in pt_event_add() ... That solves several merge conflicts: Documentation/DocBook/media/v4l/subdev-formats.xml Documentation/devicetree/bindings/vendor-prefixes.txt drivers/staging/media/mn88473/mn88473.c include/linux/kconfig.h include/uapi/linux/media-bus-format.h The ones at subdev-formats.xml and media-bus-format.h are not trivial. That's why we opted to merge from DRM.

Mauro Carvalho Chehab committed 11 years ago

Commit 64131a82 parents 676ee36 2c33ce07787 files · +316308 −156694Browse files

Showing the changes to include/uapi/linux (38 of 7787 files). Show all

Unified · Split

38 files
  1. include/uapi/linux/Kbuild +1 −0
  2. include/uapi/linux/bpf.h +63 −0
  3. include/uapi/linux/can/raw.h +1 −0
  4. include/uapi/linux/dcbnl.h +66 −0
  5. include/uapi/linux/dm-ioctl.h +2 −2
  6. include/uapi/linux/filter.h +7 −3
  7. include/uapi/linux/fou.h +1 −0
  8. include/uapi/linux/hsi/Kbuild +1 −1
  9. include/uapi/linux/hsi/cs-protocol.h +113 −0
  10. include/uapi/linux/if_addr.h +2 −0
  11. include/uapi/linux/if_link.h +14 −0
  12. include/uapi/linux/if_packet.h +1 −0
  13. include/uapi/linux/iio/Kbuild +3 −0
  14. include/uapi/linux/iio/events.h +42 −0
  15. include/uapi/linux/iio/types.h +92 −0
  16. include/uapi/linux/input.h +8 −2
  17. include/uapi/linux/ip_vs.h +6 −1
  18. include/uapi/linux/ipv6.h +1 −0
  19. include/uapi/linux/kvm.h +64 −1
  20. include/uapi/linux/magic.h +2 −0
  21. include/uapi/linux/media-bus-format.h +11 −2
  22. include/uapi/linux/neighbour.h +1 −0
  23. include/uapi/linux/netfilter/nf_tables.h +79 −1
  24. include/uapi/linux/netfilter_bridge/ebtables.h +0 −2
  25. include/uapi/linux/nfsd/export.h +1 −1
  26. include/uapi/linux/nl80211.h +31 −3
  27. include/uapi/linux/perf_event.h +98 −17
  28. include/uapi/linux/pkt_cls.h +2 −0
  29. include/uapi/linux/quota.h +4 −2
  30. include/uapi/linux/rtnetlink.h +16 −0
  31. include/uapi/linux/serial.h +4 −0
  32. include/uapi/linux/tc_act/Kbuild +1 −0
  33. include/uapi/linux/tc_act/tc_bpf.h +2 −0
  34. include/uapi/linux/tipc_netlink.h +9 −0
  35. include/uapi/linux/vfio.h +2 −0
  36. include/uapi/linux/virtio_blk.h +6 −2
  37. include/uapi/linux/virtio_scsi.h +10 −2
  38. include/uapi/linux/xfrm.h +2 −0
include/uapi/linux/Kbuild+1−0
@@ -6,6 +6,7 @@ header-y += caif/ · 5 unmodified lines
6header-y += dvb/6header-y += dvb/
7header-y += hdlc/7header-y += hdlc/
8header-y += hsi/8header-y += hsi/
9header-y += iio/
9header-y += isdn/10header-y += isdn/
10header-y += mmc/11header-y += mmc/
11header-y += nfsd/12header-y += nfsd/
include/uapi/linux/bpf.h+63−0
@@ -118,8 +118,13 @@ enum bpf_map_type { · 117 unmodified lines
118enum bpf_prog_type {118enum bpf_prog_type {
119 BPF_PROG_TYPE_UNSPEC,119 BPF_PROG_TYPE_UNSPEC,
120 BPF_PROG_TYPE_SOCKET_FILTER,120 BPF_PROG_TYPE_SOCKET_FILTER,
121 BPF_PROG_TYPE_KPROBE,
122 BPF_PROG_TYPE_SCHED_CLS,
123 BPF_PROG_TYPE_SCHED_ACT,
121};124};
122 125
126#define BPF_PSEUDO_MAP_FD 1
127
123/* flags for BPF_MAP_UPDATE_ELEM command */128/* flags for BPF_MAP_UPDATE_ELEM command */
124#define BPF_ANY 0 /* create new element or update existing */129#define BPF_ANY 0 /* create new element or update existing */
125#define BPF_NOEXIST 1 /* create new element if it didn't exist */130#define BPF_NOEXIST 1 /* create new element if it didn't exist */
@@ -151,6 +156,7 @@ union bpf_attr { · 25 unmodified lines
151 __u32 log_level; /* verbosity level of verifier */156 __u32 log_level; /* verbosity level of verifier */
152 __u32 log_size; /* size of user buffer */157 __u32 log_size; /* size of user buffer */
153 __aligned_u64 log_buf; /* user supplied buffer */158 __aligned_u64 log_buf; /* user supplied buffer */
159 __u32 kern_version; /* checked when prog_type=kprobe */
154 };160 };
155} __attribute__((aligned(8)));161} __attribute__((aligned(8)));
156 162
@@ -162,7 +168,64 @@ enum bpf_func_id { · 5 unmodified lines
162 BPF_FUNC_map_lookup_elem, /* void *map_lookup_elem(&map, &key) */168 BPF_FUNC_map_lookup_elem, /* void *map_lookup_elem(&map, &key) */
163 BPF_FUNC_map_update_elem, /* int map_update_elem(&map, &key, &value, flags) */169 BPF_FUNC_map_update_elem, /* int map_update_elem(&map, &key, &value, flags) */
164 BPF_FUNC_map_delete_elem, /* int map_delete_elem(&map, &key) */170 BPF_FUNC_map_delete_elem, /* int map_delete_elem(&map, &key) */
171 BPF_FUNC_probe_read, /* int bpf_probe_read(void *dst, int size, void *src) */
172 BPF_FUNC_ktime_get_ns, /* u64 bpf_ktime_get_ns(void) */
173 BPF_FUNC_trace_printk, /* int bpf_trace_printk(const char *fmt, int fmt_size, ...) */
174 BPF_FUNC_get_prandom_u32, /* u32 prandom_u32(void) */
175 BPF_FUNC_get_smp_processor_id, /* u32 raw_smp_processor_id(void) */
176
177 /**
178 * skb_store_bytes(skb, offset, from, len, flags) - store bytes into packet
179 * @skb: pointer to skb
180 * @offset: offset within packet from skb->mac_header
181 * @from: pointer where to copy bytes from
182 * @len: number of bytes to store into packet
183 * @flags: bit 0 - if true, recompute skb->csum
184 * other bits - reserved
185 * Return: 0 on success
186 */
187 BPF_FUNC_skb_store_bytes,
188
189 /**
190 * l3_csum_replace(skb, offset, from, to, flags) - recompute IP checksum
191 * @skb: pointer to skb
192 * @offset: offset within packet where IP checksum is located
193 * @from: old value of header field
194 * @to: new value of header field
195 * @flags: bits 0-3 - size of header field
196 * other bits - reserved
197 * Return: 0 on success
198 */
199 BPF_FUNC_l3_csum_replace,
200
201 /**
202 * l4_csum_replace(skb, offset, from, to, flags) - recompute TCP/UDP checksum
203 * @skb: pointer to skb
204 * @offset: offset within packet where TCP/UDP checksum is located
205 * @from: old value of header field
206 * @to: new value of header field
207 * @flags: bits 0-3 - size of header field
208 * bit 4 - is pseudo header
209 * other bits - reserved
210 * Return: 0 on success
211 */
212 BPF_FUNC_l4_csum_replace,
165 __BPF_FUNC_MAX_ID,213 __BPF_FUNC_MAX_ID,
166};214};
167 215
216/* user accessible mirror of in-kernel sk_buff.
217 * new fields can only be added to the end of this structure
218 */
219struct __sk_buff {
220 __u32 len;
221 __u32 pkt_type;
222 __u32 mark;
223 __u32 queue_mapping;
224 __u32 protocol;
225 __u32 vlan_present;
226 __u32 vlan_tci;
227 __u32 vlan_proto;
228 __u32 priority;
229};
230
168#endif /* _UAPI__LINUX_BPF_H__ */231#endif /* _UAPI__LINUX_BPF_H__ */
include/uapi/linux/can/raw.h+1−0
@@ -57,6 +57,7 @@ enum { · 56 unmodified lines
57 CAN_RAW_LOOPBACK, /* local loopback (default:on) */57 CAN_RAW_LOOPBACK, /* local loopback (default:on) */
58 CAN_RAW_RECV_OWN_MSGS, /* receive my own msgs (default:off) */58 CAN_RAW_RECV_OWN_MSGS, /* receive my own msgs (default:off) */
59 CAN_RAW_FD_FRAMES, /* allow CAN FD frames (default:off) */59 CAN_RAW_FD_FRAMES, /* allow CAN FD frames (default:off) */
60 CAN_RAW_JOIN_FILTERS, /* all filters must match to trigger */
60};61};
61 62
62#endif /* !_UAPI_CAN_RAW_H */63#endif /* !_UAPI_CAN_RAW_H */
include/uapi/linux/dcbnl.h+66−0
@@ -78,6 +78,70 @@ struct ieee_maxrate { · 77 unmodified lines
78 __u64 tc_maxrate[IEEE_8021QAZ_MAX_TCS];78 __u64 tc_maxrate[IEEE_8021QAZ_MAX_TCS];
79};79};
80 80
81enum dcbnl_cndd_states {
82 DCB_CNDD_RESET = 0,
83 DCB_CNDD_EDGE,
84 DCB_CNDD_INTERIOR,
85 DCB_CNDD_INTERIOR_READY,
86};
87
88/* This structure contains the IEEE 802.1Qau QCN managed object.
89 *
90 *@rpg_enable: enable QCN RP
91 *@rppp_max_rps: maximum number of RPs allowed for this CNPV on this port
92 *@rpg_time_reset: time between rate increases if no CNMs received.
93 * given in u-seconds
94 *@rpg_byte_reset: transmitted data between rate increases if no CNMs received.
95 * given in Bytes
96 *@rpg_threshold: The number of times rpByteStage or rpTimeStage can count
97 * before RP rate control state machine advances states
98 *@rpg_max_rate: the maxinun rate, in Mbits per second,
99 * at which an RP can transmit
100 *@rpg_ai_rate: The rate, in Mbits per second,
101 * used to increase rpTargetRate in the RPR_ACTIVE_INCREASE
102 *@rpg_hai_rate: The rate, in Mbits per second,
103 * used to increase rpTargetRate in the RPR_HYPER_INCREASE state
104 *@rpg_gd: Upon CNM receive, flow rate is limited to (Fb/Gd)*CurrentRate.
105 * rpgGd is given as log2(Gd), where Gd may only be powers of 2
106 *@rpg_min_dec_fac: The minimum factor by which the current transmit rate
107 * can be changed by reception of a CNM.
108 * value is given as percentage (1-100)
109 *@rpg_min_rate: The minimum value, in bits per second, for rate to limit
110 *@cndd_state_machine: The state of the congestion notification domain
111 * defense state machine, as defined by IEEE 802.3Qau
112 * section 32.1.1. In the interior ready state,
113 * the QCN capable hardware may add CN-TAG TLV to the
114 * outgoing traffic, to specifically identify outgoing
115 * flows.
116 */
117
118struct ieee_qcn {
119 __u8 rpg_enable[IEEE_8021QAZ_MAX_TCS];
120 __u32 rppp_max_rps[IEEE_8021QAZ_MAX_TCS];
121 __u32 rpg_time_reset[IEEE_8021QAZ_MAX_TCS];
122 __u32 rpg_byte_reset[IEEE_8021QAZ_MAX_TCS];
123 __u32 rpg_threshold[IEEE_8021QAZ_MAX_TCS];
124 __u32 rpg_max_rate[IEEE_8021QAZ_MAX_TCS];
125 __u32 rpg_ai_rate[IEEE_8021QAZ_MAX_TCS];
126 __u32 rpg_hai_rate[IEEE_8021QAZ_MAX_TCS];
127 __u32 rpg_gd[IEEE_8021QAZ_MAX_TCS];
128 __u32 rpg_min_dec_fac[IEEE_8021QAZ_MAX_TCS];
129 __u32 rpg_min_rate[IEEE_8021QAZ_MAX_TCS];
130 __u32 cndd_state_machine[IEEE_8021QAZ_MAX_TCS];
131};
132
133/* This structure contains the IEEE 802.1Qau QCN statistics.
134 *
135 *@rppp_rp_centiseconds: the number of RP-centiseconds accumulated
136 * by RPs at this priority level on this Port
137 *@rppp_created_rps: number of active RPs(flows) that react to CNMs
138 */
139
140struct ieee_qcn_stats {
141 __u64 rppp_rp_centiseconds[IEEE_8021QAZ_MAX_TCS];
142 __u32 rppp_created_rps[IEEE_8021QAZ_MAX_TCS];
143};
144
81/* This structure contains the IEEE 802.1Qaz PFC managed object145/* This structure contains the IEEE 802.1Qaz PFC managed object
82 *146 *
83 * @pfc_cap: Indicates the number of traffic classes on the local device147 * @pfc_cap: Indicates the number of traffic classes on the local device
@@ -334,6 +398,8 @@ enum ieee_attrs { · 250 unmodified lines
334 DCB_ATTR_IEEE_PEER_PFC,398 DCB_ATTR_IEEE_PEER_PFC,
335 DCB_ATTR_IEEE_PEER_APP,399 DCB_ATTR_IEEE_PEER_APP,
336 DCB_ATTR_IEEE_MAXRATE,400 DCB_ATTR_IEEE_MAXRATE,
401 DCB_ATTR_IEEE_QCN,
402 DCB_ATTR_IEEE_QCN_STATS,
337 __DCB_ATTR_IEEE_MAX403 __DCB_ATTR_IEEE_MAX
338};404};
339#define DCB_ATTR_IEEE_MAX (__DCB_ATTR_IEEE_MAX - 1)405#define DCB_ATTR_IEEE_MAX (__DCB_ATTR_IEEE_MAX - 1)
include/uapi/linux/dm-ioctl.h+2−2
@@ -267,9 +267,9 @@ enum { · 266 unmodified lines
267#define DM_DEV_SET_GEOMETRY _IOWR(DM_IOCTL, DM_DEV_SET_GEOMETRY_CMD, struct dm_ioctl)267#define DM_DEV_SET_GEOMETRY _IOWR(DM_IOCTL, DM_DEV_SET_GEOMETRY_CMD, struct dm_ioctl)
268 268
269#define DM_VERSION_MAJOR 4269#define DM_VERSION_MAJOR 4
270#define DM_VERSION_MINOR 30270#define DM_VERSION_MINOR 31
271#define DM_VERSION_PATCHLEVEL 0271#define DM_VERSION_PATCHLEVEL 0
272#define DM_VERSION_EXTRA "-ioctl (2014-12-22)"272#define DM_VERSION_EXTRA "-ioctl (2015-3-12)"
273 273
274/* Status bits */274/* Status bits */
275#define DM_READONLY_FLAG (1 << 0) /* In/Out */275#define DM_READONLY_FLAG (1 << 0) /* In/Out */
include/uapi/linux/filter.h+7−3
@@ -77,9 +77,13 @@ struct sock_fprog { /* Required for SO_ATTACH_FILTER. */ · 76 unmodified lines
77#define SKF_AD_VLAN_TAG_PRESENT 4877#define SKF_AD_VLAN_TAG_PRESENT 48
78#define SKF_AD_PAY_OFFSET 5278#define SKF_AD_PAY_OFFSET 52
79#define SKF_AD_RANDOM 5679#define SKF_AD_RANDOM 56
80#define SKF_AD_MAX 6080#define SKF_AD_VLAN_TPID 60
81#define SKF_NET_OFF (-0x100000)81#define SKF_AD_MAX 64
82#define SKF_LL_OFF (-0x200000)
83 82
83#define SKF_NET_OFF (-0x100000)
84#define SKF_LL_OFF (-0x200000)
85
86#define BPF_NET_OFF SKF_NET_OFF
87#define BPF_LL_OFF SKF_LL_OFF
84 88
85#endif /* _UAPI__LINUX_FILTER_H__ */89#endif /* _UAPI__LINUX_FILTER_H__ */
include/uapi/linux/fou.h+1−0
@@ -25,6 +25,7 @@ enum { · 24 unmodified lines
25 FOU_CMD_UNSPEC,25 FOU_CMD_UNSPEC,
26 FOU_CMD_ADD,26 FOU_CMD_ADD,
27 FOU_CMD_DEL,27 FOU_CMD_DEL,
28 FOU_CMD_GET,
28 29
29 __FOU_CMD_MAX,30 __FOU_CMD_MAX,
30};31};
include/uapi/linux/hsi/Kbuild+1−1
@@ -1,2 +1,2 @@
1# UAPI Header export list1# UAPI Header export list
2header-y += hsi_char.h2header-y += hsi_char.h cs-protocol.h
include/uapi/linux/hsi/cs-protocol.h+113−0
@@ -0,0 +1,113 @@
1/*
2 * cmt-speech interface definitions
3 *
4 * Copyright (C) 2008,2009,2010 Nokia Corporation. All rights reserved.
5 *
6 * Contact: Kai Vehmanen <kai.vehmanen@nokia.com>
7 * Original author: Peter Ujfalusi <peter.ujfalusi@nokia.com>
8 *
9 * This program is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU General Public License
11 * version 2 as published by the Free Software Foundation.
12 *
13 * This program is distributed in the hope that it will be useful, but
14 * WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
21 * 02110-1301 USA
22 */
23
24#ifndef _CS_PROTOCOL_H
25#define _CS_PROTOCOL_H
26
27#include <linux/types.h>
28#include <linux/ioctl.h>
29
30/* chardev parameters */
31#define CS_DEV_FILE_NAME "/dev/cmt_speech"
32
33/* user-space API versioning */
34#define CS_IF_VERSION 2
35
36/* APE kernel <-> user space messages */
37#define CS_CMD_SHIFT 28
38#define CS_DOMAIN_SHIFT 24
39
40#define CS_CMD_MASK 0xff000000
41#define CS_PARAM_MASK 0xffffff
42
43#define CS_CMD(id, dom) \
44 (((id) << CS_CMD_SHIFT) | ((dom) << CS_DOMAIN_SHIFT))
45
46#define CS_ERROR CS_CMD(1, 0)
47#define CS_RX_DATA_RECEIVED CS_CMD(2, 0)
48#define CS_TX_DATA_READY CS_CMD(3, 0)
49#define CS_TX_DATA_SENT CS_CMD(4, 0)
50
51/* params to CS_ERROR indication */
52#define CS_ERR_PEER_RESET 0
53
54/* ioctl interface */
55
56/* parameters to CS_CONFIG_BUFS ioctl */
57#define CS_FEAT_TSTAMP_RX_CTRL (1 << 0)
58#define CS_FEAT_ROLLING_RX_COUNTER (2 << 0)
59
60/* parameters to CS_GET_STATE ioctl */
61#define CS_STATE_CLOSED 0
62#define CS_STATE_OPENED 1 /* resource allocated */
63#define CS_STATE_CONFIGURED 2 /* data path active */
64
65/* maximum number of TX/RX buffers */
66#define CS_MAX_BUFFERS_SHIFT 4
67#define CS_MAX_BUFFERS (1 << CS_MAX_BUFFERS_SHIFT)
68
69/* Parameters for setting up the data buffers */
70struct cs_buffer_config {
71 __u32 rx_bufs; /* number of RX buffer slots */
72 __u32 tx_bufs; /* number of TX buffer slots */
73 __u32 buf_size; /* bytes */
74 __u32 flags; /* see CS_FEAT_* */
75 __u32 reserved[4];
76};
77
78/*
79 * Struct describing the layout and contents of the driver mmap area.
80 * This information is meant as read-only information for the application.
81 */
82struct cs_mmap_config_block {
83 __u32 reserved1;
84 __u32 buf_size; /* 0=disabled, otherwise the transfer size */
85 __u32 rx_bufs; /* # of RX buffers */
86 __u32 tx_bufs; /* # of TX buffers */
87 __u32 reserved2;
88 /* array of offsets within the mmap area for each RX and TX buffer */
89 __u32 rx_offsets[CS_MAX_BUFFERS];
90 __u32 tx_offsets[CS_MAX_BUFFERS];
91 __u32 rx_ptr;
92 __u32 rx_ptr_boundary;
93 __u32 reserved3[2];
94 /*
95 * if enabled with CS_FEAT_TSTAMP_RX_CTRL, monotonic
96 * timestamp taken when the last control command was received
97 */
98 struct timespec tstamp_rx_ctrl;
99};
100
101#define CS_IO_MAGIC 'C'
102
103#define CS_IOW(num, dtype) _IOW(CS_IO_MAGIC, num, dtype)
104#define CS_IOR(num, dtype) _IOR(CS_IO_MAGIC, num, dtype)
105#define CS_IOWR(num, dtype) _IOWR(CS_IO_MAGIC, num, dtype)
106#define CS_IO(num) _IO(CS_IO_MAGIC, num)
107
108#define CS_GET_STATE CS_IOR(21, unsigned int)
109#define CS_SET_WAKELINE CS_IOW(23, unsigned int)
110#define CS_GET_IF_VERSION CS_IOR(30, unsigned int)
111#define CS_CONFIG_BUFS CS_IOW(31, struct cs_buffer_config)
112
113#endif /* _CS_PROTOCOL_H */
include/uapi/linux/if_addr.h+2−0
@@ -50,6 +50,8 @@ enum { · 49 unmodified lines
50#define IFA_F_PERMANENT 0x8050#define IFA_F_PERMANENT 0x80
51#define IFA_F_MANAGETEMPADDR 0x10051#define IFA_F_MANAGETEMPADDR 0x100
52#define IFA_F_NOPREFIXROUTE 0x20052#define IFA_F_NOPREFIXROUTE 0x200
53#define IFA_F_MCAUTOJOIN 0x400
54#define IFA_F_STABLE_PRIVACY 0x800
53 55
54struct ifa_cacheinfo {56struct ifa_cacheinfo {
55 __u32 ifa_prefered;57 __u32 ifa_prefered;
include/uapi/linux/if_link.h+14−0
@@ -147,6 +147,7 @@ enum { · 146 unmodified lines
147 IFLA_CARRIER_CHANGES,147 IFLA_CARRIER_CHANGES,
148 IFLA_PHYS_SWITCH_ID,148 IFLA_PHYS_SWITCH_ID,
149 IFLA_LINK_NETNSID,149 IFLA_LINK_NETNSID,
150 IFLA_PHYS_PORT_NAME,
150 __IFLA_MAX151 __IFLA_MAX
151};152};
152 153
@@ -215,6 +216,7 @@ enum { · 62 unmodified lines
215enum in6_addr_gen_mode {216enum in6_addr_gen_mode {
216 IN6_ADDR_GEN_MODE_EUI64,217 IN6_ADDR_GEN_MODE_EUI64,
217 IN6_ADDR_GEN_MODE_NONE,218 IN6_ADDR_GEN_MODE_NONE,
219 IN6_ADDR_GEN_MODE_STABLE_PRIVACY,
218};220};
219 221
220/* Bridge section */222/* Bridge section */
@@ -224,6 +226,9 @@ enum { · 3 unmodified lines
224 IFLA_BR_FORWARD_DELAY,226 IFLA_BR_FORWARD_DELAY,
225 IFLA_BR_HELLO_TIME,227 IFLA_BR_HELLO_TIME,
226 IFLA_BR_MAX_AGE,228 IFLA_BR_MAX_AGE,
229 IFLA_BR_AGEING_TIME,
230 IFLA_BR_STP_STATE,
231 IFLA_BR_PRIORITY,
227 __IFLA_BR_MAX,232 __IFLA_BR_MAX,
228};233};
229 234
@@ -247,6 +252,7 @@ enum { · 17 unmodified lines
247 IFLA_BRPORT_UNICAST_FLOOD, /* flood unicast traffic */252 IFLA_BRPORT_UNICAST_FLOOD, /* flood unicast traffic */
248 IFLA_BRPORT_PROXYARP, /* proxy ARP */253 IFLA_BRPORT_PROXYARP, /* proxy ARP */
249 IFLA_BRPORT_LEARNING_SYNC, /* mac learning sync from device */254 IFLA_BRPORT_LEARNING_SYNC, /* mac learning sync from device */
255 IFLA_BRPORT_PROXYARP_WIFI, /* proxy ARP for Wi-Fi */
250 __IFLA_BRPORT_MAX256 __IFLA_BRPORT_MAX
251};257};
252#define IFLA_BRPORT_MAX (__IFLA_BRPORT_MAX - 1)258#define IFLA_BRPORT_MAX (__IFLA_BRPORT_MAX - 1)
@@ -459,6 +465,9 @@ enum { · 206 unmodified lines
459 IFLA_VF_SPOOFCHK, /* Spoof Checking on/off switch */465 IFLA_VF_SPOOFCHK, /* Spoof Checking on/off switch */
460 IFLA_VF_LINK_STATE, /* link state enable/disable/auto switch */466 IFLA_VF_LINK_STATE, /* link state enable/disable/auto switch */
461 IFLA_VF_RATE, /* Min and Max TX Bandwidth Allocation */467 IFLA_VF_RATE, /* Min and Max TX Bandwidth Allocation */
468 IFLA_VF_RSS_QUERY_EN, /* RSS Redirection Table and Hash Key query
469 * on/off switch
470 */
462 __IFLA_VF_MAX,471 __IFLA_VF_MAX,
463};472};
464 473
@@ -503,6 +512,11 @@ struct ifla_vf_link_state { · 38 unmodified lines
503 __u32 link_state;512 __u32 link_state;
504};513};
505 514
515struct ifla_vf_rss_query_en {
516 __u32 vf;
517 __u32 setting;
518};
519
506/* VF ports management section520/* VF ports management section
507 *521 *
508 * Nested layout of set/get msg is:522 * Nested layout of set/get msg is:
include/uapi/linux/if_packet.h+1−0
@@ -99,6 +99,7 @@ struct tpacket_auxdata { · 98 unmodified lines
99#define TP_STATUS_VLAN_VALID (1 << 4) /* auxdata has valid tp_vlan_tci */99#define TP_STATUS_VLAN_VALID (1 << 4) /* auxdata has valid tp_vlan_tci */
100#define TP_STATUS_BLK_TMO (1 << 5)100#define TP_STATUS_BLK_TMO (1 << 5)
101#define TP_STATUS_VLAN_TPID_VALID (1 << 6) /* auxdata has valid tp_vlan_tpid */101#define TP_STATUS_VLAN_TPID_VALID (1 << 6) /* auxdata has valid tp_vlan_tpid */
102#define TP_STATUS_CSUM_VALID (1 << 7)
102 103
103/* Tx ring - header status */104/* Tx ring - header status */
104#define TP_STATUS_AVAILABLE 0105#define TP_STATUS_AVAILABLE 0
include/uapi/linux/iio/Kbuild+3−0
@@ -0,0 +1,3 @@
1# UAPI Header export list
2header-y += events.h
3header-y += types.h
include/uapi/linux/iio/events.h+42−0
@@ -0,0 +1,42 @@
1/* The industrial I/O - event passing to userspace
2 *
3 * Copyright (c) 2008-2011 Jonathan Cameron
4 *
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 as published by
7 * the Free Software Foundation.
8 */
9#ifndef _UAPI_IIO_EVENTS_H_
10#define _UAPI_IIO_EVENTS_H_
11
12#include <linux/ioctl.h>
13#include <linux/types.h>
14
15/**
16 * struct iio_event_data - The actual event being pushed to userspace
17 * @id: event identifier
18 * @timestamp: best estimate of time of event occurrence (often from
19 * the interrupt handler)
20 */
21struct iio_event_data {
22 __u64 id;
23 __s64 timestamp;
24};
25
26#define IIO_GET_EVENT_FD_IOCTL _IOR('i', 0x90, int)
27
28#define IIO_EVENT_CODE_EXTRACT_TYPE(mask) ((mask >> 56) & 0xFF)
29
30#define IIO_EVENT_CODE_EXTRACT_DIR(mask) ((mask >> 48) & 0x7F)
31
32#define IIO_EVENT_CODE_EXTRACT_CHAN_TYPE(mask) ((mask >> 32) & 0xFF)
33
34/* Event code number extraction depends on which type of event we have.
35 * Perhaps review this function in the future*/
36#define IIO_EVENT_CODE_EXTRACT_CHAN(mask) ((__s16)(mask & 0xFFFF))
37#define IIO_EVENT_CODE_EXTRACT_CHAN2(mask) ((__s16)(((mask) >> 16) & 0xFFFF))
38
39#define IIO_EVENT_CODE_EXTRACT_MODIFIER(mask) ((mask >> 40) & 0xFF)
40#define IIO_EVENT_CODE_EXTRACT_DIFF(mask) (((mask) >> 55) & 0x1)
41
42#endif /* _UAPI_IIO_EVENTS_H_ */
include/uapi/linux/iio/types.h+92−0
@@ -0,0 +1,92 @@
1/* industrial I/O data types needed both in and out of kernel
2 *
3 * Copyright (c) 2008 Jonathan Cameron
4 *
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 as published by
7 * the Free Software Foundation.
8 */
9
10#ifndef _UAPI_IIO_TYPES_H_
11#define _UAPI_IIO_TYPES_H_
12
13enum iio_chan_type {
14 IIO_VOLTAGE,
15 IIO_CURRENT,
16 IIO_POWER,
17 IIO_ACCEL,
18 IIO_ANGL_VEL,
19 IIO_MAGN,
20 IIO_LIGHT,
21 IIO_INTENSITY,
22 IIO_PROXIMITY,
23 IIO_TEMP,
24 IIO_INCLI,
25 IIO_ROT,
26 IIO_ANGL,
27 IIO_TIMESTAMP,
28 IIO_CAPACITANCE,
29 IIO_ALTVOLTAGE,
30 IIO_CCT,
31 IIO_PRESSURE,
32 IIO_HUMIDITYRELATIVE,
33 IIO_ACTIVITY,
34 IIO_STEPS,
35 IIO_ENERGY,
36 IIO_DISTANCE,
37 IIO_VELOCITY,
38};
39
40enum iio_modifier {
41 IIO_NO_MOD,
42 IIO_MOD_X,
43 IIO_MOD_Y,
44 IIO_MOD_Z,
45 IIO_MOD_X_AND_Y,
46 IIO_MOD_X_AND_Z,
47 IIO_MOD_Y_AND_Z,
48 IIO_MOD_X_AND_Y_AND_Z,
49 IIO_MOD_X_OR_Y,
50 IIO_MOD_X_OR_Z,
51 IIO_MOD_Y_OR_Z,
52 IIO_MOD_X_OR_Y_OR_Z,
53 IIO_MOD_LIGHT_BOTH,
54 IIO_MOD_LIGHT_IR,
55 IIO_MOD_ROOT_SUM_SQUARED_X_Y,
56 IIO_MOD_SUM_SQUARED_X_Y_Z,
57 IIO_MOD_LIGHT_CLEAR,
58 IIO_MOD_LIGHT_RED,
59 IIO_MOD_LIGHT_GREEN,
60 IIO_MOD_LIGHT_BLUE,
61 IIO_MOD_QUATERNION,
62 IIO_MOD_TEMP_AMBIENT,
63 IIO_MOD_TEMP_OBJECT,
64 IIO_MOD_NORTH_MAGN,
65 IIO_MOD_NORTH_TRUE,
66 IIO_MOD_NORTH_MAGN_TILT_COMP,
67 IIO_MOD_NORTH_TRUE_TILT_COMP,
68 IIO_MOD_RUNNING,
69 IIO_MOD_JOGGING,
70 IIO_MOD_WALKING,
71 IIO_MOD_STILL,
72 IIO_MOD_ROOT_SUM_SQUARED_X_Y_Z,
73};
74
75enum iio_event_type {
76 IIO_EV_TYPE_THRESH,
77 IIO_EV_TYPE_MAG,
78 IIO_EV_TYPE_ROC,
79 IIO_EV_TYPE_THRESH_ADAPTIVE,
80 IIO_EV_TYPE_MAG_ADAPTIVE,
81 IIO_EV_TYPE_CHANGE,
82};
83
84enum iio_event_direction {
85 IIO_EV_DIR_EITHER,
86 IIO_EV_DIR_RISING,
87 IIO_EV_DIR_FALLING,
88 IIO_EV_DIR_NONE,
89};
90
91#endif /* _UAPI_IIO_TYPES_H_ */
92
include/uapi/linux/input.h+8−2
@@ -369,7 +369,8 @@ struct input_keymap_entry { · 368 unmodified lines
369#define KEY_MSDOS 151369#define KEY_MSDOS 151
370#define KEY_COFFEE 152 /* AL Terminal Lock/Screensaver */370#define KEY_COFFEE 152 /* AL Terminal Lock/Screensaver */
371#define KEY_SCREENLOCK KEY_COFFEE371#define KEY_SCREENLOCK KEY_COFFEE
372#define KEY_DIRECTION 153372#define KEY_ROTATE_DISPLAY 153 /* Display orientation for e.g. tablets */
373#define KEY_DIRECTION KEY_ROTATE_DISPLAY
373#define KEY_CYCLEWINDOWS 154374#define KEY_CYCLEWINDOWS 154
374#define KEY_MAIL 155375#define KEY_MAIL 155
375#define KEY_BOOKMARKS 156 /* AC Bookmarks */376#define KEY_BOOKMARKS 156 /* AC Bookmarks */
@@ -702,6 +703,10 @@ struct input_keymap_entry { · 326 unmodified lines
702#define KEY_NUMERIC_9 0x209703#define KEY_NUMERIC_9 0x209
703#define KEY_NUMERIC_STAR 0x20a704#define KEY_NUMERIC_STAR 0x20a
704#define KEY_NUMERIC_POUND 0x20b705#define KEY_NUMERIC_POUND 0x20b
706#define KEY_NUMERIC_A 0x20c /* Phone key A - HUT Telephony 0xb9 */
707#define KEY_NUMERIC_B 0x20d
708#define KEY_NUMERIC_C 0x20e
709#define KEY_NUMERIC_D 0x20f
705 710
706#define KEY_CAMERA_FOCUS 0x210711#define KEY_CAMERA_FOCUS 0x210
707#define KEY_WPS_BUTTON 0x211 /* WiFi Protected Setup key */712#define KEY_WPS_BUTTON 0x211 /* WiFi Protected Setup key */
@@ -973,7 +978,8 @@ struct input_keymap_entry { · 265 unmodified lines
973 */978 */
974#define MT_TOOL_FINGER 0979#define MT_TOOL_FINGER 0
975#define MT_TOOL_PEN 1980#define MT_TOOL_PEN 1
976#define MT_TOOL_MAX 1981#define MT_TOOL_PALM 2
982#define MT_TOOL_MAX 2
977 983
978/*984/*
979 * Values describing the status of a force-feedback effect985 * Values describing the status of a force-feedback effect
include/uapi/linux/ip_vs.h+6−1
@@ -358,6 +358,8 @@ enum { · 357 unmodified lines
358 358
359 IPVS_SVC_ATTR_PE_NAME, /* name of ct retriever */359 IPVS_SVC_ATTR_PE_NAME, /* name of ct retriever */
360 360
361 IPVS_SVC_ATTR_STATS64, /* nested attribute for service stats */
362
361 __IPVS_SVC_ATTR_MAX,363 __IPVS_SVC_ATTR_MAX,
362};364};
363 365
@@ -387,6 +389,8 @@ enum { · 23 unmodified lines
387 389
388 IPVS_DEST_ATTR_ADDR_FAMILY, /* Address family of address */390 IPVS_DEST_ATTR_ADDR_FAMILY, /* Address family of address */
389 391
392 IPVS_DEST_ATTR_STATS64, /* nested attribute for dest stats */
393
390 __IPVS_DEST_ATTR_MAX,394 __IPVS_DEST_ATTR_MAX,
391};395};
392 396
@@ -410,7 +414,8 @@ enum { · 17 unmodified lines
410/*414/*
411 * Attributes used to describe service or destination entry statistics415 * Attributes used to describe service or destination entry statistics
412 *416 *
413 * Used inside nested attributes IPVS_SVC_ATTR_STATS and IPVS_DEST_ATTR_STATS417 * Used inside nested attributes IPVS_SVC_ATTR_STATS, IPVS_DEST_ATTR_STATS,
418 * IPVS_SVC_ATTR_STATS64 and IPVS_DEST_ATTR_STATS64.
414 */419 */
415enum {420enum {
416 IPVS_STATS_ATTR_UNSPEC = 0,421 IPVS_STATS_ATTR_UNSPEC = 0,
include/uapi/linux/ipv6.h+1−0
@@ -170,6 +170,7 @@ enum { · 169 unmodified lines
170 DEVCONF_ACCEPT_RA_FROM_LOCAL,170 DEVCONF_ACCEPT_RA_FROM_LOCAL,
171 DEVCONF_USE_OPTIMISTIC,171 DEVCONF_USE_OPTIMISTIC,
172 DEVCONF_ACCEPT_RA_MTU,172 DEVCONF_ACCEPT_RA_MTU,
173 DEVCONF_STABLE_SECRET,
173 DEVCONF_MAX174 DEVCONF_MAX
174};175};
175 176
include/uapi/linux/kvm.h+64−1
@@ -147,6 +147,16 @@ struct kvm_pit_config { · 146 unmodified lines
147 147
148#define KVM_PIT_SPEAKER_DUMMY 1148#define KVM_PIT_SPEAKER_DUMMY 1
149 149
150struct kvm_s390_skeys {
151 __u64 start_gfn;
152 __u64 count;
153 __u64 skeydata_addr;
154 __u32 flags;
155 __u32 reserved[9];
156};
157#define KVM_S390_GET_SKEYS_NONE 1
158#define KVM_S390_SKEYS_MAX 1048576
159
150#define KVM_EXIT_UNKNOWN 0160#define KVM_EXIT_UNKNOWN 0
151#define KVM_EXIT_EXCEPTION 1161#define KVM_EXIT_EXCEPTION 1
152#define KVM_EXIT_IO 2162#define KVM_EXIT_IO 2
@@ -172,6 +182,7 @@ struct kvm_pit_config { · 19 unmodified lines
172#define KVM_EXIT_S390_TSCH 22182#define KVM_EXIT_S390_TSCH 22
173#define KVM_EXIT_EPR 23183#define KVM_EXIT_EPR 23
174#define KVM_EXIT_SYSTEM_EVENT 24184#define KVM_EXIT_SYSTEM_EVENT 24
185#define KVM_EXIT_S390_STSI 25
175 186
176/* For KVM_EXIT_INTERNAL_ERROR */187/* For KVM_EXIT_INTERNAL_ERROR */
177/* Emulate instruction failed. */188/* Emulate instruction failed. */
@@ -309,6 +320,15 @@ struct kvm_run { · 131 unmodified lines
309 __u32 type;320 __u32 type;
310 __u64 flags;321 __u64 flags;
311 } system_event;322 } system_event;
323 /* KVM_EXIT_S390_STSI */
324 struct {
325 __u64 addr;
326 __u8 ar;
327 __u8 reserved;
328 __u8 fc;
329 __u8 sel1;
330 __u16 sel2;
331 } s390_stsi;
312 /* Fix the size of the union. */332 /* Fix the size of the union. */
313 char padding[256];333 char padding[256];
314 };334 };
@@ -324,7 +344,7 @@ struct kvm_run { · 9 unmodified lines
324 __u64 kvm_dirty_regs;344 __u64 kvm_dirty_regs;
325 union {345 union {
326 struct kvm_sync_regs regs;346 struct kvm_sync_regs regs;
327 char padding[1024];347 char padding[2048];
328 } s;348 } s;
329};349};
330 350
@@ -365,6 +385,24 @@ struct kvm_translation { · 34 unmodified lines
365 __u8 pad[5];385 __u8 pad[5];
366};386};
367 387
388/* for KVM_S390_MEM_OP */
389struct kvm_s390_mem_op {
390 /* in */
391 __u64 gaddr; /* the guest address */
392 __u64 flags; /* flags */
393 __u32 size; /* amount of bytes */
394 __u32 op; /* type of operation */
395 __u64 buf; /* buffer in userspace */
396 __u8 ar; /* the access register number */
397 __u8 reserved[31]; /* should be set to 0 */
398};
399/* types for kvm_s390_mem_op->op */
400#define KVM_S390_MEMOP_LOGICAL_READ 0
401#define KVM_S390_MEMOP_LOGICAL_WRITE 1
402/* flags for kvm_s390_mem_op->flags */
403#define KVM_S390_MEMOP_F_CHECK_ONLY (1ULL << 0)
404#define KVM_S390_MEMOP_F_INJECT_EXCEPTION (1ULL << 1)
405
368/* for KVM_INTERRUPT */406/* for KVM_INTERRUPT */
369struct kvm_interrupt {407struct kvm_interrupt {
370 /* in */408 /* in */
@@ -520,6 +558,13 @@ struct kvm_s390_irq { · 149 unmodified lines
520 } u;558 } u;
521};559};
522 560
561struct kvm_s390_irq_state {
562 __u64 buf;
563 __u32 flags;
564 __u32 len;
565 __u32 reserved[4];
566};
567
523/* for KVM_SET_GUEST_DEBUG */568/* for KVM_SET_GUEST_DEBUG */
524 569
525#define KVM_GUESTDBG_ENABLE 0x00000001570#define KVM_GUESTDBG_ENABLE 0x00000001
@@ -760,6 +805,14 @@ struct kvm_ppc_smmu_info { · 234 unmodified lines
760#define KVM_CAP_PPC_ENABLE_HCALL 104805#define KVM_CAP_PPC_ENABLE_HCALL 104
761#define KVM_CAP_CHECK_EXTENSION_VM 105806#define KVM_CAP_CHECK_EXTENSION_VM 105
762#define KVM_CAP_S390_USER_SIGP 106807#define KVM_CAP_S390_USER_SIGP 106
808#define KVM_CAP_S390_VECTOR_REGISTERS 107
809#define KVM_CAP_S390_MEM_OP 108
810#define KVM_CAP_S390_USER_STSI 109
811#define KVM_CAP_S390_SKEYS 110
812#define KVM_CAP_MIPS_FPU 111
813#define KVM_CAP_MIPS_MSA 112
814#define KVM_CAP_S390_INJECT_IRQ 113
815#define KVM_CAP_S390_IRQ_STATE 114
763 816
764#ifdef KVM_CAP_IRQ_ROUTING817#ifdef KVM_CAP_IRQ_ROUTING
765 818
@@ -1135,6 +1188,16 @@ struct kvm_s390_ucas_mapping { · 369 unmodified lines
1135#define KVM_ARM_VCPU_INIT _IOW(KVMIO, 0xae, struct kvm_vcpu_init)1188#define KVM_ARM_VCPU_INIT _IOW(KVMIO, 0xae, struct kvm_vcpu_init)
1136#define KVM_ARM_PREFERRED_TARGET _IOR(KVMIO, 0xaf, struct kvm_vcpu_init)1189#define KVM_ARM_PREFERRED_TARGET _IOR(KVMIO, 0xaf, struct kvm_vcpu_init)
1137#define KVM_GET_REG_LIST _IOWR(KVMIO, 0xb0, struct kvm_reg_list)1190#define KVM_GET_REG_LIST _IOWR(KVMIO, 0xb0, struct kvm_reg_list)
1191/* Available with KVM_CAP_S390_MEM_OP */
1192#define KVM_S390_MEM_OP _IOW(KVMIO, 0xb1, struct kvm_s390_mem_op)
1193/* Available with KVM_CAP_S390_SKEYS */
1194#define KVM_S390_GET_SKEYS _IOW(KVMIO, 0xb2, struct kvm_s390_skeys)
1195#define KVM_S390_SET_SKEYS _IOW(KVMIO, 0xb3, struct kvm_s390_skeys)
1196/* Available with KVM_CAP_S390_INJECT_IRQ */
1197#define KVM_S390_IRQ _IOW(KVMIO, 0xb4, struct kvm_s390_irq)
1198/* Available with KVM_CAP_S390_IRQ_STATE */
1199#define KVM_S390_SET_IRQ_STATE _IOW(KVMIO, 0xb5, struct kvm_s390_irq_state)
1200#define KVM_S390_GET_IRQ_STATE _IOW(KVMIO, 0xb6, struct kvm_s390_irq_state)
1138 1201
1139#define KVM_DEV_ASSIGN_ENABLE_IOMMU (1 << 0)1202#define KVM_DEV_ASSIGN_ENABLE_IOMMU (1 << 0)
1140#define KVM_DEV_ASSIGN_PCI_2_3 (1 << 1)1203#define KVM_DEV_ASSIGN_PCI_2_3 (1 << 1)
include/uapi/linux/magic.h+2−0
@@ -58,6 +58,8 @@ · 57 unmodified lines
58 58
59#define STACK_END_MAGIC 0x57AC6E9D59#define STACK_END_MAGIC 0x57AC6E9D
60 60
61#define TRACEFS_MAGIC 0x74726163
62
61#define V9FS_MAGIC 0x0102199763#define V9FS_MAGIC 0x01021997
62 64
63#define BDEVFS_MAGIC 0x6264657665#define BDEVFS_MAGIC 0x62646576
include/uapi/linux/media-bus-format.h+11−2
@@ -33,24 +33,32 @@ · 32 unmodified lines
33 33
34#define MEDIA_BUS_FMT_FIXED 0x000134#define MEDIA_BUS_FMT_FIXED 0x0001
35 35
36/* RGB - next is 0x1010 */36/* RGB - next is 0x1018 */
37#define MEDIA_BUS_FMT_RGB444_1X12 0x1016
37#define MEDIA_BUS_FMT_RGB444_2X8_PADHI_BE 0x100138#define MEDIA_BUS_FMT_RGB444_2X8_PADHI_BE 0x1001
38#define MEDIA_BUS_FMT_RGB444_2X8_PADHI_LE 0x100239#define MEDIA_BUS_FMT_RGB444_2X8_PADHI_LE 0x1002
39#define MEDIA_BUS_FMT_RGB555_2X8_PADHI_BE 0x100340#define MEDIA_BUS_FMT_RGB555_2X8_PADHI_BE 0x1003
40#define MEDIA_BUS_FMT_RGB555_2X8_PADHI_LE 0x100441#define MEDIA_BUS_FMT_RGB555_2X8_PADHI_LE 0x1004
42#define MEDIA_BUS_FMT_RGB565_1X16 0x1017
41#define MEDIA_BUS_FMT_BGR565_2X8_BE 0x100543#define MEDIA_BUS_FMT_BGR565_2X8_BE 0x1005
42#define MEDIA_BUS_FMT_BGR565_2X8_LE 0x100644#define MEDIA_BUS_FMT_BGR565_2X8_LE 0x1006
43#define MEDIA_BUS_FMT_RGB565_2X8_BE 0x100745#define MEDIA_BUS_FMT_RGB565_2X8_BE 0x1007
44#define MEDIA_BUS_FMT_RGB565_2X8_LE 0x100846#define MEDIA_BUS_FMT_RGB565_2X8_LE 0x1008
45#define MEDIA_BUS_FMT_RGB666_1X18 0x100947#define MEDIA_BUS_FMT_RGB666_1X18 0x1009
46#define MEDIA_BUS_FMT_RBG888_1X24 0x100e48#define MEDIA_BUS_FMT_RBG888_1X24 0x100e
49#define MEDIA_BUS_FMT_RGB666_1X24_CPADHI 0x1015
50#define MEDIA_BUS_FMT_RGB666_1X7X3_SPWG 0x1010
51#define MEDIA_BUS_FMT_BGR888_1X24 0x1013
52#define MEDIA_BUS_FMT_GBR888_1X24 0x1014
47#define MEDIA_BUS_FMT_RGB888_1X24 0x100a53#define MEDIA_BUS_FMT_RGB888_1X24 0x100a
48#define MEDIA_BUS_FMT_RGB888_2X12_BE 0x100b54#define MEDIA_BUS_FMT_RGB888_2X12_BE 0x100b
49#define MEDIA_BUS_FMT_RGB888_2X12_LE 0x100c55#define MEDIA_BUS_FMT_RGB888_2X12_LE 0x100c
56#define MEDIA_BUS_FMT_RGB888_1X7X4_SPWG 0x1011
57#define MEDIA_BUS_FMT_RGB888_1X7X4_JEIDA 0x1012
50#define MEDIA_BUS_FMT_ARGB8888_1X32 0x100d58#define MEDIA_BUS_FMT_ARGB8888_1X32 0x100d
51#define MEDIA_BUS_FMT_RGB888_1X32_PADHI 0x100f59#define MEDIA_BUS_FMT_RGB888_1X32_PADHI 0x100f
52 60
53/* YUV (including grey) - next is 0x2025 */61/* YUV (including grey) - next is 0x2026 */
54#define MEDIA_BUS_FMT_Y8_1X8 0x200162#define MEDIA_BUS_FMT_Y8_1X8 0x2001
55#define MEDIA_BUS_FMT_UV8_1X8 0x201563#define MEDIA_BUS_FMT_UV8_1X8 0x2015
56#define MEDIA_BUS_FMT_UYVY8_1_5X8 0x200264#define MEDIA_BUS_FMT_UYVY8_1_5X8 0x2002
@@ -81,6 +89,7 @@ · 24 unmodified lines
81#define MEDIA_BUS_FMT_YUYV10_1X20 0x200d89#define MEDIA_BUS_FMT_YUYV10_1X20 0x200d
82#define MEDIA_BUS_FMT_YVYU10_1X20 0x200e90#define MEDIA_BUS_FMT_YVYU10_1X20 0x200e
83#define MEDIA_BUS_FMT_VUY8_1X24 0x202491#define MEDIA_BUS_FMT_VUY8_1X24 0x2024
92#define MEDIA_BUS_FMT_YUV8_1X24 0x2025
84#define MEDIA_BUS_FMT_UYVY12_1X24 0x202093#define MEDIA_BUS_FMT_UYVY12_1X24 0x2020
85#define MEDIA_BUS_FMT_VYUY12_1X24 0x202194#define MEDIA_BUS_FMT_VYUY12_1X24 0x2021
86#define MEDIA_BUS_FMT_YUYV12_1X24 0x202295#define MEDIA_BUS_FMT_YUYV12_1X24 0x2022
include/uapi/linux/neighbour.h+1−0
@@ -126,6 +126,7 @@ enum { · 125 unmodified lines
126 NDTPA_PROXY_QLEN, /* u32 */126 NDTPA_PROXY_QLEN, /* u32 */
127 NDTPA_LOCKTIME, /* u64, msecs */127 NDTPA_LOCKTIME, /* u64, msecs */
128 NDTPA_QUEUE_LENBYTES, /* u32 */128 NDTPA_QUEUE_LENBYTES, /* u32 */
129 NDTPA_MCAST_REPROBES, /* u32 */
129 __NDTPA_MAX130 __NDTPA_MAX
130};131};
131#define NDTPA_MAX (__NDTPA_MAX - 1)132#define NDTPA_MAX (__NDTPA_MAX - 1)
include/uapi/linux/netfilter/nf_tables.h+79−1
@@ -1,19 +1,49 @@
1#ifndef _LINUX_NF_TABLES_H1#ifndef _LINUX_NF_TABLES_H
2#define _LINUX_NF_TABLES_H2#define _LINUX_NF_TABLES_H
3 3
4#define NFT_TABLE_MAXNAMELEN 32
4#define NFT_CHAIN_MAXNAMELEN 325#define NFT_CHAIN_MAXNAMELEN 32
5#define NFT_USERDATA_MAXLEN 2566#define NFT_USERDATA_MAXLEN 256
6 7
8/**
9 * enum nft_registers - nf_tables registers
10 *
11 * nf_tables used to have five registers: a verdict register and four data
12 * registers of size 16. The data registers have been changed to 16 registers
13 * of size 4. For compatibility reasons, the NFT_REG_[1-4] registers still
14 * map to areas of size 16, the 4 byte registers are addressed using
15 * NFT_REG32_00 - NFT_REG32_15.
16 */
7enum nft_registers {17enum nft_registers {
8 NFT_REG_VERDICT,18 NFT_REG_VERDICT,
9 NFT_REG_1,19 NFT_REG_1,
10 NFT_REG_2,20 NFT_REG_2,
11 NFT_REG_3,21 NFT_REG_3,
12 NFT_REG_4,22 NFT_REG_4,
13 __NFT_REG_MAX23 __NFT_REG_MAX,
24
25 NFT_REG32_00 = 8,
26 MFT_REG32_01,
27 NFT_REG32_02,
28 NFT_REG32_03,
29 NFT_REG32_04,
30 NFT_REG32_05,
31 NFT_REG32_06,
32 NFT_REG32_07,
33 NFT_REG32_08,
34 NFT_REG32_09,
35 NFT_REG32_10,
36 NFT_REG32_11,
37 NFT_REG32_12,
38 NFT_REG32_13,
39 NFT_REG32_14,
40 NFT_REG32_15,
14};41};
15#define NFT_REG_MAX (__NFT_REG_MAX - 1)42#define NFT_REG_MAX (__NFT_REG_MAX - 1)
16 43
44#define NFT_REG_SIZE 16
45#define NFT_REG32_SIZE 4
46
17/**47/**
18 * enum nft_verdicts - nf_tables internal verdicts48 * enum nft_verdicts - nf_tables internal verdicts
19 *49 *
@@ -207,12 +237,16 @@ enum nft_rule_compat_attributes { · 187 unmodified lines
207 * @NFT_SET_CONSTANT: set contents may not change while bound237 * @NFT_SET_CONSTANT: set contents may not change while bound
208 * @NFT_SET_INTERVAL: set contains intervals238 * @NFT_SET_INTERVAL: set contains intervals
209 * @NFT_SET_MAP: set is used as a dictionary239 * @NFT_SET_MAP: set is used as a dictionary
240 * @NFT_SET_TIMEOUT: set uses timeouts
241 * @NFT_SET_EVAL: set contains expressions for evaluation
210 */242 */
211enum nft_set_flags {243enum nft_set_flags {
212 NFT_SET_ANONYMOUS = 0x1,244 NFT_SET_ANONYMOUS = 0x1,
213 NFT_SET_CONSTANT = 0x2,245 NFT_SET_CONSTANT = 0x2,
214 NFT_SET_INTERVAL = 0x4,246 NFT_SET_INTERVAL = 0x4,
215 NFT_SET_MAP = 0x8,247 NFT_SET_MAP = 0x8,
248 NFT_SET_TIMEOUT = 0x10,
249 NFT_SET_EVAL = 0x20,
216};250};
217 251
218/**252/**
@@ -251,6 +285,8 @@ enum nft_set_desc_attributes { · 32 unmodified lines
251 * @NFTA_SET_POLICY: selection policy (NLA_U32)285 * @NFTA_SET_POLICY: selection policy (NLA_U32)
252 * @NFTA_SET_DESC: set description (NLA_NESTED)286 * @NFTA_SET_DESC: set description (NLA_NESTED)
253 * @NFTA_SET_ID: uniquely identifies a set in a transaction (NLA_U32)287 * @NFTA_SET_ID: uniquely identifies a set in a transaction (NLA_U32)
288 * @NFTA_SET_TIMEOUT: default timeout value (NLA_U64)
289 * @NFTA_SET_GC_INTERVAL: garbage collection interval (NLA_U32)
254 */290 */
255enum nft_set_attributes {291enum nft_set_attributes {
256 NFTA_SET_UNSPEC,292 NFTA_SET_UNSPEC,
@@ -264,6 +300,8 @@ enum nft_set_attributes { · 7 unmodified lines
264 NFTA_SET_POLICY,300 NFTA_SET_POLICY,
265 NFTA_SET_DESC,301 NFTA_SET_DESC,
266 NFTA_SET_ID,302 NFTA_SET_ID,
303 NFTA_SET_TIMEOUT,
304 NFTA_SET_GC_INTERVAL,
267 __NFTA_SET_MAX305 __NFTA_SET_MAX
268};306};
269#define NFTA_SET_MAX (__NFTA_SET_MAX - 1)307#define NFTA_SET_MAX (__NFTA_SET_MAX - 1)
@@ -283,12 +321,20 @@ enum nft_set_elem_flags { · 13 unmodified lines
283 * @NFTA_SET_ELEM_KEY: key value (NLA_NESTED: nft_data)321 * @NFTA_SET_ELEM_KEY: key value (NLA_NESTED: nft_data)
284 * @NFTA_SET_ELEM_DATA: data value of mapping (NLA_NESTED: nft_data_attributes)322 * @NFTA_SET_ELEM_DATA: data value of mapping (NLA_NESTED: nft_data_attributes)
285 * @NFTA_SET_ELEM_FLAGS: bitmask of nft_set_elem_flags (NLA_U32)323 * @NFTA_SET_ELEM_FLAGS: bitmask of nft_set_elem_flags (NLA_U32)
324 * @NFTA_SET_ELEM_TIMEOUT: timeout value (NLA_U64)
325 * @NFTA_SET_ELEM_EXPIRATION: expiration time (NLA_U64)
326 * @NFTA_SET_ELEM_USERDATA: user data (NLA_BINARY)
327 * @NFTA_SET_ELEM_EXPR: expression (NLA_NESTED: nft_expr_attributes)
286 */328 */
287enum nft_set_elem_attributes {329enum nft_set_elem_attributes {
288 NFTA_SET_ELEM_UNSPEC,330 NFTA_SET_ELEM_UNSPEC,
289 NFTA_SET_ELEM_KEY,331 NFTA_SET_ELEM_KEY,
290 NFTA_SET_ELEM_DATA,332 NFTA_SET_ELEM_DATA,
291 NFTA_SET_ELEM_FLAGS,333 NFTA_SET_ELEM_FLAGS,
334 NFTA_SET_ELEM_TIMEOUT,
335 NFTA_SET_ELEM_EXPIRATION,
336 NFTA_SET_ELEM_USERDATA,
337 NFTA_SET_ELEM_EXPR,
292 __NFTA_SET_ELEM_MAX338 __NFTA_SET_ELEM_MAX
293};339};
294#define NFTA_SET_ELEM_MAX (__NFTA_SET_ELEM_MAX - 1)340#define NFTA_SET_ELEM_MAX (__NFTA_SET_ELEM_MAX - 1)
@@ -346,6 +392,9 @@ enum nft_data_attributes { · 51 unmodified lines
346};392};
347#define NFTA_DATA_MAX (__NFTA_DATA_MAX - 1)393#define NFTA_DATA_MAX (__NFTA_DATA_MAX - 1)
348 394
395/* Maximum length of a value */
396#define NFT_DATA_VALUE_MAXLEN 64
397
349/**398/**
350 * enum nft_verdict_attributes - nf_tables verdict netlink attributes399 * enum nft_verdict_attributes - nf_tables verdict netlink attributes
351 *400 *
@@ -504,6 +553,35 @@ enum nft_lookup_attributes { · 152 unmodified lines
504};553};
505#define NFTA_LOOKUP_MAX (__NFTA_LOOKUP_MAX - 1)554#define NFTA_LOOKUP_MAX (__NFTA_LOOKUP_MAX - 1)
506 555
556enum nft_dynset_ops {
557 NFT_DYNSET_OP_ADD,
558 NFT_DYNSET_OP_UPDATE,
559};
560
561/**
562 * enum nft_dynset_attributes - dynset expression attributes
563 *
564 * @NFTA_DYNSET_SET_NAME: name of set the to add data to (NLA_STRING)
565 * @NFTA_DYNSET_SET_ID: uniquely identifier of the set in the transaction (NLA_U32)
566 * @NFTA_DYNSET_OP: operation (NLA_U32)
567 * @NFTA_DYNSET_SREG_KEY: source register of the key (NLA_U32)
568 * @NFTA_DYNSET_SREG_DATA: source register of the data (NLA_U32)
569 * @NFTA_DYNSET_TIMEOUT: timeout value for the new element (NLA_U64)
570 * @NFTA_DYNSET_EXPR: expression (NLA_NESTED: nft_expr_attributes)
571 */
572enum nft_dynset_attributes {
573 NFTA_DYNSET_UNSPEC,
574 NFTA_DYNSET_SET_NAME,
575 NFTA_DYNSET_SET_ID,
576 NFTA_DYNSET_OP,
577 NFTA_DYNSET_SREG_KEY,
578 NFTA_DYNSET_SREG_DATA,
579 NFTA_DYNSET_TIMEOUT,
580 NFTA_DYNSET_EXPR,
581 __NFTA_DYNSET_MAX,
582};
583#define NFTA_DYNSET_MAX (__NFTA_DYNSET_MAX - 1)
584
507/**585/**
508 * enum nft_payload_bases - nf_tables payload expression offset bases586 * enum nft_payload_bases - nf_tables payload expression offset bases
509 *587 *
include/uapi/linux/netfilter_bridge/ebtables.h+0−2
@@ -12,9 +12,7 @@ · 11 unmodified lines
12 12
13#ifndef _UAPI__LINUX_BRIDGE_EFF_H13#ifndef _UAPI__LINUX_BRIDGE_EFF_H
14#define _UAPI__LINUX_BRIDGE_EFF_H14#define _UAPI__LINUX_BRIDGE_EFF_H
15#include <linux/if.h>
16#include <linux/netfilter_bridge.h>15#include <linux/netfilter_bridge.h>
17#include <linux/if_ether.h>
18 16
19#define EBT_TABLE_MAXNAMELEN 3217#define EBT_TABLE_MAXNAMELEN 32
20#define EBT_CHAIN_MAXNAMELEN EBT_TABLE_MAXNAMELEN18#define EBT_CHAIN_MAXNAMELEN EBT_TABLE_MAXNAMELEN
include/uapi/linux/nfsd/export.h+1−1
@@ -47,7 +47,7 @@ · 46 unmodified lines
47 * exported filesystem.47 * exported filesystem.
48 */48 */
49#define NFSEXP_V4ROOT 0x1000049#define NFSEXP_V4ROOT 0x10000
50#define NFSEXP_NOPNFS 0x2000050#define NFSEXP_PNFS 0x20000
51 51
52/* All flags that we claim to support. (Note we don't support NOACL.) */52/* All flags that we claim to support. (Note we don't support NOACL.) */
53#define NFSEXP_ALLFLAGS 0x3FE7F53#define NFSEXP_ALLFLAGS 0x3FE7F
include/uapi/linux/nl80211.h+31−3
@@ -25,6 +25,19 @@ · 24 unmodified lines
25 *25 *
26 */26 */
27 27
28/*
29 * This header file defines the userspace API to the wireless stack. Please
30 * be careful not to break things - i.e. don't move anything around or so
31 * unless you can demonstrate that it breaks neither API nor ABI.
32 *
33 * Additions to the API should be accompanied by actual implementations in
34 * an upstream driver, so that example implementations exist in case there
35 * are ever concerns about the precise semantics of the API or changes are
36 * needed, and to ensure that code for dead (no longer implemented) API
37 * can actually be identified and removed.
38 * Nonetheless, semantics should also be documented carefully in this file.
39 */
40
28#include <linux/types.h>41#include <linux/types.h>
29 42
30#define NL80211_GENL_NAME "nl80211"43#define NL80211_GENL_NAME "nl80211"
@@ -1684,6 +1697,10 @@ enum nl80211_commands { · 1653 unmodified lines
1684 * If set during scheduled scan start then the new scan req will be1697 * If set during scheduled scan start then the new scan req will be
1685 * owned by the netlink socket that created it and the scheduled scan will1698 * owned by the netlink socket that created it and the scheduled scan will
1686 * be stopped when the socket is closed.1699 * be stopped when the socket is closed.
1700 * If set during configuration of regulatory indoor operation then the
1701 * regulatory indoor configuration would be owned by the netlink socket
1702 * that configured the indoor setting, and the indoor operation would be
1703 * cleared when the socket is closed.
1687 *1704 *
1688 * @NL80211_ATTR_TDLS_INITIATOR: flag attribute indicating the current end is1705 * @NL80211_ATTR_TDLS_INITIATOR: flag attribute indicating the current end is
1689 * the TDLS link initiator.1706 * the TDLS link initiator.
@@ -1737,8 +1754,12 @@ enum nl80211_commands { · 47 unmodified lines
1737 * should be contained in the result as the sum of the respective counters1754 * should be contained in the result as the sum of the respective counters
1738 * over all channels.1755 * over all channels.
1739 *1756 *
1740 * @NL80211_ATTR_SCHED_SCAN_DELAY: delay before a scheduled scan (or a1757 * @NL80211_ATTR_SCHED_SCAN_DELAY: delay before the first cycle of a
1741 * WoWLAN net-detect scan) is started, u32 in seconds.1758 * scheduled scan (or a WoWLAN net-detect scan) is started, u32
1759 * in seconds.
1760
1761 * @NL80211_ATTR_REG_INDOOR: flag attribute, if set indicates that the device
1762 * is operating in an indoor environment.
1742 *1763 *
1743 * @NUM_NL80211_ATTR: total number of nl80211_attrs available1764 * @NUM_NL80211_ATTR: total number of nl80211_attrs available
1744 * @NL80211_ATTR_MAX: highest attribute number currently defined1765 * @NL80211_ATTR_MAX: highest attribute number currently defined
@@ -2107,6 +2128,8 @@ enum nl80211_attrs { · 362 unmodified lines
2107 2128
2108 NL80211_ATTR_SCHED_SCAN_DELAY,2129 NL80211_ATTR_SCHED_SCAN_DELAY,
2109 2130
2131 NL80211_ATTR_REG_INDOOR,
2132
2110 /* add attributes here, update the policy in nl80211.c */2133 /* add attributes here, update the policy in nl80211.c */
2111 2134
2112 __NL80211_ATTR_AFTER_LAST,2135 __NL80211_ATTR_AFTER_LAST,
@@ -3092,7 +3115,8 @@ enum nl80211_mesh_power_mode { · 979 unmodified lines
3092 *3115 *
3093 * @NL80211_MESHCONF_PLINK_TIMEOUT: If no tx activity is seen from a STA we've3116 * @NL80211_MESHCONF_PLINK_TIMEOUT: If no tx activity is seen from a STA we've
3094 * established peering with for longer than this time (in seconds), then3117 * established peering with for longer than this time (in seconds), then
3095 * remove it from the STA's list of peers. Default is 30 minutes.3118 * remove it from the STA's list of peers. You may set this to 0 to disable
3119 * the removal of the STA. Default is 30 minutes.
3096 *3120 *
3097 * @__NL80211_MESHCONF_ATTR_AFTER_LAST: internal use3121 * @__NL80211_MESHCONF_ATTR_AFTER_LAST: internal use
3098 */3122 */
@@ -3694,6 +3718,8 @@ struct nl80211_pattern_support { · 595 unmodified lines
3694 * @NL80211_WOWLAN_TRIG_ANY: wake up on any activity, do not really put3718 * @NL80211_WOWLAN_TRIG_ANY: wake up on any activity, do not really put
3695 * the chip into a special state -- works best with chips that have3719 * the chip into a special state -- works best with chips that have
3696 * support for low-power operation already (flag)3720 * support for low-power operation already (flag)
3721 * Note that this mode is incompatible with all of the others, if
3722 * any others are even supported by the device.
3697 * @NL80211_WOWLAN_TRIG_DISCONNECT: wake up on disconnect, the way disconnect3723 * @NL80211_WOWLAN_TRIG_DISCONNECT: wake up on disconnect, the way disconnect
3698 * is detected is implementation-specific (flag)3724 * is detected is implementation-specific (flag)
3699 * @NL80211_WOWLAN_TRIG_MAGIC_PKT: wake up on magic packet (6x 0xff, followed3725 * @NL80211_WOWLAN_TRIG_MAGIC_PKT: wake up on magic packet (6x 0xff, followed
@@ -4327,11 +4353,13 @@ enum nl80211_feature_flags { · 627 unmodified lines
4327 4353
4328/**4354/**
4329 * enum nl80211_ext_feature_index - bit index of extended features.4355 * enum nl80211_ext_feature_index - bit index of extended features.
4356 * @NL80211_EXT_FEATURE_VHT_IBSS: This driver supports IBSS with VHT datarates.
4330 *4357 *
4331 * @NUM_NL80211_EXT_FEATURES: number of extended features.4358 * @NUM_NL80211_EXT_FEATURES: number of extended features.
4332 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.4359 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
4333 */4360 */
4334enum nl80211_ext_feature_index {4361enum nl80211_ext_feature_index {
4362 NL80211_EXT_FEATURE_VHT_IBSS,
4335 4363
4336 /* add new features before the definition below */4364 /* add new features before the definition below */
4337 NUM_NL80211_EXT_FEATURES,4365 NUM_NL80211_EXT_FEATURES,
include/uapi/linux/perf_event.h+98−17
@@ -152,21 +152,42 @@ enum perf_event_sample_format { · 151 unmodified lines
152 * The branch types can be combined, however BRANCH_ANY covers all types152 * The branch types can be combined, however BRANCH_ANY covers all types
153 * of branches and therefore it supersedes all the other types.153 * of branches and therefore it supersedes all the other types.
154 */154 */
155enum perf_branch_sample_type_shift {
156 PERF_SAMPLE_BRANCH_USER_SHIFT = 0, /* user branches */
157 PERF_SAMPLE_BRANCH_KERNEL_SHIFT = 1, /* kernel branches */
158 PERF_SAMPLE_BRANCH_HV_SHIFT = 2, /* hypervisor branches */
159
160 PERF_SAMPLE_BRANCH_ANY_SHIFT = 3, /* any branch types */
161 PERF_SAMPLE_BRANCH_ANY_CALL_SHIFT = 4, /* any call branch */
162 PERF_SAMPLE_BRANCH_ANY_RETURN_SHIFT = 5, /* any return branch */
163 PERF_SAMPLE_BRANCH_IND_CALL_SHIFT = 6, /* indirect calls */
164 PERF_SAMPLE_BRANCH_ABORT_TX_SHIFT = 7, /* transaction aborts */
165 PERF_SAMPLE_BRANCH_IN_TX_SHIFT = 8, /* in transaction */
166 PERF_SAMPLE_BRANCH_NO_TX_SHIFT = 9, /* not in transaction */
167 PERF_SAMPLE_BRANCH_COND_SHIFT = 10, /* conditional branches */
168
169 PERF_SAMPLE_BRANCH_CALL_STACK_SHIFT = 11, /* call/ret stack */
170
171 PERF_SAMPLE_BRANCH_MAX_SHIFT /* non-ABI */
172};
173
155enum perf_branch_sample_type {174enum perf_branch_sample_type {
156 PERF_SAMPLE_BRANCH_USER = 1U << 0, /* user branches */175 PERF_SAMPLE_BRANCH_USER = 1U << PERF_SAMPLE_BRANCH_USER_SHIFT,
157 PERF_SAMPLE_BRANCH_KERNEL = 1U << 1, /* kernel branches */176 PERF_SAMPLE_BRANCH_KERNEL = 1U << PERF_SAMPLE_BRANCH_KERNEL_SHIFT,
158 PERF_SAMPLE_BRANCH_HV = 1U << 2, /* hypervisor branches */177 PERF_SAMPLE_BRANCH_HV = 1U << PERF_SAMPLE_BRANCH_HV_SHIFT,
159 178
160 PERF_SAMPLE_BRANCH_ANY = 1U << 3, /* any branch types */179 PERF_SAMPLE_BRANCH_ANY = 1U << PERF_SAMPLE_BRANCH_ANY_SHIFT,
161 PERF_SAMPLE_BRANCH_ANY_CALL = 1U << 4, /* any call branch */180 PERF_SAMPLE_BRANCH_ANY_CALL = 1U << PERF_SAMPLE_BRANCH_ANY_CALL_SHIFT,
162 PERF_SAMPLE_BRANCH_ANY_RETURN = 1U << 5, /* any return branch */181 PERF_SAMPLE_BRANCH_ANY_RETURN = 1U << PERF_SAMPLE_BRANCH_ANY_RETURN_SHIFT,
163 PERF_SAMPLE_BRANCH_IND_CALL = 1U << 6, /* indirect calls */182 PERF_SAMPLE_BRANCH_IND_CALL = 1U << PERF_SAMPLE_BRANCH_IND_CALL_SHIFT,
164 PERF_SAMPLE_BRANCH_ABORT_TX = 1U << 7, /* transaction aborts */183 PERF_SAMPLE_BRANCH_ABORT_TX = 1U << PERF_SAMPLE_BRANCH_ABORT_TX_SHIFT,
165 PERF_SAMPLE_BRANCH_IN_TX = 1U << 8, /* in transaction */184 PERF_SAMPLE_BRANCH_IN_TX = 1U << PERF_SAMPLE_BRANCH_IN_TX_SHIFT,
166 PERF_SAMPLE_BRANCH_NO_TX = 1U << 9, /* not in transaction */185 PERF_SAMPLE_BRANCH_NO_TX = 1U << PERF_SAMPLE_BRANCH_NO_TX_SHIFT,
167 PERF_SAMPLE_BRANCH_COND = 1U << 10, /* conditional branches */186 PERF_SAMPLE_BRANCH_COND = 1U << PERF_SAMPLE_BRANCH_COND_SHIFT,
168 187
169 PERF_SAMPLE_BRANCH_MAX = 1U << 11, /* non-ABI */188 PERF_SAMPLE_BRANCH_CALL_STACK = 1U << PERF_SAMPLE_BRANCH_CALL_STACK_SHIFT,
189
190 PERF_SAMPLE_BRANCH_MAX = 1U << PERF_SAMPLE_BRANCH_MAX_SHIFT,
170};191};
171 192
172#define PERF_SAMPLE_BRANCH_PLM_ALL \193#define PERF_SAMPLE_BRANCH_PLM_ALL \
@@ -240,6 +261,7 @@ enum perf_event_read_format { · 67 unmodified lines
240#define PERF_ATTR_SIZE_VER3 96 /* add: sample_regs_user */261#define PERF_ATTR_SIZE_VER3 96 /* add: sample_regs_user */
241 /* add: sample_stack_user */262 /* add: sample_stack_user */
242#define PERF_ATTR_SIZE_VER4 104 /* add: sample_regs_intr */263#define PERF_ATTR_SIZE_VER4 104 /* add: sample_regs_intr */
264#define PERF_ATTR_SIZE_VER5 112 /* add: aux_watermark */
243 265
244/*266/*
245 * Hardware event_id to monitor via a performance monitoring event:267 * Hardware event_id to monitor via a performance monitoring event:
@@ -305,7 +327,8 @@ struct perf_event_attr { · 59 unmodified lines
305 exclude_callchain_user : 1, /* exclude user callchains */327 exclude_callchain_user : 1, /* exclude user callchains */
306 mmap2 : 1, /* include mmap with inode data */328 mmap2 : 1, /* include mmap with inode data */
307 comm_exec : 1, /* flag comm events that are due to an exec */329 comm_exec : 1, /* flag comm events that are due to an exec */
308 __reserved_1 : 39;330 use_clockid : 1, /* use @clockid for time fields */
331 __reserved_1 : 38;
309 332
310 union {333 union {
311 __u32 wakeup_events; /* wakeup every n events */334 __u32 wakeup_events; /* wakeup every n events */
@@ -334,8 +357,7 @@ struct perf_event_attr { · 22 unmodified lines
334 */357 */
335 __u32 sample_stack_user;358 __u32 sample_stack_user;
336 359
337 /* Align to u64. */360 __s32 clockid;
338 __u32 __reserved_2;
339 /*361 /*
340 * Defines set of regs to dump for each sample362 * Defines set of regs to dump for each sample
341 * state captured on:363 * state captured on:
@@ -345,6 +367,12 @@ struct perf_event_attr { · 3 unmodified lines
345 * See asm/perf_regs.h for details.367 * See asm/perf_regs.h for details.
346 */368 */
347 __u64 sample_regs_intr;369 __u64 sample_regs_intr;
370
371 /*
372 * Wakeup watermark for AUX area
373 */
374 __u32 aux_watermark;
375 __u32 __reserved_2; /* align to __u64 */
348};376};
349 377
350#define perf_flags(attr) (*(&(attr)->read_format + 1))378#define perf_flags(attr) (*(&(attr)->read_format + 1))
@@ -360,6 +388,7 @@ struct perf_event_attr { · 9 unmodified lines
360#define PERF_EVENT_IOC_SET_OUTPUT _IO ('$', 5)388#define PERF_EVENT_IOC_SET_OUTPUT _IO ('$', 5)
361#define PERF_EVENT_IOC_SET_FILTER _IOW('$', 6, char *)389#define PERF_EVENT_IOC_SET_FILTER _IOW('$', 6, char *)
362#define PERF_EVENT_IOC_ID _IOR('$', 7, __u64 *)390#define PERF_EVENT_IOC_ID _IOR('$', 7, __u64 *)
391#define PERF_EVENT_IOC_SET_BPF _IOW('$', 8, __u32)
363 392
364enum perf_event_ioc_flags {393enum perf_event_ioc_flags {
365 PERF_IOC_FLAG_GROUP = 1U << 0,394 PERF_IOC_FLAG_GROUP = 1U << 0,
@@ -500,9 +529,30 @@ struct perf_event_mmap_page { · 134 unmodified lines
500 * In this case the kernel will not over-write unread data.529 * In this case the kernel will not over-write unread data.
501 *530 *
502 * See perf_output_put_handle() for the data ordering.531 * See perf_output_put_handle() for the data ordering.
532 *
533 * data_{offset,size} indicate the location and size of the perf record
534 * buffer within the mmapped area.
503 */535 */
504 __u64 data_head; /* head in the data section */536 __u64 data_head; /* head in the data section */
505 __u64 data_tail; /* user-space written tail */537 __u64 data_tail; /* user-space written tail */
538 __u64 data_offset; /* where the buffer starts */
539 __u64 data_size; /* data buffer size */
540
541 /*
542 * AUX area is defined by aux_{offset,size} fields that should be set
543 * by the userspace, so that
544 *
545 * aux_offset >= data_offset + data_size
546 *
547 * prior to mmap()ing it. Size of the mmap()ed area should be aux_size.
548 *
549 * Ring buffer pointers aux_{head,tail} have the same semantics as
550 * data_{head,tail} and same ordering rules apply.
551 */
552 __u64 aux_head;
553 __u64 aux_tail;
554 __u64 aux_offset;
555 __u64 aux_size;
506};556};
507 557
508#define PERF_RECORD_MISC_CPUMODE_MASK (7 << 0)558#define PERF_RECORD_MISC_CPUMODE_MASK (7 << 0)
@@ -725,6 +775,31 @@ enum perf_event_type { · 216 unmodified lines
725 */775 */
726 PERF_RECORD_MMAP2 = 10,776 PERF_RECORD_MMAP2 = 10,
727 777
778 /*
779 * Records that new data landed in the AUX buffer part.
780 *
781 * struct {
782 * struct perf_event_header header;
783 *
784 * u64 aux_offset;
785 * u64 aux_size;
786 * u64 flags;
787 * struct sample_id sample_id;
788 * };
789 */
790 PERF_RECORD_AUX = 11,
791
792 /*
793 * Indicates that instruction trace has started
794 *
795 * struct {
796 * struct perf_event_header header;
797 * u32 pid;
798 * u32 tid;
799 * };
800 */
801 PERF_RECORD_ITRACE_START = 12,
802
728 PERF_RECORD_MAX, /* non-ABI */803 PERF_RECORD_MAX, /* non-ABI */
729};804};
730 805
@@ -742,6 +817,12 @@ enum perf_callchain_context { · 11 unmodified lines
742 PERF_CONTEXT_MAX = (__u64)-4095,817 PERF_CONTEXT_MAX = (__u64)-4095,
743};818};
744 819
820/**
821 * PERF_RECORD_AUX::flags bits
822 */
823#define PERF_AUX_FLAG_TRUNCATED 0x01 /* record was truncated to fit */
824#define PERF_AUX_FLAG_OVERWRITE 0x02 /* snapshot from overwrite mode */
825
745#define PERF_FLAG_FD_NO_GROUP (1UL << 0)826#define PERF_FLAG_FD_NO_GROUP (1UL << 0)
746#define PERF_FLAG_FD_OUTPUT (1UL << 1)827#define PERF_FLAG_FD_OUTPUT (1UL << 1)
747#define PERF_FLAG_PID_CGROUP (1UL << 2) /* pid=cgroup id, per-cpu mode only */828#define PERF_FLAG_PID_CGROUP (1UL << 2) /* pid=cgroup id, per-cpu mode only */
include/uapi/linux/pkt_cls.h+2−0
@@ -397,6 +397,8 @@ enum { · 396 unmodified lines
397 TCA_BPF_CLASSID,397 TCA_BPF_CLASSID,
398 TCA_BPF_OPS_LEN,398 TCA_BPF_OPS_LEN,
399 TCA_BPF_OPS,399 TCA_BPF_OPS,
400 TCA_BPF_FD,
401 TCA_BPF_NAME,
400 __TCA_BPF_MAX,402 __TCA_BPF_MAX,
401};403};
402 404
include/uapi/linux/quota.h+4−2
@@ -36,11 +36,12 @@ · 35 unmodified lines
36#include <linux/errno.h>36#include <linux/errno.h>
37#include <linux/types.h>37#include <linux/types.h>
38 38
39#define __DQUOT_VERSION__ "dquot_6.5.2"39#define __DQUOT_VERSION__ "dquot_6.6.0"
40 40
41#define MAXQUOTAS 241#define MAXQUOTAS 3
42#define USRQUOTA 0 /* element used for user quotas */42#define USRQUOTA 0 /* element used for user quotas */
43#define GRPQUOTA 1 /* element used for group quotas */43#define GRPQUOTA 1 /* element used for group quotas */
44#define PRJQUOTA 2 /* element used for project quotas */
44 45
45/*46/*
46 * Definitions for the default names of the quotas files.47 * Definitions for the default names of the quotas files.
@@ -48,6 +49,7 @@ · 1 unmodified line
48#define INITQFNAMES { \49#define INITQFNAMES { \
49 "user", /* USRQUOTA */ \50 "user", /* USRQUOTA */ \
50 "group", /* GRPQUOTA */ \51 "group", /* GRPQUOTA */ \
52 "project", /* PRJQUOTA */ \
51 "undefined", \53 "undefined", \
52};54};
53 55
include/uapi/linux/rtnetlink.h+16−0
@@ -134,6 +134,8 @@ enum { · 133 unmodified lines
134 134
135 RTM_NEWNSID = 88,135 RTM_NEWNSID = 88,
136#define RTM_NEWNSID RTM_NEWNSID136#define RTM_NEWNSID RTM_NEWNSID
137 RTM_DELNSID = 89,
138#define RTM_DELNSID RTM_DELNSID
137 RTM_GETNSID = 90,139 RTM_GETNSID = 90,
138#define RTM_GETNSID RTM_GETNSID140#define RTM_GETNSID RTM_GETNSID
139 141
@@ -303,6 +305,9 @@ enum rtattr_type_t { · 163 unmodified lines
303 RTA_TABLE,305 RTA_TABLE,
304 RTA_MARK,306 RTA_MARK,
305 RTA_MFC_STATS,307 RTA_MFC_STATS,
308 RTA_VIA,
309 RTA_NEWDST,
310 RTA_PREF,
306 __RTA_MAX311 __RTA_MAX
307};312};
308 313
@@ -332,6 +337,7 @@ struct rtnexthop { · 23 unmodified lines
332#define RTNH_F_DEAD 1 /* Nexthop is dead (used by multipath) */337#define RTNH_F_DEAD 1 /* Nexthop is dead (used by multipath) */
333#define RTNH_F_PERVASIVE 2 /* Do recursive gateway lookup */338#define RTNH_F_PERVASIVE 2 /* Do recursive gateway lookup */
334#define RTNH_F_ONLINK 4 /* Gateway is forced on link */339#define RTNH_F_ONLINK 4 /* Gateway is forced on link */
340#define RTNH_F_EXTERNAL 8 /* Route installed externally */
335 341
336/* Macros to handle hexthops */342/* Macros to handle hexthops */
337 343
@@ -344,6 +350,12 @@ struct rtnexthop { · 6 unmodified lines
344#define RTNH_SPACE(len) RTNH_ALIGN(RTNH_LENGTH(len))350#define RTNH_SPACE(len) RTNH_ALIGN(RTNH_LENGTH(len))
345#define RTNH_DATA(rtnh) ((struct rtattr*)(((char*)(rtnh)) + RTNH_LENGTH(0)))351#define RTNH_DATA(rtnh) ((struct rtattr*)(((char*)(rtnh)) + RTNH_LENGTH(0)))
346 352
353/* RTA_VIA */
354struct rtvia {
355 __kernel_sa_family_t rtvia_family;
356 __u8 rtvia_addr[0];
357};
358
347/* RTM_CACHEINFO */359/* RTM_CACHEINFO */
348 360
349struct rta_cacheinfo {361struct rta_cacheinfo {
@@ -623,6 +635,10 @@ enum rtnetlink_groups { · 273 unmodified lines
623#define RTNLGRP_IPV6_NETCONF RTNLGRP_IPV6_NETCONF635#define RTNLGRP_IPV6_NETCONF RTNLGRP_IPV6_NETCONF
624 RTNLGRP_MDB,636 RTNLGRP_MDB,
625#define RTNLGRP_MDB RTNLGRP_MDB637#define RTNLGRP_MDB RTNLGRP_MDB
638 RTNLGRP_MPLS_ROUTE,
639#define RTNLGRP_MPLS_ROUTE RTNLGRP_MPLS_ROUTE
640 RTNLGRP_NSID,
641#define RTNLGRP_NSID RTNLGRP_NSID
626 __RTNLGRP_MAX642 __RTNLGRP_MAX
627};643};
628#define RTNLGRP_MAX (__RTNLGRP_MAX - 1)644#define RTNLGRP_MAX (__RTNLGRP_MAX - 1)
include/uapi/linux/serial.h+4−0
@@ -65,6 +65,10 @@ struct serial_struct { · 64 unmodified lines
65#define SERIAL_IO_PORT 065#define SERIAL_IO_PORT 0
66#define SERIAL_IO_HUB6 166#define SERIAL_IO_HUB6 1
67#define SERIAL_IO_MEM 267#define SERIAL_IO_MEM 2
68#define SERIAL_IO_MEM32 3
69#define SERIAL_IO_AU 4
70#define SERIAL_IO_TSI 5
71#define SERIAL_IO_MEM32BE 6
68 72
69#define UART_CLEAR_FIFO 0x0173#define UART_CLEAR_FIFO 0x01
70#define UART_USE_FIFO 0x0274#define UART_USE_FIFO 0x02
include/uapi/linux/tc_act/Kbuild+1−0
@@ -9,3 +9,4 @@ header-y += tc_pedit.h · 8 unmodified lines
9header-y += tc_skbedit.h9header-y += tc_skbedit.h
10header-y += tc_vlan.h10header-y += tc_vlan.h
11header-y += tc_bpf.h11header-y += tc_bpf.h
12header-y += tc_connmark.h
include/uapi/linux/tc_act/tc_bpf.h+2−0
@@ -24,6 +24,8 @@ enum { · 23 unmodified lines
24 TCA_ACT_BPF_PARMS,24 TCA_ACT_BPF_PARMS,
25 TCA_ACT_BPF_OPS_LEN,25 TCA_ACT_BPF_OPS_LEN,
26 TCA_ACT_BPF_OPS,26 TCA_ACT_BPF_OPS,
27 TCA_ACT_BPF_FD,
28 TCA_ACT_BPF_NAME,
27 __TCA_ACT_BPF_MAX,29 __TCA_ACT_BPF_MAX,
28};30};
29#define TCA_ACT_BPF_MAX (__TCA_ACT_BPF_MAX - 1)31#define TCA_ACT_BPF_MAX (__TCA_ACT_BPF_MAX - 1)
include/uapi/linux/tipc_netlink.h+9−0
@@ -83,11 +83,20 @@ enum { · 82 unmodified lines
83 TIPC_NLA_BEARER_NAME, /* string */83 TIPC_NLA_BEARER_NAME, /* string */
84 TIPC_NLA_BEARER_PROP, /* nest */84 TIPC_NLA_BEARER_PROP, /* nest */
85 TIPC_NLA_BEARER_DOMAIN, /* u32 */85 TIPC_NLA_BEARER_DOMAIN, /* u32 */
86 TIPC_NLA_BEARER_UDP_OPTS, /* nest */
86 87
87 __TIPC_NLA_BEARER_MAX,88 __TIPC_NLA_BEARER_MAX,
88 TIPC_NLA_BEARER_MAX = __TIPC_NLA_BEARER_MAX - 189 TIPC_NLA_BEARER_MAX = __TIPC_NLA_BEARER_MAX - 1
89};90};
90 91
92enum {
93 TIPC_NLA_UDP_UNSPEC,
94 TIPC_NLA_UDP_LOCAL, /* sockaddr_storage */
95 TIPC_NLA_UDP_REMOTE, /* sockaddr_storage */
96
97 __TIPC_NLA_UDP_MAX,
98 TIPC_NLA_UDP_MAX = __TIPC_NLA_UDP_MAX - 1
99};
91/* Socket info */100/* Socket info */
92enum {101enum {
93 TIPC_NLA_SOCK_UNSPEC,102 TIPC_NLA_SOCK_UNSPEC,
include/uapi/linux/vfio.h+2−0
@@ -160,6 +160,8 @@ struct vfio_device_info { · 159 unmodified lines
160 __u32 flags;160 __u32 flags;
161#define VFIO_DEVICE_FLAGS_RESET (1 << 0) /* Device supports reset */161#define VFIO_DEVICE_FLAGS_RESET (1 << 0) /* Device supports reset */
162#define VFIO_DEVICE_FLAGS_PCI (1 << 1) /* vfio-pci device */162#define VFIO_DEVICE_FLAGS_PCI (1 << 1) /* vfio-pci device */
163#define VFIO_DEVICE_FLAGS_PLATFORM (1 << 2) /* vfio-platform device */
164#define VFIO_DEVICE_FLAGS_AMBA (1 << 3) /* vfio-amba device */
163 __u32 num_regions; /* Max region index + 1 */165 __u32 num_regions; /* Max region index + 1 */
164 __u32 num_irqs; /* Max IRQ index + 1 */166 __u32 num_irqs; /* Max IRQ index + 1 */
165};167};
include/uapi/linux/virtio_blk.h+6−2
@@ -60,7 +60,7 @@ struct virtio_blk_config { · 59 unmodified lines
60 __u32 size_max;60 __u32 size_max;
61 /* The maximum number of segments (if VIRTIO_BLK_F_SEG_MAX) */61 /* The maximum number of segments (if VIRTIO_BLK_F_SEG_MAX) */
62 __u32 seg_max;62 __u32 seg_max;
63 /* geometry the device (if VIRTIO_BLK_F_GEOMETRY) */63 /* geometry of the device (if VIRTIO_BLK_F_GEOMETRY) */
64 struct virtio_blk_geometry {64 struct virtio_blk_geometry {
65 __u16 cylinders;65 __u16 cylinders;
66 __u8 heads;66 __u8 heads;
@@ -119,7 +119,11 @@ struct virtio_blk_config { · 52 unmodified lines
119#define VIRTIO_BLK_T_BARRIER 0x80000000119#define VIRTIO_BLK_T_BARRIER 0x80000000
120#endif /* !VIRTIO_BLK_NO_LEGACY */120#endif /* !VIRTIO_BLK_NO_LEGACY */
121 121
122/* This is the first element of the read scatter-gather list. */122/*
123 * This comes first in the read scatter-gather list.
124 * For legacy virtio, if VIRTIO_F_ANY_LAYOUT is not negotiated,
125 * this is the first element of the read scatter-gather list.
126 */
123struct virtio_blk_outhdr {127struct virtio_blk_outhdr {
124 /* VIRTIO_BLK_T* */128 /* VIRTIO_BLK_T* */
125 __virtio32 type;129 __virtio32 type;
include/uapi/linux/virtio_scsi.h+10−2
@@ -29,8 +29,16 @@ · 28 unmodified lines
29 29
30#include <linux/virtio_types.h>30#include <linux/virtio_types.h>
31 31
32#define VIRTIO_SCSI_CDB_SIZE 3232/* Default values of the CDB and sense data size configuration fields */
33#define VIRTIO_SCSI_SENSE_SIZE 9633#define VIRTIO_SCSI_CDB_DEFAULT_SIZE 32
34#define VIRTIO_SCSI_SENSE_DEFAULT_SIZE 96
35
36#ifndef VIRTIO_SCSI_CDB_SIZE
37#define VIRTIO_SCSI_CDB_SIZE VIRTIO_SCSI_CDB_DEFAULT_SIZE
38#endif
39#ifndef VIRTIO_SCSI_SENSE_SIZE
40#define VIRTIO_SCSI_SENSE_SIZE VIRTIO_SCSI_SENSE_DEFAULT_SIZE
41#endif
34 42
35/* SCSI command request, followed by data-out */43/* SCSI command request, followed by data-out */
36struct virtio_scsi_cmd_req {44struct virtio_scsi_cmd_req {
include/uapi/linux/xfrm.h+2−0
@@ -1,6 +1,7 @@
1#ifndef _LINUX_XFRM_H1#ifndef _LINUX_XFRM_H
2#define _LINUX_XFRM_H2#define _LINUX_XFRM_H
3 3
4#include <linux/in6.h>
4#include <linux/types.h>5#include <linux/types.h>
5 6
6/* All of the structures in this file may not change size as they are7/* All of the structures in this file may not change size as they are
@@ -13,6 +14,7 @@ · 6 unmodified lines
13typedef union {14typedef union {
14 __be32 a4;15 __be32 a4;
15 __be32 a6[4];16 __be32 a6[4];
17 struct in6_addr in6;
16} xfrm_address_t;18} xfrm_address_t;
17 19
18/* Ident of a specific xfrm_state. It is used on input to lookup20/* Ident of a specific xfrm_state. It is used on input to lookup