diff options
| author | Felipe Balbi <balbi@ti.com> | 2014-09-16 10:53:59 -0400 |
|---|---|---|
| committer | Felipe Balbi <balbi@ti.com> | 2014-09-16 10:53:59 -0400 |
| commit | 4cd41ffd27b6b775445ecfdb72b592b71d6b4a32 (patch) | |
| tree | 61e8c51ed5b9fae163d2d54967ebda02805c0bfa /include | |
| parent | d9152161b4bfd131a8253a5b9fcd8ba9b10277c4 (diff) | |
| parent | 9e82bf014195d6f0054982c463575cdce24292be (diff) | |
Merge tag 'v3.17-rc5' into next
Linux 3.17-rc5
Signed-off-by: Felipe Balbi <balbi@ti.com>
Conflicts:
Documentation/devicetree/bindings/usb/mxs-phy.txt
drivers/usb/phy/phy-mxs-usb.c
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/dcache.h | 1 | ||||
| -rw-r--r-- | include/linux/hash.h | 4 | ||||
| -rw-r--r-- | include/linux/jiffies.h | 12 | ||||
| -rw-r--r-- | include/linux/mlx4/device.h | 3 | ||||
| -rw-r--r-- | include/linux/netdevice.h | 4 | ||||
| -rw-r--r-- | include/linux/netfilter.h | 5 | ||||
| -rw-r--r-- | include/net/bluetooth/hci_core.h | 2 | ||||
| -rw-r--r-- | include/net/netns/ieee802154_6lowpan.h | 1 | ||||
| -rw-r--r-- | include/net/regulatory.h | 2 | ||||
| -rw-r--r-- | include/net/sctp/sctp.h | 13 | ||||
| -rw-r--r-- | include/net/sock.h | 4 | ||||
| -rw-r--r-- | include/net/wimax.h | 2 | ||||
| -rw-r--r-- | include/trace/events/irq.h | 4 | ||||
| -rw-r--r-- | include/uapi/linux/Kbuild | 2 | ||||
| -rw-r--r-- | include/uapi/linux/input.h | 1 | ||||
| -rw-r--r-- | include/xen/interface/features.h | 3 |
16 files changed, 39 insertions, 24 deletions
diff --git a/include/linux/dcache.h b/include/linux/dcache.h index e4ae2ad48d07..75a227cc7ce2 100644 --- a/include/linux/dcache.h +++ b/include/linux/dcache.h | |||
| @@ -55,6 +55,7 @@ struct qstr { | |||
| 55 | #define QSTR_INIT(n,l) { { { .len = l } }, .name = n } | 55 | #define QSTR_INIT(n,l) { { { .len = l } }, .name = n } |
| 56 | #define hashlen_hash(hashlen) ((u32) (hashlen)) | 56 | #define hashlen_hash(hashlen) ((u32) (hashlen)) |
| 57 | #define hashlen_len(hashlen) ((u32)((hashlen) >> 32)) | 57 | #define hashlen_len(hashlen) ((u32)((hashlen) >> 32)) |
| 58 | #define hashlen_create(hash,len) (((u64)(len)<<32)|(u32)(hash)) | ||
| 58 | 59 | ||
| 59 | struct dentry_stat_t { | 60 | struct dentry_stat_t { |
| 60 | long nr_dentry; | 61 | long nr_dentry; |
diff --git a/include/linux/hash.h b/include/linux/hash.h index bd1754c7ecef..d0494c399392 100644 --- a/include/linux/hash.h +++ b/include/linux/hash.h | |||
| @@ -37,6 +37,9 @@ static __always_inline u64 hash_64(u64 val, unsigned int bits) | |||
| 37 | { | 37 | { |
| 38 | u64 hash = val; | 38 | u64 hash = val; |
| 39 | 39 | ||
| 40 | #if defined(CONFIG_ARCH_HAS_FAST_MULTIPLIER) && BITS_PER_LONG == 64 | ||
| 41 | hash = hash * GOLDEN_RATIO_PRIME_64; | ||
| 42 | #else | ||
| 40 | /* Sigh, gcc can't optimise this alone like it does for 32 bits. */ | 43 | /* Sigh, gcc can't optimise this alone like it does for 32 bits. */ |
| 41 | u64 n = hash; | 44 | u64 n = hash; |
| 42 | n <<= 18; | 45 | n <<= 18; |
| @@ -51,6 +54,7 @@ static __always_inline u64 hash_64(u64 val, unsigned int bits) | |||
| 51 | hash += n; | 54 | hash += n; |
| 52 | n <<= 2; | 55 | n <<= 2; |
| 53 | hash += n; | 56 | hash += n; |
| 57 | #endif | ||
| 54 | 58 | ||
| 55 | /* High bits are more random, so use them. */ | 59 | /* High bits are more random, so use them. */ |
| 56 | return hash >> (64 - bits); | 60 | return hash >> (64 - bits); |
diff --git a/include/linux/jiffies.h b/include/linux/jiffies.h index 1f44466c1e9d..c367cbdf73ab 100644 --- a/include/linux/jiffies.h +++ b/include/linux/jiffies.h | |||
| @@ -258,23 +258,11 @@ extern unsigned long preset_lpj; | |||
| 258 | #define SEC_JIFFIE_SC (32 - SHIFT_HZ) | 258 | #define SEC_JIFFIE_SC (32 - SHIFT_HZ) |
| 259 | #endif | 259 | #endif |
| 260 | #define NSEC_JIFFIE_SC (SEC_JIFFIE_SC + 29) | 260 | #define NSEC_JIFFIE_SC (SEC_JIFFIE_SC + 29) |
| 261 | #define USEC_JIFFIE_SC (SEC_JIFFIE_SC + 19) | ||
| 262 | #define SEC_CONVERSION ((unsigned long)((((u64)NSEC_PER_SEC << SEC_JIFFIE_SC) +\ | 261 | #define SEC_CONVERSION ((unsigned long)((((u64)NSEC_PER_SEC << SEC_JIFFIE_SC) +\ |
| 263 | TICK_NSEC -1) / (u64)TICK_NSEC)) | 262 | TICK_NSEC -1) / (u64)TICK_NSEC)) |
| 264 | 263 | ||
| 265 | #define NSEC_CONVERSION ((unsigned long)((((u64)1 << NSEC_JIFFIE_SC) +\ | 264 | #define NSEC_CONVERSION ((unsigned long)((((u64)1 << NSEC_JIFFIE_SC) +\ |
| 266 | TICK_NSEC -1) / (u64)TICK_NSEC)) | 265 | TICK_NSEC -1) / (u64)TICK_NSEC)) |
| 267 | #define USEC_CONVERSION \ | ||
| 268 | ((unsigned long)((((u64)NSEC_PER_USEC << USEC_JIFFIE_SC) +\ | ||
| 269 | TICK_NSEC -1) / (u64)TICK_NSEC)) | ||
| 270 | /* | ||
| 271 | * USEC_ROUND is used in the timeval to jiffie conversion. See there | ||
| 272 | * for more details. It is the scaled resolution rounding value. Note | ||
| 273 | * that it is a 64-bit value. Since, when it is applied, we are already | ||
| 274 | * in jiffies (albit scaled), it is nothing but the bits we will shift | ||
| 275 | * off. | ||
| 276 | */ | ||
| 277 | #define USEC_ROUND (u64)(((u64)1 << USEC_JIFFIE_SC) - 1) | ||
| 278 | /* | 266 | /* |
| 279 | * The maximum jiffie value is (MAX_INT >> 1). Here we translate that | 267 | * The maximum jiffie value is (MAX_INT >> 1). Here we translate that |
| 280 | * into seconds. The 64-bit case will overflow if we are not careful, | 268 | * into seconds. The 64-bit case will overflow if we are not careful, |
diff --git a/include/linux/mlx4/device.h b/include/linux/mlx4/device.h index 071f6b234604..511c6e0d21a9 100644 --- a/include/linux/mlx4/device.h +++ b/include/linux/mlx4/device.h | |||
| @@ -1196,6 +1196,9 @@ int mlx4_map_sw_to_hw_steering_id(struct mlx4_dev *dev, | |||
| 1196 | enum mlx4_net_trans_rule_id id); | 1196 | enum mlx4_net_trans_rule_id id); |
| 1197 | int mlx4_hw_rule_sz(struct mlx4_dev *dev, enum mlx4_net_trans_rule_id id); | 1197 | int mlx4_hw_rule_sz(struct mlx4_dev *dev, enum mlx4_net_trans_rule_id id); |
| 1198 | 1198 | ||
| 1199 | int mlx4_tunnel_steer_add(struct mlx4_dev *dev, unsigned char *addr, | ||
| 1200 | int port, int qpn, u16 prio, u64 *reg_id); | ||
| 1201 | |||
| 1199 | void mlx4_sync_pkey_table(struct mlx4_dev *dev, int slave, int port, | 1202 | void mlx4_sync_pkey_table(struct mlx4_dev *dev, int slave, int port, |
| 1200 | int i, int val); | 1203 | int i, int val); |
| 1201 | 1204 | ||
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index 38377392d082..c8e388e5fccc 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h | |||
| @@ -3176,7 +3176,7 @@ static inline int __dev_uc_sync(struct net_device *dev, | |||
| 3176 | } | 3176 | } |
| 3177 | 3177 | ||
| 3178 | /** | 3178 | /** |
| 3179 | * __dev_uc_unsync - Remove synchonized addresses from device | 3179 | * __dev_uc_unsync - Remove synchronized addresses from device |
| 3180 | * @dev: device to sync | 3180 | * @dev: device to sync |
| 3181 | * @unsync: function to call if address should be removed | 3181 | * @unsync: function to call if address should be removed |
| 3182 | * | 3182 | * |
| @@ -3220,7 +3220,7 @@ static inline int __dev_mc_sync(struct net_device *dev, | |||
| 3220 | } | 3220 | } |
| 3221 | 3221 | ||
| 3222 | /** | 3222 | /** |
| 3223 | * __dev_mc_unsync - Remove synchonized addresses from device | 3223 | * __dev_mc_unsync - Remove synchronized addresses from device |
| 3224 | * @dev: device to sync | 3224 | * @dev: device to sync |
| 3225 | * @unsync: function to call if address should be removed | 3225 | * @unsync: function to call if address should be removed |
| 3226 | * | 3226 | * |
diff --git a/include/linux/netfilter.h b/include/linux/netfilter.h index 2077489f9887..2517ece98820 100644 --- a/include/linux/netfilter.h +++ b/include/linux/netfilter.h | |||
| @@ -9,6 +9,7 @@ | |||
| 9 | #include <linux/in6.h> | 9 | #include <linux/in6.h> |
| 10 | #include <linux/wait.h> | 10 | #include <linux/wait.h> |
| 11 | #include <linux/list.h> | 11 | #include <linux/list.h> |
| 12 | #include <linux/static_key.h> | ||
| 12 | #include <uapi/linux/netfilter.h> | 13 | #include <uapi/linux/netfilter.h> |
| 13 | #ifdef CONFIG_NETFILTER | 14 | #ifdef CONFIG_NETFILTER |
| 14 | static inline int NF_DROP_GETERR(int verdict) | 15 | static inline int NF_DROP_GETERR(int verdict) |
| @@ -99,9 +100,9 @@ void nf_unregister_sockopt(struct nf_sockopt_ops *reg); | |||
| 99 | 100 | ||
| 100 | extern struct list_head nf_hooks[NFPROTO_NUMPROTO][NF_MAX_HOOKS]; | 101 | extern struct list_head nf_hooks[NFPROTO_NUMPROTO][NF_MAX_HOOKS]; |
| 101 | 102 | ||
| 102 | #if defined(CONFIG_JUMP_LABEL) | 103 | #ifdef HAVE_JUMP_LABEL |
| 103 | #include <linux/static_key.h> | ||
| 104 | extern struct static_key nf_hooks_needed[NFPROTO_NUMPROTO][NF_MAX_HOOKS]; | 104 | extern struct static_key nf_hooks_needed[NFPROTO_NUMPROTO][NF_MAX_HOOKS]; |
| 105 | |||
| 105 | static inline bool nf_hooks_active(u_int8_t pf, unsigned int hook) | 106 | static inline bool nf_hooks_active(u_int8_t pf, unsigned int hook) |
| 106 | { | 107 | { |
| 107 | if (__builtin_constant_p(pf) && | 108 | if (__builtin_constant_p(pf) && |
diff --git a/include/net/bluetooth/hci_core.h b/include/net/bluetooth/hci_core.h index b5d5af3aa469..6f884e6c731e 100644 --- a/include/net/bluetooth/hci_core.h +++ b/include/net/bluetooth/hci_core.h | |||
| @@ -464,6 +464,8 @@ struct hci_conn_params { | |||
| 464 | HCI_AUTO_CONN_ALWAYS, | 464 | HCI_AUTO_CONN_ALWAYS, |
| 465 | HCI_AUTO_CONN_LINK_LOSS, | 465 | HCI_AUTO_CONN_LINK_LOSS, |
| 466 | } auto_connect; | 466 | } auto_connect; |
| 467 | |||
| 468 | struct hci_conn *conn; | ||
| 467 | }; | 469 | }; |
| 468 | 470 | ||
| 469 | extern struct list_head hci_dev_list; | 471 | extern struct list_head hci_dev_list; |
diff --git a/include/net/netns/ieee802154_6lowpan.h b/include/net/netns/ieee802154_6lowpan.h index e2070960bac0..8170f8d7052b 100644 --- a/include/net/netns/ieee802154_6lowpan.h +++ b/include/net/netns/ieee802154_6lowpan.h | |||
| @@ -16,7 +16,6 @@ struct netns_sysctl_lowpan { | |||
| 16 | struct netns_ieee802154_lowpan { | 16 | struct netns_ieee802154_lowpan { |
| 17 | struct netns_sysctl_lowpan sysctl; | 17 | struct netns_sysctl_lowpan sysctl; |
| 18 | struct netns_frags frags; | 18 | struct netns_frags frags; |
| 19 | int max_dsize; | ||
| 20 | }; | 19 | }; |
| 21 | 20 | ||
| 22 | #endif | 21 | #endif |
diff --git a/include/net/regulatory.h b/include/net/regulatory.h index 259992444e80..dad7ab20a8cb 100644 --- a/include/net/regulatory.h +++ b/include/net/regulatory.h | |||
| @@ -167,7 +167,7 @@ struct ieee80211_reg_rule { | |||
| 167 | struct ieee80211_regdomain { | 167 | struct ieee80211_regdomain { |
| 168 | struct rcu_head rcu_head; | 168 | struct rcu_head rcu_head; |
| 169 | u32 n_reg_rules; | 169 | u32 n_reg_rules; |
| 170 | char alpha2[2]; | 170 | char alpha2[3]; |
| 171 | enum nl80211_dfs_regions dfs_region; | 171 | enum nl80211_dfs_regions dfs_region; |
| 172 | struct ieee80211_reg_rule reg_rules[]; | 172 | struct ieee80211_reg_rule reg_rules[]; |
| 173 | }; | 173 | }; |
diff --git a/include/net/sctp/sctp.h b/include/net/sctp/sctp.h index f6e7397e799d..9fbd856e6713 100644 --- a/include/net/sctp/sctp.h +++ b/include/net/sctp/sctp.h | |||
| @@ -320,6 +320,19 @@ static inline sctp_assoc_t sctp_assoc2id(const struct sctp_association *asoc) | |||
| 320 | return asoc ? asoc->assoc_id : 0; | 320 | return asoc ? asoc->assoc_id : 0; |
| 321 | } | 321 | } |
| 322 | 322 | ||
| 323 | static inline enum sctp_sstat_state | ||
| 324 | sctp_assoc_to_state(const struct sctp_association *asoc) | ||
| 325 | { | ||
| 326 | /* SCTP's uapi always had SCTP_EMPTY(=0) as a dummy state, but we | ||
| 327 | * got rid of it in kernel space. Therefore SCTP_CLOSED et al | ||
| 328 | * start at =1 in user space, but actually as =0 in kernel space. | ||
| 329 | * Now that we can not break user space and SCTP_EMPTY is exposed | ||
| 330 | * there, we need to fix it up with an ugly offset not to break | ||
| 331 | * applications. :( | ||
| 332 | */ | ||
| 333 | return asoc->state + 1; | ||
| 334 | } | ||
| 335 | |||
| 323 | /* Look up the association by its id. */ | 336 | /* Look up the association by its id. */ |
| 324 | struct sctp_association *sctp_id2assoc(struct sock *sk, sctp_assoc_t id); | 337 | struct sctp_association *sctp_id2assoc(struct sock *sk, sctp_assoc_t id); |
| 325 | 338 | ||
diff --git a/include/net/sock.h b/include/net/sock.h index 7f2ab72f321a..b9a5bd0ed9f3 100644 --- a/include/net/sock.h +++ b/include/net/sock.h | |||
| @@ -2165,9 +2165,7 @@ sock_recv_timestamp(struct msghdr *msg, struct sock *sk, struct sk_buff *skb) | |||
| 2165 | */ | 2165 | */ |
| 2166 | if (sock_flag(sk, SOCK_RCVTSTAMP) || | 2166 | if (sock_flag(sk, SOCK_RCVTSTAMP) || |
| 2167 | (sk->sk_tsflags & SOF_TIMESTAMPING_RX_SOFTWARE) || | 2167 | (sk->sk_tsflags & SOF_TIMESTAMPING_RX_SOFTWARE) || |
| 2168 | (kt.tv64 && | 2168 | (kt.tv64 && sk->sk_tsflags & SOF_TIMESTAMPING_SOFTWARE) || |
| 2169 | (sk->sk_tsflags & SOF_TIMESTAMPING_SOFTWARE || | ||
| 2170 | skb_shinfo(skb)->tx_flags & SKBTX_ANY_SW_TSTAMP)) || | ||
| 2171 | (hwtstamps->hwtstamp.tv64 && | 2169 | (hwtstamps->hwtstamp.tv64 && |
| 2172 | (sk->sk_tsflags & SOF_TIMESTAMPING_RAW_HARDWARE))) | 2170 | (sk->sk_tsflags & SOF_TIMESTAMPING_RAW_HARDWARE))) |
| 2173 | __sock_recv_timestamp(msg, sk, skb); | 2171 | __sock_recv_timestamp(msg, sk, skb); |
diff --git a/include/net/wimax.h b/include/net/wimax.h index e52ef5357e08..c52b68577cb0 100644 --- a/include/net/wimax.h +++ b/include/net/wimax.h | |||
| @@ -290,7 +290,7 @@ struct wimax_dev; | |||
| 290 | * This operation has to be synchronous, and return only when the | 290 | * This operation has to be synchronous, and return only when the |
| 291 | * reset is complete. In case of having had to resort to bus/cold | 291 | * reset is complete. In case of having had to resort to bus/cold |
| 292 | * reset implying a device disconnection, the call is allowed to | 292 | * reset implying a device disconnection, the call is allowed to |
| 293 | * return inmediately. | 293 | * return immediately. |
| 294 | * NOTE: wimax_dev->mutex is NOT locked when this op is being | 294 | * NOTE: wimax_dev->mutex is NOT locked when this op is being |
| 295 | * called; however, wimax_dev->mutex_reset IS locked to ensure | 295 | * called; however, wimax_dev->mutex_reset IS locked to ensure |
| 296 | * serialization of calls to wimax_reset(). | 296 | * serialization of calls to wimax_reset(). |
diff --git a/include/trace/events/irq.h b/include/trace/events/irq.h index 1c09820df585..3608bebd3d9c 100644 --- a/include/trace/events/irq.h +++ b/include/trace/events/irq.h | |||
| @@ -107,7 +107,7 @@ DECLARE_EVENT_CLASS(softirq, | |||
| 107 | * @vec_nr: softirq vector number | 107 | * @vec_nr: softirq vector number |
| 108 | * | 108 | * |
| 109 | * When used in combination with the softirq_exit tracepoint | 109 | * When used in combination with the softirq_exit tracepoint |
| 110 | * we can determine the softirq handler runtine. | 110 | * we can determine the softirq handler routine. |
| 111 | */ | 111 | */ |
| 112 | DEFINE_EVENT(softirq, softirq_entry, | 112 | DEFINE_EVENT(softirq, softirq_entry, |
| 113 | 113 | ||
| @@ -121,7 +121,7 @@ DEFINE_EVENT(softirq, softirq_entry, | |||
| 121 | * @vec_nr: softirq vector number | 121 | * @vec_nr: softirq vector number |
| 122 | * | 122 | * |
| 123 | * When used in combination with the softirq_entry tracepoint | 123 | * When used in combination with the softirq_entry tracepoint |
| 124 | * we can determine the softirq handler runtine. | 124 | * we can determine the softirq handler routine. |
| 125 | */ | 125 | */ |
| 126 | DEFINE_EVENT(softirq, softirq_exit, | 126 | DEFINE_EVENT(softirq, softirq_exit, |
| 127 | 127 | ||
diff --git a/include/uapi/linux/Kbuild b/include/uapi/linux/Kbuild index 24e9033f8b3f..be88166349a1 100644 --- a/include/uapi/linux/Kbuild +++ b/include/uapi/linux/Kbuild | |||
| @@ -240,6 +240,7 @@ header-y += matroxfb.h | |||
| 240 | header-y += mdio.h | 240 | header-y += mdio.h |
| 241 | header-y += media.h | 241 | header-y += media.h |
| 242 | header-y += mei.h | 242 | header-y += mei.h |
| 243 | header-y += memfd.h | ||
| 243 | header-y += mempolicy.h | 244 | header-y += mempolicy.h |
| 244 | header-y += meye.h | 245 | header-y += meye.h |
| 245 | header-y += mic_common.h | 246 | header-y += mic_common.h |
| @@ -395,6 +396,7 @@ header-y += un.h | |||
| 395 | header-y += unistd.h | 396 | header-y += unistd.h |
| 396 | header-y += unix_diag.h | 397 | header-y += unix_diag.h |
| 397 | header-y += usbdevice_fs.h | 398 | header-y += usbdevice_fs.h |
| 399 | header-y += usbip.h | ||
| 398 | header-y += utime.h | 400 | header-y += utime.h |
| 399 | header-y += utsname.h | 401 | header-y += utsname.h |
| 400 | header-y += uuid.h | 402 | header-y += uuid.h |
diff --git a/include/uapi/linux/input.h b/include/uapi/linux/input.h index 19df18c9b8be..1874ebe9ac1e 100644 --- a/include/uapi/linux/input.h +++ b/include/uapi/linux/input.h | |||
| @@ -165,6 +165,7 @@ struct input_keymap_entry { | |||
| 165 | #define INPUT_PROP_BUTTONPAD 0x02 /* has button(s) under pad */ | 165 | #define INPUT_PROP_BUTTONPAD 0x02 /* has button(s) under pad */ |
| 166 | #define INPUT_PROP_SEMI_MT 0x03 /* touch rectangle only */ | 166 | #define INPUT_PROP_SEMI_MT 0x03 /* touch rectangle only */ |
| 167 | #define INPUT_PROP_TOPBUTTONPAD 0x04 /* softbuttons at top of pad */ | 167 | #define INPUT_PROP_TOPBUTTONPAD 0x04 /* softbuttons at top of pad */ |
| 168 | #define INPUT_PROP_POINTING_STICK 0x05 /* is a pointing stick */ | ||
| 168 | 169 | ||
| 169 | #define INPUT_PROP_MAX 0x1f | 170 | #define INPUT_PROP_MAX 0x1f |
| 170 | #define INPUT_PROP_CNT (INPUT_PROP_MAX + 1) | 171 | #define INPUT_PROP_CNT (INPUT_PROP_MAX + 1) |
diff --git a/include/xen/interface/features.h b/include/xen/interface/features.h index 131a6ccdba25..14334d0161d5 100644 --- a/include/xen/interface/features.h +++ b/include/xen/interface/features.h | |||
| @@ -53,6 +53,9 @@ | |||
| 53 | /* operation as Dom0 is supported */ | 53 | /* operation as Dom0 is supported */ |
| 54 | #define XENFEAT_dom0 11 | 54 | #define XENFEAT_dom0 11 |
| 55 | 55 | ||
| 56 | /* Xen also maps grant references at pfn = mfn */ | ||
| 57 | #define XENFEAT_grant_map_identity 12 | ||
| 58 | |||
| 56 | #define XENFEAT_NR_SUBMAPS 1 | 59 | #define XENFEAT_NR_SUBMAPS 1 |
| 57 | 60 | ||
| 58 | #endif /* __XEN_PUBLIC_FEATURES_H__ */ | 61 | #endif /* __XEN_PUBLIC_FEATURES_H__ */ |
