Pull networking updates from David Miller: "This is a re-do of the net-next pull request for the current merge window. The only difference from the one I made the other day is that this has Eliezer's interface renames and the timeout handling changes made based upon your feedback, as well as a few bug fixes that have trickeled in. Highlights: 1) Low latency device polling, eliminating the cost of interrupt handling and context switches. Allows direct polling of a network device from socket operations, such as recvmsg() and poll(). Currently ixgbe, mlx4, and bnx2x support this feature. Full high level description, performance numbers, and design in commit 0a4db187a999 ("Merge branch 'll_poll'") From Eliezer Tamir. 2) With the routing cache removed, ip_check_mc_rcu() gets exercised more than ever before in the case where we have lots of multicast addresses. Use a hash table instead of a simple linked list, from Eric Dumazet. 3) Add driver for Atheros CQA98xx 802.11ac wireless devices, from Bartosz Markowski, Janusz Dziedzic, Kalle Valo, Marek Kwaczynski, Marek Puzyniak, Michal Kazior, and Sujith Manoharan. 4) Support reporting the TUN device persist flag to userspace, from Pavel Emelyanov. 5) Allow controlling network device VF link state using netlink, from Rony Efraim. 6) Support GRE tunneling in openvswitch, from Pravin B Shelar. 7) Adjust SOCK_MIN_RCVBUF and SOCK_MIN_SNDBUF for modern times, from Daniel Borkmann and Eric Dumazet. 8) Allow controlling of TCP quickack behavior on a per-route basis, from Cong Wang. 9) Several bug fixes and improvements to vxlan from Stephen Hemminger, Pravin B Shelar, and Mike Rapoport. In particular, support receiving on multiple UDP ports. 10) Major cleanups, particular in the area of debugging and cookie lifetime handline, to the SCTP protocol code. From Daniel Borkmann. 11) Allow packets to cross network namespaces when traversing tunnel devices. From Nicolas Dichtel. 12) Allow monitoring netlink traffic via AF_PACKET sockets, in a manner akin to how we monitor real network traffic via ptype_all. From Daniel Borkmann. 13) Several bug fixes and improvements for the new alx device driver, from Johannes Berg. 14) Fix scalability issues in the netem packet scheduler's time queue, by using an rbtree. From Eric Dumazet. 15) Several bug fixes in TCP loss recovery handling, from Yuchung Cheng. 16) Add support for GSO segmentation of MPLS packets, from Simon Horman. 17) Make network notifiers have a real data type for the opaque pointer that's passed into them. Use this to properly handle network device flag changes in arp_netdev_event(). From Jiri Pirko and Timo Teräs. 18) Convert several drivers over to module_pci_driver(), from Peter Huewe. 19) tcp_fixup_rcvbuf() can loop 500 times over loopback, just use a O(1) calculation instead. From Eric Dumazet. 20) Support setting of explicit tunnel peer addresses in ipv6, just like ipv4. From Nicolas Dichtel. 21) Protect x86 BPF JIT against spraying attacks, from Eric Dumazet. 22) Prevent a single high rate flow from overruning an individual cpu during RX packet processing via selective flow shedding. From Willem de Bruijn. 23) Don't use spinlocks in TCP md5 signing fast paths, from Eric Dumazet. 24) Don't just drop GSO packets which are above the TBF scheduler's burst limit, chop them up so they are in-bounds instead. Also from Eric Dumazet. 25) VLAN offloads are missed when configured on top of a bridge, fix from Vlad Yasevich. 26) Support IPV6 in ping sockets. From Lorenzo Colitti. 27) Receive flow steering targets should be updated at poll() time too, from David Majnemer. 28) Fix several corner case regressions in PMTU/redirect handling due to the routing cache removal, from Timo Teräs. 29) We have to be mindful of ipv4 mapped ipv6 sockets in upd_v6_push_pending_frames(). From Hannes Frederic Sowa. 30) Fix L2TP sequence number handling bugs, from James Chapman." * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1214 commits) drivers/net: caif: fix wrong rtnl_is_locked() usage drivers/net: enic: release rtnl_lock on error-path vhost-net: fix use-after-free in vhost_net_flush net: mv643xx_eth: do not use port number as platform device id net: sctp: confirm route during forward progress virtio_net: fix race in RX VQ processing virtio: support unlocked queue poll net/cadence/macb: fix bug/typo in extracting gem_irq_read_clear bit Documentation: Fix references to defunct linux-net@vger.kernel.org net/fs: change busy poll time accounting net: rename low latency sockets functions to busy poll bridge: fix some kernel warning in multicast timer sfc: Fix memory leak when discarding scattered packets sit: fix tunnel update via netlink dt:net:stmmac: Add dt specific phy reset callback support. dt:net:stmmac: Add support to dwmac version 3.610 and 3.710 dt:net:stmmac: Allocate platform data only if its NULL. net:stmmac: fix memleak in the open method ipv6: rt6_check_neigh should successfully verify neigh if no NUD information are available net: ipv6: fix wrong ping_v6_sendmsg return value ...
Showing the changes to include/uapi (18 of 1181 files). Show all
Unified · Split
| @@ -30,6 +30,8 @@ · 29 unmodified lines | ||
| 30 | 30 | |
| 31 | 31 | #define POLLFREE 0x4000 /* currently only for epoll */ |
| 32 | 32 | |
| 33 | +#define POLL_BUSY_LOOP 0x8000 | |
| 34 | + | |
| 33 | 35 | struct pollfd { |
| 34 | 36 | int fd; |
| 35 | 37 | short events; |
| @@ -76,4 +76,6 @@ · 75 unmodified lines | ||
| 76 | 76 | |
| 77 | 77 | #define SO_SELECT_ERR_QUEUE 45 |
| 78 | 78 | |
| 79 | +#define SO_LL 46 | |
| 80 | + | |
| 79 | 81 | #endif /* __ASM_GENERIC_SOCKET_H */ |
| @@ -993,8 +993,8 @@ enum ethtool_sfeatures_retval_bits { · 992 unmodified lines | ||
| 993 | 993 | #define PORT_OTHER 0xff |
| 994 | 994 | |
| 995 | 995 | /* Which transceiver to use. */ |
| 996 | −#define XCVR_INTERNAL 0x00 | |
| 997 | −#define XCVR_EXTERNAL 0x01 | |
| 996 | +#define XCVR_INTERNAL 0x00 /* PHY and MAC are in the same package */ | |
| 997 | +#define XCVR_EXTERNAL 0x01 /* PHY and MAC are in different packages */ | |
| 998 | 998 | #define XCVR_DUMMY1 0x02 |
| 999 | 999 | #define XCVR_DUMMY2 0x03 |
| 1000 | 1000 | #define XCVR_DUMMY3 0x04 |
| @@ -9,6 +9,7 @@ enum { · 8 unmodified lines | ||
| 9 | 9 | TCA_STATS_RATE_EST, |
| 10 | 10 | TCA_STATS_QUEUE, |
| 11 | 11 | TCA_STATS_APP, |
| 12 | + TCA_STATS_RATE_EST64, | |
| 12 | 13 | __TCA_STATS_MAX, |
| 13 | 14 | }; |
| 14 | 15 | #define TCA_STATS_MAX (__TCA_STATS_MAX - 1) |
| @@ -37,6 +38,16 @@ struct gnet_stats_rate_est { · 22 unmodified lines | ||
| 37 | 38 | __u32 pps; |
| 38 | 39 | }; |
| 39 | 40 | |
| 41 | +/** | |
| 42 | + * struct gnet_stats_rate_est64 - rate estimator | |
| 43 | + * @bps: current byte rate | |
| 44 | + * @pps: current packet rate | |
| 45 | + */ | |
| 46 | +struct gnet_stats_rate_est64 { | |
| 47 | + __u64 bps; | |
| 48 | + __u64 pps; | |
| 49 | +}; | |
| 50 | + | |
| 40 | 51 | /** |
| 41 | 52 | * struct gnet_stats_queue - queuing statistics |
| 42 | 53 | * @qlen: queue length |
| @@ -93,6 +93,7 @@ · 92 unmodified lines | ||
| 93 | 93 | #define ARPHRD_PHONET_PIPE 821 /* PhoNet pipe header */ |
| 94 | 94 | #define ARPHRD_CAIF 822 /* CAIF media type */ |
| 95 | 95 | #define ARPHRD_IP6GRE 823 /* GRE over IPv6 */ |
| 96 | +#define ARPHRD_NETLINK 824 /* Netlink header */ | |
| 96 | 97 | |
| 97 | 98 | #define ARPHRD_VOID 0xFFFF /* Void type, nothing is known */ |
| 98 | 99 | #define ARPHRD_NONE 0xFFFE /* zero header length */ |
| @@ -221,6 +221,8 @@ enum { · 220 unmodified lines | ||
| 221 | 221 | IFLA_BRPORT_GUARD, /* bpdu guard */ |
| 222 | 222 | IFLA_BRPORT_PROTECT, /* root port protection */ |
| 223 | 223 | IFLA_BRPORT_FAST_LEAVE, /* multicast fast leave */ |
| 224 | + IFLA_BRPORT_LEARNING, /* mac learning */ | |
| 225 | + IFLA_BRPORT_UNICAST_FLOOD, /* flood unicast traffic */ | |
| 224 | 226 | __IFLA_BRPORT_MAX |
| 225 | 227 | }; |
| 226 | 228 | #define IFLA_BRPORT_MAX (__IFLA_BRPORT_MAX - 1) |
| @@ -336,6 +338,7 @@ enum { · 109 unmodified lines | ||
| 336 | 338 | IFLA_VF_VLAN, |
| 337 | 339 | IFLA_VF_TX_RATE, /* TX Bandwidth Allocation */ |
| 338 | 340 | IFLA_VF_SPOOFCHK, /* Spoof Checking on/off switch */ |
| 341 | + IFLA_VF_LINK_STATE, /* link state enable/disable/auto switch */ | |
| 339 | 342 | __IFLA_VF_MAX, |
| 340 | 343 | }; |
| 341 | 344 | |
| @@ -362,6 +365,18 @@ struct ifla_vf_spoofchk { · 20 unmodified lines | ||
| 362 | 365 | __u32 setting; |
| 363 | 366 | }; |
| 364 | 367 | |
| 368 | +enum { | |
| 369 | + IFLA_VF_LINK_STATE_AUTO, /* link state of the uplink */ | |
| 370 | + IFLA_VF_LINK_STATE_ENABLE, /* link always up */ | |
| 371 | + IFLA_VF_LINK_STATE_DISABLE, /* link always down */ | |
| 372 | + __IFLA_VF_LINK_STATE_MAX, | |
| 373 | +}; | |
| 374 | + | |
| 375 | +struct ifla_vf_link_state { | |
| 376 | + __u32 vf; | |
| 377 | + __u32 link_state; | |
| 378 | +}; | |
| 379 | + | |
| 365 | 380 | /* VF ports management section |
| 366 | 381 | * |
| 367 | 382 | * Nested layout of set/get msg is: |
| @@ -135,11 +135,11 @@ struct pppoe_tag { · 134 unmodified lines | ||
| 135 | 135 | |
| 136 | 136 | struct pppoe_hdr { |
| 137 | 137 | #if defined(__LITTLE_ENDIAN_BITFIELD) |
| 138 | − __u8 ver : 4; | |
| 139 | 138 | __u8 type : 4; |
| 139 | + __u8 ver : 4; | |
| 140 | 140 | #elif defined(__BIG_ENDIAN_BITFIELD) |
| 141 | − __u8 type : 4; | |
| 142 | 141 | __u8 ver : 4; |
| 142 | + __u8 type : 4; | |
| 143 | 143 | #else |
| 144 | 144 | #error "Please fix <asm/byteorder.h>" |
| 145 | 145 | #endif |
| @@ -68,6 +68,8 @@ · 67 unmodified lines | ||
| 68 | 68 | #define IFF_MULTI_QUEUE 0x0100 |
| 69 | 69 | #define IFF_ATTACH_QUEUE 0x0200 |
| 70 | 70 | #define IFF_DETACH_QUEUE 0x0400 |
| 71 | +/* read-only flag */ | |
| 72 | +#define IFF_PERSIST 0x0800 | |
| 71 | 73 | |
| 72 | 74 | /* Features for GSO (TUNSETOFFLOAD). */ |
| 73 | 75 | #define TUN_F_CSUM 0x01 /* You can hand me unchecksummed packets. */ |
| @@ -20,6 +20,12 @@ · 19 unmodified lines | ||
| 20 | 20 | #define IP_VS_SVC_F_PERSISTENT 0x0001 /* persistent port */ |
| 21 | 21 | #define IP_VS_SVC_F_HASHED 0x0002 /* hashed entry */ |
| 22 | 22 | #define IP_VS_SVC_F_ONEPACKET 0x0004 /* one-packet scheduling */ |
| 23 | +#define IP_VS_SVC_F_SCHED1 0x0008 /* scheduler flag 1 */ | |
| 24 | +#define IP_VS_SVC_F_SCHED2 0x0010 /* scheduler flag 2 */ | |
| 25 | +#define IP_VS_SVC_F_SCHED3 0x0020 /* scheduler flag 3 */ | |
| 26 | + | |
| 27 | +#define IP_VS_SVC_F_SCHED_SH_FALLBACK IP_VS_SVC_F_SCHED1 /* SH fallback */ | |
| 28 | +#define IP_VS_SVC_F_SCHED_SH_PORT IP_VS_SVC_F_SCHED2 /* SH use port */ | |
| 23 | 29 | |
| 24 | 30 | /* |
| 25 | 31 | * Destination Server Flags |
| @@ -105,5 +105,7 @@ enum nfqnl_attr_config { · 104 unmodified lines | ||
| 105 | 105 | #define NFQA_SKB_CSUMNOTREADY (1 << 0) |
| 106 | 106 | /* packet is GSO (i.e., exceeds device mtu) */ |
| 107 | 107 | #define NFQA_SKB_GSO (1 << 1) |
| 108 | +/* csum not validated (incoming device doesn't support hw checksum, etc.) */ | |
| 109 | +#define NFQA_SKB_CSUM_NOTVERIFIED (1 << 2) | |
| 108 | 110 | |
| 109 | 111 | #endif /* _NFNETLINK_QUEUE_H */ |
| @@ -5,10 +5,17 @@ · 4 unmodified lines | ||
| 5 | 5 | |
| 6 | 6 | enum { |
| 7 | 7 | XT_SOCKET_TRANSPARENT = 1 << 0, |
| 8 | + XT_SOCKET_NOWILDCARD = 1 << 1, | |
| 8 | 9 | }; |
| 9 | 10 | |
| 10 | 11 | struct xt_socket_mtinfo1 { |
| 11 | 12 | __u8 flags; |
| 12 | 13 | }; |
| 14 | +#define XT_SOCKET_FLAGS_V1 XT_SOCKET_TRANSPARENT | |
| 15 | + | |
| 16 | +struct xt_socket_mtinfo2 { | |
| 17 | + __u8 flags; | |
| 18 | +}; | |
| 19 | +#define XT_SOCKET_FLAGS_V2 (XT_SOCKET_TRANSPARENT | XT_SOCKET_NOWILDCARD) | |
| 13 | 20 | |
| 14 | 21 | #endif /* _XT_SOCKET_H */ |
| @@ -69,6 +69,8 @@ · 68 unmodified lines | ||
| 69 | 69 | * starting a poll from a device which has a secure element enabled means |
| 70 | 70 | * we want to do SE based card emulation. |
| 71 | 71 | * @NFC_CMD_DISABLE_SE: Disable the physical link to a specific secure element. |
| 72 | + * @NFC_CMD_FW_UPLOAD: Request to Load/flash firmware, or event to inform that | |
| 73 | + * some firmware was loaded | |
| 72 | 74 | */ |
| 73 | 75 | enum nfc_commands { |
| 74 | 76 | NFC_CMD_UNSPEC, |
| @@ -92,6 +94,9 @@ enum nfc_commands { · 17 unmodified lines | ||
| 92 | 94 | NFC_CMD_DISABLE_SE, |
| 93 | 95 | NFC_CMD_LLC_SDREQ, |
| 94 | 96 | NFC_EVENT_LLC_SDRES, |
| 97 | + NFC_CMD_FW_UPLOAD, | |
| 98 | + NFC_EVENT_SE_ADDED, | |
| 99 | + NFC_EVENT_SE_REMOVED, | |
| 95 | 100 | /* private: internal use only */ |
| 96 | 101 | __NFC_CMD_AFTER_LAST |
| 97 | 102 | }; |
| @@ -121,6 +126,9 @@ enum nfc_commands { · 23 unmodified lines | ||
| 121 | 126 | * @NFC_ATTR_LLC_PARAM_RW: Receive Window size parameter |
| 122 | 127 | * @NFC_ATTR_LLC_PARAM_MIUX: MIU eXtension parameter |
| 123 | 128 | * @NFC_ATTR_SE: Available Secure Elements |
| 129 | + * @NFC_ATTR_FIRMWARE_NAME: Free format firmware version | |
| 130 | + * @NFC_ATTR_SE_INDEX: Secure element index | |
| 131 | + * @NFC_ATTR_SE_TYPE: Secure element type (UICC or EMBEDDED) | |
| 124 | 132 | */ |
| 125 | 133 | enum nfc_attrs { |
| 126 | 134 | NFC_ATTR_UNSPEC, |
| @@ -143,6 +151,9 @@ enum nfc_attrs { · 16 unmodified lines | ||
| 143 | 151 | NFC_ATTR_LLC_PARAM_MIUX, |
| 144 | 152 | NFC_ATTR_SE, |
| 145 | 153 | NFC_ATTR_LLC_SDP, |
| 154 | + NFC_ATTR_FIRMWARE_NAME, | |
| 155 | + NFC_ATTR_SE_INDEX, | |
| 156 | + NFC_ATTR_SE_TYPE, | |
| 146 | 157 | /* private: internal use only */ |
| 147 | 158 | __NFC_ATTR_AFTER_LAST |
| 148 | 159 | }; |
| @@ -159,9 +170,12 @@ enum nfc_sdp_attr { · 10 unmodified lines | ||
| 159 | 170 | |
| 160 | 171 | #define NFC_DEVICE_NAME_MAXSIZE 8 |
| 161 | 172 | #define NFC_NFCID1_MAXSIZE 10 |
| 173 | +#define NFC_NFCID2_MAXSIZE 8 | |
| 174 | +#define NFC_NFCID3_MAXSIZE 10 | |
| 162 | 175 | #define NFC_SENSB_RES_MAXSIZE 12 |
| 163 | 176 | #define NFC_SENSF_RES_MAXSIZE 18 |
| 164 | 177 | #define NFC_GB_MAXSIZE 48 |
| 178 | +#define NFC_FIRMWARE_NAME_MAXSIZE 32 | |
| 165 | 179 | |
| 166 | 180 | /* NFC protocols */ |
| 167 | 181 | #define NFC_PROTO_JEWEL 1 |
| @@ -191,10 +205,12 @@ enum nfc_sdp_attr { · 23 unmodified lines | ||
| 191 | 205 | #define NFC_PROTO_ISO14443_B_MASK (1 << NFC_PROTO_ISO14443_B) |
| 192 | 206 | |
| 193 | 207 | /* NFC Secure Elements */ |
| 194 | −#define NFC_SE_NONE 0x0 | |
| 195 | 208 | #define NFC_SE_UICC 0x1 |
| 196 | 209 | #define NFC_SE_EMBEDDED 0x2 |
| 197 | 210 | |
| 211 | +#define NFC_SE_DISABLED 0x0 | |
| 212 | +#define NFC_SE_ENABLED 0x1 | |
| 213 | + | |
| 198 | 214 | struct sockaddr_nfc { |
| 199 | 215 | sa_family_t sa_family; |
| 200 | 216 | __u32 dev_idx; |
| @@ -27,6 +27,8 @@ · 26 unmodified lines | ||
| 27 | 27 | |
| 28 | 28 | #include <linux/types.h> |
| 29 | 29 | |
| 30 | +#define NL80211_GENL_NAME "nl80211" | |
| 31 | + | |
| 30 | 32 | /** |
| 31 | 33 | * DOC: Station handling |
| 32 | 34 | * |
| @@ -1429,6 +1431,11 @@ enum nl80211_commands { · 1396 unmodified lines | ||
| 1429 | 1431 | * @NL80211_ATTR_MAX_CRIT_PROT_DURATION: duration in milliseconds in which |
| 1430 | 1432 | * the connection should have increased reliability (u16). |
| 1431 | 1433 | * |
| 1434 | + * @NL80211_ATTR_PEER_AID: Association ID for the peer TDLS station (u16). | |
| 1435 | + * This is similar to @NL80211_ATTR_STA_AID but with a difference of being | |
| 1436 | + * allowed to be used with the first @NL80211_CMD_SET_STATION command to | |
| 1437 | + * update a TDLS peer STA entry. | |
| 1438 | + * | |
| 1432 | 1439 | * @NL80211_ATTR_MAX: highest attribute number currently defined |
| 1433 | 1440 | * @__NL80211_ATTR_AFTER_LAST: internal use |
| 1434 | 1441 | */ |
| @@ -1727,6 +1734,8 @@ enum nl80211_attrs { · 292 unmodified lines | ||
| 1727 | 1734 | NL80211_ATTR_CRIT_PROT_ID, |
| 1728 | 1735 | NL80211_ATTR_MAX_CRIT_PROT_DURATION, |
| 1729 | 1736 | |
| 1737 | + NL80211_ATTR_PEER_AID, | |
| 1738 | + | |
| 1730 | 1739 | /* add attributes here, update the policy in nl80211.c */ |
| 1731 | 1740 | |
| 1732 | 1741 | __NL80211_ATTR_AFTER_LAST, |
| @@ -1991,6 +2000,10 @@ enum nl80211_sta_bss_param { · 258 unmodified lines | ||
| 1991 | 2000 | * @NL80211_STA_INFO_PEER_PM: peer mesh STA link-specific power mode |
| 1992 | 2001 | * @NL80211_STA_INFO_NONPEER_PM: neighbor mesh STA power save mode towards |
| 1993 | 2002 | * non-peer STA |
| 2003 | + * @NL80211_STA_INFO_CHAIN_SIGNAL: per-chain signal strength of last PPDU | |
| 2004 | + * Contains a nested array of signal strength attributes (u8, dBm) | |
| 2005 | + * @NL80211_STA_INFO_CHAIN_SIGNAL_AVG: per-chain signal strength average | |
| 2006 | + * Same format as NL80211_STA_INFO_CHAIN_SIGNAL. | |
| 1994 | 2007 | * @__NL80211_STA_INFO_AFTER_LAST: internal |
| 1995 | 2008 | * @NL80211_STA_INFO_MAX: highest possible station info attribute |
| 1996 | 2009 | */ |
| @@ -2020,6 +2033,8 @@ enum nl80211_sta_info { · 23 unmodified lines | ||
| 2020 | 2033 | NL80211_STA_INFO_NONPEER_PM, |
| 2021 | 2034 | NL80211_STA_INFO_RX_BYTES64, |
| 2022 | 2035 | NL80211_STA_INFO_TX_BYTES64, |
| 2036 | + NL80211_STA_INFO_CHAIN_SIGNAL, | |
| 2037 | + NL80211_STA_INFO_CHAIN_SIGNAL_AVG, | |
| 2023 | 2038 | |
| 2024 | 2039 | /* keep last */ |
| 2025 | 2040 | __NL80211_STA_INFO_AFTER_LAST, |
| @@ -2413,6 +2428,8 @@ enum nl80211_survey_info { · 387 unmodified lines | ||
| 2413 | 2428 | * @NL80211_MNTR_FLAG_OTHER_BSS: disable BSSID filtering |
| 2414 | 2429 | * @NL80211_MNTR_FLAG_COOK_FRAMES: report frames after processing. |
| 2415 | 2430 | * overrides all other flags. |
| 2431 | + * @NL80211_MNTR_FLAG_ACTIVE: use the configured MAC address | |
| 2432 | + * and ACK incoming unicast packets. | |
| 2416 | 2433 | * |
| 2417 | 2434 | * @__NL80211_MNTR_FLAG_AFTER_LAST: internal use |
| 2418 | 2435 | * @NL80211_MNTR_FLAG_MAX: highest possible monitor flag |
| @@ -2424,6 +2441,7 @@ enum nl80211_mntr_flags { · 5 unmodified lines | ||
| 2424 | 2441 | NL80211_MNTR_FLAG_CONTROL, |
| 2425 | 2442 | NL80211_MNTR_FLAG_OTHER_BSS, |
| 2426 | 2443 | NL80211_MNTR_FLAG_COOK_FRAMES, |
| 2444 | + NL80211_MNTR_FLAG_ACTIVE, | |
| 2427 | 2445 | |
| 2428 | 2446 | /* keep last */ |
| 2429 | 2447 | __NL80211_MNTR_FLAG_AFTER_LAST, |
| @@ -2559,6 +2577,10 @@ enum nl80211_mesh_power_mode { · 129 unmodified lines | ||
| 2559 | 2577 | * |
| 2560 | 2578 | * @NL80211_MESHCONF_AWAKE_WINDOW: awake window duration (in TUs) |
| 2561 | 2579 | * |
| 2580 | + * @NL80211_MESHCONF_PLINK_TIMEOUT: If no tx activity is seen from a STA we've | |
| 2581 | + * established peering with for longer than this time (in seconds), then | |
| 2582 | + * remove it from the STA's list of peers. Default is 30 minutes. | |
| 2583 | + * | |
| 2562 | 2584 | * @__NL80211_MESHCONF_ATTR_AFTER_LAST: internal use |
| 2563 | 2585 | */ |
| 2564 | 2586 | enum nl80211_meshconf_params { |
| @@ -2590,6 +2612,7 @@ enum nl80211_meshconf_params { · 25 unmodified lines | ||
| 2590 | 2612 | NL80211_MESHCONF_HWMP_CONFIRMATION_INTERVAL, |
| 2591 | 2613 | NL80211_MESHCONF_POWER_MODE, |
| 2592 | 2614 | NL80211_MESHCONF_AWAKE_WINDOW, |
| 2615 | + NL80211_MESHCONF_PLINK_TIMEOUT, | |
| 2593 | 2616 | |
| 2594 | 2617 | /* keep last */ |
| 2595 | 2618 | __NL80211_MESHCONF_ATTR_AFTER_LAST, |
| @@ -2637,6 +2660,10 @@ enum nl80211_meshconf_params { · 41 unmodified lines | ||
| 2637 | 2660 | * @NL80211_MESH_SETUP_USERSPACE_MPM: Enable this option if userspace will |
| 2638 | 2661 | * implement an MPM which handles peer allocation and state. |
| 2639 | 2662 | * |
| 2663 | + * @NL80211_MESH_SETUP_AUTH_PROTOCOL: Inform the kernel of the authentication | |
| 2664 | + * method (u8, as defined in IEEE 8.4.2.100.6, e.g. 0x1 for SAE). | |
| 2665 | + * Default is no authentication method required. | |
| 2666 | + * | |
| 2640 | 2667 | * @NL80211_MESH_SETUP_ATTR_MAX: highest possible mesh setup attribute number |
| 2641 | 2668 | * |
| 2642 | 2669 | * @__NL80211_MESH_SETUP_ATTR_AFTER_LAST: Internal use |
| @@ -2650,6 +2677,7 @@ enum nl80211_mesh_setup_params { · 7 unmodified lines | ||
| 2650 | 2677 | NL80211_MESH_SETUP_USERSPACE_AMPE, |
| 2651 | 2678 | NL80211_MESH_SETUP_ENABLE_VENDOR_SYNC, |
| 2652 | 2679 | NL80211_MESH_SETUP_USERSPACE_MPM, |
| 2680 | + NL80211_MESH_SETUP_AUTH_PROTOCOL, | |
| 2653 | 2681 | |
| 2654 | 2682 | /* keep last */ |
| 2655 | 2683 | __NL80211_MESH_SETUP_ATTR_AFTER_LAST, |
| @@ -2730,6 +2758,8 @@ enum nl80211_channel_type { · 74 unmodified lines | ||
| 2730 | 2758 | * and %NL80211_ATTR_CENTER_FREQ2 attributes must be provided as well |
| 2731 | 2759 | * @NL80211_CHAN_WIDTH_160: 160 MHz channel, the %NL80211_ATTR_CENTER_FREQ1 |
| 2732 | 2760 | * attribute must be provided as well |
| 2761 | + * @NL80211_CHAN_WIDTH_5: 5 MHz OFDM channel | |
| 2762 | + * @NL80211_CHAN_WIDTH_10: 10 MHz OFDM channel | |
| 2733 | 2763 | */ |
| 2734 | 2764 | enum nl80211_chan_width { |
| 2735 | 2765 | NL80211_CHAN_WIDTH_20_NOHT, |
| @@ -2738,6 +2768,8 @@ enum nl80211_chan_width { · 2 unmodified lines | ||
| 2738 | 2768 | NL80211_CHAN_WIDTH_80, |
| 2739 | 2769 | NL80211_CHAN_WIDTH_80P80, |
| 2740 | 2770 | NL80211_CHAN_WIDTH_160, |
| 2771 | + NL80211_CHAN_WIDTH_5, | |
| 2772 | + NL80211_CHAN_WIDTH_10, | |
| 2741 | 2773 | }; |
| 2742 | 2774 | |
| 2743 | 2775 | /** |
| @@ -3556,6 +3588,10 @@ enum nl80211_ap_sme_features { · 812 unmodified lines | ||
| 3556 | 3588 | * Peering Management entity which may be implemented by registering for |
| 3557 | 3589 | * beacons or NL80211_CMD_NEW_PEER_CANDIDATE events. The mesh beacon is |
| 3558 | 3590 | * still generated by the driver. |
| 3591 | + * @NL80211_FEATURE_ACTIVE_MONITOR: This driver supports an active monitor | |
| 3592 | + * interface. An active monitor interface behaves like a normal monitor | |
| 3593 | + * interface, but gets added to the driver. It ensures that incoming | |
| 3594 | + * unicast packets directed at the configured interface address get ACKed. | |
| 3559 | 3595 | */ |
| 3560 | 3596 | enum nl80211_feature_flags { |
| 3561 | 3597 | NL80211_FEATURE_SK_TX_STATUS = 1 << 0, |
| @@ -3575,6 +3611,7 @@ enum nl80211_feature_flags { · 13 unmodified lines | ||
| 3575 | 3611 | NL80211_FEATURE_ADVERTISE_CHAN_LIMITS = 1 << 14, |
| 3576 | 3612 | NL80211_FEATURE_FULL_AP_CLIENT_STATE = 1 << 15, |
| 3577 | 3613 | NL80211_FEATURE_USERSPACE_MPM = 1 << 16, |
| 3614 | + NL80211_FEATURE_ACTIVE_MONITOR = 1 << 17, | |
| 3578 | 3615 | }; |
| 3579 | 3616 | |
| 3580 | 3617 | /** |
| @@ -164,6 +164,7 @@ enum ovs_vport_type { · 163 unmodified lines | ||
| 164 | 164 | OVS_VPORT_TYPE_UNSPEC, |
| 165 | 165 | OVS_VPORT_TYPE_NETDEV, /* network device */ |
| 166 | 166 | OVS_VPORT_TYPE_INTERNAL, /* network device implemented by datapath */ |
| 167 | + OVS_VPORT_TYPE_GRE, /* GRE tunnel. */ | |
| 167 | 168 | __OVS_VPORT_TYPE_MAX |
| 168 | 169 | }; |
| 169 | 170 | |
| @@ -192,7 +193,6 @@ enum ovs_vport_type { · 22 unmodified lines | ||
| 192 | 193 | * optional; if not specified a free port number is automatically selected. |
| 193 | 194 | * Whether %OVS_VPORT_ATTR_OPTIONS is required or optional depends on the type |
| 194 | 195 | * of vport. |
| 195 | − * and other attributes are ignored. | |
| 196 | 196 | * |
| 197 | 197 | * For other requests, if %OVS_VPORT_ATTR_NAME is specified then it is used to |
| 198 | 198 | * look up the vport to operate on; otherwise dp_idx from the &struct |
| @@ -247,11 +247,29 @@ enum ovs_key_attr { · 48 unmodified lines | ||
| 247 | 247 | OVS_KEY_ATTR_ARP, /* struct ovs_key_arp */ |
| 248 | 248 | OVS_KEY_ATTR_ND, /* struct ovs_key_nd */ |
| 249 | 249 | OVS_KEY_ATTR_SKB_MARK, /* u32 skb mark */ |
| 250 | + OVS_KEY_ATTR_TUNNEL, /* Nested set of ovs_tunnel attributes */ | |
| 251 | + | |
| 252 | +#ifdef __KERNEL__ | |
| 253 | + OVS_KEY_ATTR_IPV4_TUNNEL, /* struct ovs_key_ipv4_tunnel */ | |
| 254 | +#endif | |
| 250 | 255 | __OVS_KEY_ATTR_MAX |
| 251 | 256 | }; |
| 252 | 257 | |
| 253 | 258 | #define OVS_KEY_ATTR_MAX (__OVS_KEY_ATTR_MAX - 1) |
| 254 | 259 | |
| 260 | +enum ovs_tunnel_key_attr { | |
| 261 | + OVS_TUNNEL_KEY_ATTR_ID, /* be64 Tunnel ID */ | |
| 262 | + OVS_TUNNEL_KEY_ATTR_IPV4_SRC, /* be32 src IP address. */ | |
| 263 | + OVS_TUNNEL_KEY_ATTR_IPV4_DST, /* be32 dst IP address. */ | |
| 264 | + OVS_TUNNEL_KEY_ATTR_TOS, /* u8 Tunnel IP ToS. */ | |
| 265 | + OVS_TUNNEL_KEY_ATTR_TTL, /* u8 Tunnel IP TTL. */ | |
| 266 | + OVS_TUNNEL_KEY_ATTR_DONT_FRAGMENT, /* No argument, set DF. */ | |
| 267 | + OVS_TUNNEL_KEY_ATTR_CSUM, /* No argument. CSUM packet. */ | |
| 268 | + __OVS_TUNNEL_KEY_ATTR_MAX | |
| 269 | +}; | |
| 270 | + | |
| 271 | +#define OVS_TUNNEL_KEY_ATTR_MAX (__OVS_TUNNEL_KEY_ATTR_MAX - 1) | |
| 272 | + | |
| 255 | 273 | /** |
| 256 | 274 | * enum ovs_frag_type - IPv4 and IPv6 fragment type |
| 257 | 275 | * @OVS_FRAG_TYPE_NONE: Packet is not a fragment. |
| @@ -386,6 +386,8 @@ enum { · 385 unmodified lines | ||
| 386 | 386 | #define RTAX_RTO_MIN RTAX_RTO_MIN |
| 387 | 387 | RTAX_INITRWND, |
| 388 | 388 | #define RTAX_INITRWND RTAX_INITRWND |
| 389 | + RTAX_QUICKACK, | |
| 390 | +#define RTAX_QUICKACK RTAX_QUICKACK | |
| 389 | 391 | __RTAX_MAX |
| 390 | 392 | }; |
| 391 | 393 | |
| @@ -253,6 +253,7 @@ enum · 252 unmodified lines | ||
| 253 | 253 | LINUX_MIB_TCPFASTOPENLISTENOVERFLOW, /* TCPFastOpenListenOverflow */ |
| 254 | 254 | LINUX_MIB_TCPFASTOPENCOOKIEREQD, /* TCPFastOpenCookieReqd */ |
| 255 | 255 | LINUX_MIB_TCPSPURIOUS_RTX_HOSTQUEUES, /* TCPSpuriousRtxHostQueues */ |
| 256 | + LINUX_MIB_LOWLATENCYRXPACKETS, /* LowLatencyRxPackets */ | |
| 256 | 257 | __LINUX_MIB_MAX |
| 257 | 258 | }; |
| 258 | 259 | |
| @@ -287,6 +288,7 @@ enum · 28 unmodified lines | ||
| 287 | 288 | LINUX_MIB_XFRMOUTPOLERROR, /* XfrmOutPolError */ |
| 288 | 289 | LINUX_MIB_XFRMFWDHDRERROR, /* XfrmFwdHdrError*/ |
| 289 | 290 | LINUX_MIB_XFRMOUTSTATEINVALID, /* XfrmOutStateInvalid */ |
| 291 | + LINUX_MIB_XFRMACQUIREERROR, /* XfrmAcquireError */ | |
| 290 | 292 | __LINUX_MIB_XFRMMAX |
| 291 | 293 | }; |
| 292 | 294 | |
| @@ -1,5 +1,5 @@ | ||
| 1 | 1 | /* |
| 2 | − * include/linux/tipc.h: Include file for TIPC socket interface | |
| 2 | + * include/uapi/linux/tipc.h: Header for TIPC socket interface | |
| 3 | 3 | * |
| 4 | 4 | * Copyright (c) 2003-2006, Ericsson AB |
| 5 | 5 | * Copyright (c) 2005, 2010-2011, Wind River Systems |
| @@ -1,5 +1,5 @@ | ||
| 1 | 1 | /* |
| 2 | − * include/linux/tipc_config.h: Include file for TIPC configuration interface | |
| 2 | + * include/uapi/linux/tipc_config.h: Header for TIPC configuration interface | |
| 3 | 3 | * |
| 4 | 4 | * Copyright (c) 2003-2006, Ericsson AB |
| 5 | 5 | * Copyright (c) 2005-2007, 2010-2011, Wind River Systems |