diff options
author | Jeremy Erickson <jerickso@cs.unc.edu> | 2014-04-11 13:24:45 -0400 |
---|---|---|
committer | Jeremy Erickson <jerickso@cs.unc.edu> | 2014-04-11 13:24:45 -0400 |
commit | 438145c7ef5c9445f25bb8fc4d52e2c9d11fdc7c (patch) | |
tree | 76941991e36f4a32bf1be0db3854959053f24619 /include/net | |
parent | 9ddd1b8ad8abd321964b8add5581910de6d67c2a (diff) |
Update from 2.6.36 to 2.6.36.4wip-dissipation-jerickso
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/af_unix.h | 2 | ||||
-rw-r--r-- | include/net/cfg80211.h | 15 | ||||
-rw-r--r-- | include/net/mac80211.h | 16 | ||||
-rw-r--r-- | include/net/sock.h | 4 |
4 files changed, 29 insertions, 8 deletions
diff --git a/include/net/af_unix.h b/include/net/af_unix.h index 90c9e2872f27..18e5c3f67580 100644 --- a/include/net/af_unix.h +++ b/include/net/af_unix.h | |||
@@ -10,6 +10,7 @@ extern void unix_inflight(struct file *fp); | |||
10 | extern void unix_notinflight(struct file *fp); | 10 | extern void unix_notinflight(struct file *fp); |
11 | extern void unix_gc(void); | 11 | extern void unix_gc(void); |
12 | extern void wait_for_unix_gc(void); | 12 | extern void wait_for_unix_gc(void); |
13 | extern struct sock *unix_get_socket(struct file *filp); | ||
13 | 14 | ||
14 | #define UNIX_HASH_SIZE 256 | 15 | #define UNIX_HASH_SIZE 256 |
15 | 16 | ||
@@ -56,6 +57,7 @@ struct unix_sock { | |||
56 | spinlock_t lock; | 57 | spinlock_t lock; |
57 | unsigned int gc_candidate : 1; | 58 | unsigned int gc_candidate : 1; |
58 | unsigned int gc_maybe_cycle : 1; | 59 | unsigned int gc_maybe_cycle : 1; |
60 | unsigned char recursion_level; | ||
59 | struct socket_wq peer_wq; | 61 | struct socket_wq peer_wq; |
60 | }; | 62 | }; |
61 | #define unix_sk(__sk) ((struct unix_sock *)__sk) | 63 | #define unix_sk(__sk) ((struct unix_sock *)__sk) |
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h index 2fd06c60ffbb..a1662a52fb7d 100644 --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h | |||
@@ -1201,13 +1201,14 @@ struct cfg80211_ops { | |||
1201 | * initiator is %REGDOM_SET_BY_CORE). | 1201 | * initiator is %REGDOM_SET_BY_CORE). |
1202 | * @WIPHY_FLAG_STRICT_REGULATORY: tells us the driver for this device will | 1202 | * @WIPHY_FLAG_STRICT_REGULATORY: tells us the driver for this device will |
1203 | * ignore regulatory domain settings until it gets its own regulatory | 1203 | * ignore regulatory domain settings until it gets its own regulatory |
1204 | * domain via its regulatory_hint(). After its gets its own regulatory | 1204 | * domain via its regulatory_hint() unless the regulatory hint is |
1205 | * domain it will only allow further regulatory domain settings to | 1205 | * from a country IE. After its gets its own regulatory domain it will |
1206 | * further enhance compliance. For example if channel 13 and 14 are | 1206 | * only allow further regulatory domain settings to further enhance |
1207 | * disabled by this regulatory domain no user regulatory domain can | 1207 | * compliance. For example if channel 13 and 14 are disabled by this |
1208 | * enable these channels at a later time. This can be used for devices | 1208 | * regulatory domain no user regulatory domain can enable these channels |
1209 | * which do not have calibration information gauranteed for frequencies | 1209 | * at a later time. This can be used for devices which do not have |
1210 | * or settings outside of its regulatory domain. | 1210 | * calibration information guaranteed for frequencies or settings |
1211 | * outside of its regulatory domain. | ||
1211 | * @WIPHY_FLAG_DISABLE_BEACON_HINTS: enable this if your driver needs to ensure | 1212 | * @WIPHY_FLAG_DISABLE_BEACON_HINTS: enable this if your driver needs to ensure |
1212 | * that passive scan flags and beaconing flags may not be lifted by | 1213 | * that passive scan flags and beaconing flags may not be lifted by |
1213 | * cfg80211 due to regulatory beacon hints. For more information on beacon | 1214 | * cfg80211 due to regulatory beacon hints. For more information on beacon |
diff --git a/include/net/mac80211.h b/include/net/mac80211.h index b0787a1dea90..05aaa8789848 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h | |||
@@ -315,6 +315,9 @@ struct ieee80211_bss_conf { | |||
315 | * @IEEE80211_TX_CTL_LDPC: tells the driver to use LDPC for this frame | 315 | * @IEEE80211_TX_CTL_LDPC: tells the driver to use LDPC for this frame |
316 | * @IEEE80211_TX_CTL_STBC: Enables Space-Time Block Coding (STBC) for this | 316 | * @IEEE80211_TX_CTL_STBC: Enables Space-Time Block Coding (STBC) for this |
317 | * frame and selects the maximum number of streams that it can use. | 317 | * frame and selects the maximum number of streams that it can use. |
318 | * | ||
319 | * Note: If you have to add new flags to the enumeration, then don't | ||
320 | * forget to update %IEEE80211_TX_TEMPORARY_FLAGS when necessary. | ||
318 | */ | 321 | */ |
319 | enum mac80211_tx_control_flags { | 322 | enum mac80211_tx_control_flags { |
320 | IEEE80211_TX_CTL_REQ_TX_STATUS = BIT(0), | 323 | IEEE80211_TX_CTL_REQ_TX_STATUS = BIT(0), |
@@ -344,6 +347,19 @@ enum mac80211_tx_control_flags { | |||
344 | 347 | ||
345 | #define IEEE80211_TX_CTL_STBC_SHIFT 23 | 348 | #define IEEE80211_TX_CTL_STBC_SHIFT 23 |
346 | 349 | ||
350 | /* | ||
351 | * This definition is used as a mask to clear all temporary flags, which are | ||
352 | * set by the tx handlers for each transmission attempt by the mac80211 stack. | ||
353 | */ | ||
354 | #define IEEE80211_TX_TEMPORARY_FLAGS (IEEE80211_TX_CTL_NO_ACK | \ | ||
355 | IEEE80211_TX_CTL_CLEAR_PS_FILT | IEEE80211_TX_CTL_FIRST_FRAGMENT | \ | ||
356 | IEEE80211_TX_CTL_SEND_AFTER_DTIM | IEEE80211_TX_CTL_AMPDU | \ | ||
357 | IEEE80211_TX_STAT_TX_FILTERED | IEEE80211_TX_STAT_ACK | \ | ||
358 | IEEE80211_TX_STAT_AMPDU | IEEE80211_TX_STAT_AMPDU_NO_BACK | \ | ||
359 | IEEE80211_TX_CTL_RATE_CTRL_PROBE | IEEE80211_TX_CTL_PSPOLL_RESPONSE | \ | ||
360 | IEEE80211_TX_CTL_MORE_FRAMES | IEEE80211_TX_CTL_LDPC | \ | ||
361 | IEEE80211_TX_CTL_STBC) | ||
362 | |||
347 | /** | 363 | /** |
348 | * enum mac80211_rate_control_flags - per-rate flags set by the | 364 | * enum mac80211_rate_control_flags - per-rate flags set by the |
349 | * Rate Control algorithm. | 365 | * Rate Control algorithm. |
diff --git a/include/net/sock.h b/include/net/sock.h index adab9dc58183..6892a5e89c23 100644 --- a/include/net/sock.h +++ b/include/net/sock.h | |||
@@ -1155,6 +1155,8 @@ extern void sk_common_release(struct sock *sk); | |||
1155 | /* Initialise core socket variables */ | 1155 | /* Initialise core socket variables */ |
1156 | extern void sock_init_data(struct socket *sock, struct sock *sk); | 1156 | extern void sock_init_data(struct socket *sock, struct sock *sk); |
1157 | 1157 | ||
1158 | extern void sk_filter_release_rcu(struct rcu_head *rcu); | ||
1159 | |||
1158 | /** | 1160 | /** |
1159 | * sk_filter_release - release a socket filter | 1161 | * sk_filter_release - release a socket filter |
1160 | * @fp: filter to remove | 1162 | * @fp: filter to remove |
@@ -1165,7 +1167,7 @@ extern void sock_init_data(struct socket *sock, struct sock *sk); | |||
1165 | static inline void sk_filter_release(struct sk_filter *fp) | 1167 | static inline void sk_filter_release(struct sk_filter *fp) |
1166 | { | 1168 | { |
1167 | if (atomic_dec_and_test(&fp->refcnt)) | 1169 | if (atomic_dec_and_test(&fp->refcnt)) |
1168 | kfree(fp); | 1170 | call_rcu_bh(&fp->rcu, sk_filter_release_rcu); |
1169 | } | 1171 | } |
1170 | 1172 | ||
1171 | static inline void sk_filter_uncharge(struct sock *sk, struct sk_filter *fp) | 1173 | static inline void sk_filter_uncharge(struct sock *sk, struct sk_filter *fp) |