diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/acpi/actypes.h | 7 | ||||
-rw-r--r-- | include/linux/netfilter_bridge.h | 9 | ||||
-rw-r--r-- | include/linux/seqlock.h | 23 | ||||
-rw-r--r-- | include/linux/skbuff.h | 4 | ||||
-rw-r--r-- | include/net/bluetooth/hci_core.h | 3 | ||||
-rw-r--r-- | include/net/dst.h | 1 | ||||
-rw-r--r-- | include/net/ip_vs.h | 4 | ||||
-rw-r--r-- | include/net/sock.h | 4 |
8 files changed, 45 insertions, 10 deletions
diff --git a/include/acpi/actypes.h b/include/acpi/actypes.h index eba66043cf1b..e8bcc4742e0e 100644 --- a/include/acpi/actypes.h +++ b/include/acpi/actypes.h | |||
@@ -499,9 +499,10 @@ typedef u64 acpi_integer; | |||
499 | #define ACPI_STATE_D0 (u8) 0 | 499 | #define ACPI_STATE_D0 (u8) 0 |
500 | #define ACPI_STATE_D1 (u8) 1 | 500 | #define ACPI_STATE_D1 (u8) 1 |
501 | #define ACPI_STATE_D2 (u8) 2 | 501 | #define ACPI_STATE_D2 (u8) 2 |
502 | #define ACPI_STATE_D3 (u8) 3 | 502 | #define ACPI_STATE_D3_HOT (u8) 3 |
503 | #define ACPI_STATE_D3_COLD (u8) 4 | 503 | #define ACPI_STATE_D3 (u8) 4 |
504 | #define ACPI_D_STATES_MAX ACPI_STATE_D3_COLD | 504 | #define ACPI_STATE_D3_COLD ACPI_STATE_D3 |
505 | #define ACPI_D_STATES_MAX ACPI_STATE_D3 | ||
505 | #define ACPI_D_STATE_COUNT 5 | 506 | #define ACPI_D_STATE_COUNT 5 |
506 | 507 | ||
507 | #define ACPI_STATE_C0 (u8) 0 | 508 | #define ACPI_STATE_C0 (u8) 0 |
diff --git a/include/linux/netfilter_bridge.h b/include/linux/netfilter_bridge.h index 0ddd161f3b06..31d2844e6572 100644 --- a/include/linux/netfilter_bridge.h +++ b/include/linux/netfilter_bridge.h | |||
@@ -104,9 +104,18 @@ struct bridge_skb_cb { | |||
104 | } daddr; | 104 | } daddr; |
105 | }; | 105 | }; |
106 | 106 | ||
107 | static inline void br_drop_fake_rtable(struct sk_buff *skb) | ||
108 | { | ||
109 | struct dst_entry *dst = skb_dst(skb); | ||
110 | |||
111 | if (dst && (dst->flags & DST_FAKE_RTABLE)) | ||
112 | skb_dst_drop(skb); | ||
113 | } | ||
114 | |||
107 | #else | 115 | #else |
108 | #define nf_bridge_maybe_copy_header(skb) (0) | 116 | #define nf_bridge_maybe_copy_header(skb) (0) |
109 | #define nf_bridge_pad(skb) (0) | 117 | #define nf_bridge_pad(skb) (0) |
118 | #define br_drop_fake_rtable(skb) do { } while (0) | ||
110 | #endif /* CONFIG_BRIDGE_NETFILTER */ | 119 | #endif /* CONFIG_BRIDGE_NETFILTER */ |
111 | 120 | ||
112 | #endif /* __KERNEL__ */ | 121 | #endif /* __KERNEL__ */ |
diff --git a/include/linux/seqlock.h b/include/linux/seqlock.h index c6db9fb33c44..600060e25ec6 100644 --- a/include/linux/seqlock.h +++ b/include/linux/seqlock.h | |||
@@ -141,7 +141,7 @@ static inline unsigned __read_seqcount_begin(const seqcount_t *s) | |||
141 | unsigned ret; | 141 | unsigned ret; |
142 | 142 | ||
143 | repeat: | 143 | repeat: |
144 | ret = s->sequence; | 144 | ret = ACCESS_ONCE(s->sequence); |
145 | if (unlikely(ret & 1)) { | 145 | if (unlikely(ret & 1)) { |
146 | cpu_relax(); | 146 | cpu_relax(); |
147 | goto repeat; | 147 | goto repeat; |
@@ -166,6 +166,27 @@ static inline unsigned read_seqcount_begin(const seqcount_t *s) | |||
166 | } | 166 | } |
167 | 167 | ||
168 | /** | 168 | /** |
169 | * raw_seqcount_begin - begin a seq-read critical section | ||
170 | * @s: pointer to seqcount_t | ||
171 | * Returns: count to be passed to read_seqcount_retry | ||
172 | * | ||
173 | * raw_seqcount_begin opens a read critical section of the given seqcount. | ||
174 | * Validity of the critical section is tested by checking read_seqcount_retry | ||
175 | * function. | ||
176 | * | ||
177 | * Unlike read_seqcount_begin(), this function will not wait for the count | ||
178 | * to stabilize. If a writer is active when we begin, we will fail the | ||
179 | * read_seqcount_retry() instead of stabilizing at the beginning of the | ||
180 | * critical section. | ||
181 | */ | ||
182 | static inline unsigned raw_seqcount_begin(const seqcount_t *s) | ||
183 | { | ||
184 | unsigned ret = ACCESS_ONCE(s->sequence); | ||
185 | smp_rmb(); | ||
186 | return ret & ~1; | ||
187 | } | ||
188 | |||
189 | /** | ||
169 | * __read_seqcount_retry - end a seq-read critical section (without barrier) | 190 | * __read_seqcount_retry - end a seq-read critical section (without barrier) |
170 | * @s: pointer to seqcount_t | 191 | * @s: pointer to seqcount_t |
171 | * @start: count, from read_seqcount_begin | 192 | * @start: count, from read_seqcount_begin |
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h index 775292a66fa4..111f26b6e28b 100644 --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h | |||
@@ -1020,7 +1020,7 @@ static inline void skb_queue_splice(const struct sk_buff_head *list, | |||
1020 | } | 1020 | } |
1021 | 1021 | ||
1022 | /** | 1022 | /** |
1023 | * skb_queue_splice - join two skb lists and reinitialise the emptied list | 1023 | * skb_queue_splice_init - join two skb lists and reinitialise the emptied list |
1024 | * @list: the new list to add | 1024 | * @list: the new list to add |
1025 | * @head: the place to add it in the first list | 1025 | * @head: the place to add it in the first list |
1026 | * | 1026 | * |
@@ -1051,7 +1051,7 @@ static inline void skb_queue_splice_tail(const struct sk_buff_head *list, | |||
1051 | } | 1051 | } |
1052 | 1052 | ||
1053 | /** | 1053 | /** |
1054 | * skb_queue_splice_tail - join two skb lists and reinitialise the emptied list | 1054 | * skb_queue_splice_tail_init - join two skb lists and reinitialise the emptied list |
1055 | * @list: the new list to add | 1055 | * @list: the new list to add |
1056 | * @head: the place to add it in the first list | 1056 | * @head: the place to add it in the first list |
1057 | * | 1057 | * |
diff --git a/include/net/bluetooth/hci_core.h b/include/net/bluetooth/hci_core.h index 6822d2595aff..db1c5df45224 100644 --- a/include/net/bluetooth/hci_core.h +++ b/include/net/bluetooth/hci_core.h | |||
@@ -314,6 +314,7 @@ struct hci_conn { | |||
314 | 314 | ||
315 | __u8 remote_cap; | 315 | __u8 remote_cap; |
316 | __u8 remote_auth; | 316 | __u8 remote_auth; |
317 | bool flush_key; | ||
317 | 318 | ||
318 | unsigned int sent; | 319 | unsigned int sent; |
319 | 320 | ||
@@ -980,7 +981,7 @@ int mgmt_discoverable(struct hci_dev *hdev, u8 discoverable); | |||
980 | int mgmt_connectable(struct hci_dev *hdev, u8 connectable); | 981 | int mgmt_connectable(struct hci_dev *hdev, u8 connectable); |
981 | int mgmt_write_scan_failed(struct hci_dev *hdev, u8 scan, u8 status); | 982 | int mgmt_write_scan_failed(struct hci_dev *hdev, u8 scan, u8 status); |
982 | int mgmt_new_link_key(struct hci_dev *hdev, struct link_key *key, | 983 | int mgmt_new_link_key(struct hci_dev *hdev, struct link_key *key, |
983 | u8 persistent); | 984 | bool persistent); |
984 | int mgmt_device_connected(struct hci_dev *hdev, bdaddr_t *bdaddr, u8 link_type, | 985 | int mgmt_device_connected(struct hci_dev *hdev, bdaddr_t *bdaddr, u8 link_type, |
985 | u8 addr_type, u32 flags, u8 *name, u8 name_len, | 986 | u8 addr_type, u32 flags, u8 *name, u8 name_len, |
986 | u8 *dev_class); | 987 | u8 *dev_class); |
diff --git a/include/net/dst.h b/include/net/dst.h index ff4da42fcfc6..bed833d9796a 100644 --- a/include/net/dst.h +++ b/include/net/dst.h | |||
@@ -59,6 +59,7 @@ struct dst_entry { | |||
59 | #define DST_NOCACHE 0x0010 | 59 | #define DST_NOCACHE 0x0010 |
60 | #define DST_NOCOUNT 0x0020 | 60 | #define DST_NOCOUNT 0x0020 |
61 | #define DST_NOPEER 0x0040 | 61 | #define DST_NOPEER 0x0040 |
62 | #define DST_FAKE_RTABLE 0x0080 | ||
62 | 63 | ||
63 | short error; | 64 | short error; |
64 | short obsolete; | 65 | short obsolete; |
diff --git a/include/net/ip_vs.h b/include/net/ip_vs.h index 2bdee51ba30d..72522f087375 100644 --- a/include/net/ip_vs.h +++ b/include/net/ip_vs.h | |||
@@ -393,7 +393,7 @@ struct ip_vs_protocol { | |||
393 | 393 | ||
394 | void (*exit)(struct ip_vs_protocol *pp); | 394 | void (*exit)(struct ip_vs_protocol *pp); |
395 | 395 | ||
396 | void (*init_netns)(struct net *net, struct ip_vs_proto_data *pd); | 396 | int (*init_netns)(struct net *net, struct ip_vs_proto_data *pd); |
397 | 397 | ||
398 | void (*exit_netns)(struct net *net, struct ip_vs_proto_data *pd); | 398 | void (*exit_netns)(struct net *net, struct ip_vs_proto_data *pd); |
399 | 399 | ||
@@ -1203,6 +1203,8 @@ ip_vs_lookup_real_service(struct net *net, int af, __u16 protocol, | |||
1203 | 1203 | ||
1204 | extern int ip_vs_use_count_inc(void); | 1204 | extern int ip_vs_use_count_inc(void); |
1205 | extern void ip_vs_use_count_dec(void); | 1205 | extern void ip_vs_use_count_dec(void); |
1206 | extern int ip_vs_register_nl_ioctl(void); | ||
1207 | extern void ip_vs_unregister_nl_ioctl(void); | ||
1206 | extern int ip_vs_control_init(void); | 1208 | extern int ip_vs_control_init(void); |
1207 | extern void ip_vs_control_cleanup(void); | 1209 | extern void ip_vs_control_cleanup(void); |
1208 | extern struct ip_vs_dest * | 1210 | extern struct ip_vs_dest * |
diff --git a/include/net/sock.h b/include/net/sock.h index 188532ee88b6..5a0a58ac4126 100644 --- a/include/net/sock.h +++ b/include/net/sock.h | |||
@@ -1129,9 +1129,9 @@ sk_sockets_allocated_read_positive(struct sock *sk) | |||
1129 | struct proto *prot = sk->sk_prot; | 1129 | struct proto *prot = sk->sk_prot; |
1130 | 1130 | ||
1131 | if (mem_cgroup_sockets_enabled && sk->sk_cgrp) | 1131 | if (mem_cgroup_sockets_enabled && sk->sk_cgrp) |
1132 | return percpu_counter_sum_positive(sk->sk_cgrp->sockets_allocated); | 1132 | return percpu_counter_read_positive(sk->sk_cgrp->sockets_allocated); |
1133 | 1133 | ||
1134 | return percpu_counter_sum_positive(prot->sockets_allocated); | 1134 | return percpu_counter_read_positive(prot->sockets_allocated); |
1135 | } | 1135 | } |
1136 | 1136 | ||
1137 | static inline int | 1137 | static inline int |