diff options
author | David S. Miller <davem@davemloft.net> | 2011-12-23 17:13:56 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-12-23 17:13:56 -0500 |
commit | abb434cb0539fb355c1c921f8fd761efbbac3462 (patch) | |
tree | 24a7d99ec161f8fd4dc9ff03c9c4cc93be883ce6 /include/net | |
parent | 2494654d4890316e7340fb8b3458daad0474a1b9 (diff) | |
parent | 6350323ad8def2ac00d77cdee3b79c9b9fba75c4 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts:
net/bluetooth/l2cap_core.c
Just two overlapping changes, one added an initialization of
a local variable, and another change added a new local variable.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/dst.h | 1 | ||||
-rw-r--r-- | include/net/flow.h | 1 | ||||
-rw-r--r-- | include/net/sctp/structs.h | 4 | ||||
-rw-r--r-- | include/net/sock.h | 4 |
4 files changed, 9 insertions, 1 deletions
diff --git a/include/net/dst.h b/include/net/dst.h index 01343b04351..344c8dd0287 100644 --- a/include/net/dst.h +++ b/include/net/dst.h | |||
@@ -53,6 +53,7 @@ struct dst_entry { | |||
53 | #define DST_NOHASH 0x0008 | 53 | #define DST_NOHASH 0x0008 |
54 | #define DST_NOCACHE 0x0010 | 54 | #define DST_NOCACHE 0x0010 |
55 | #define DST_NOCOUNT 0x0020 | 55 | #define DST_NOCOUNT 0x0020 |
56 | #define DST_NOPEER 0x0040 | ||
56 | 57 | ||
57 | short error; | 58 | short error; |
58 | short obsolete; | 59 | short obsolete; |
diff --git a/include/net/flow.h b/include/net/flow.h index 9192d690b56..da1f064a81b 100644 --- a/include/net/flow.h +++ b/include/net/flow.h | |||
@@ -210,6 +210,7 @@ extern struct flow_cache_object *flow_cache_lookup( | |||
210 | u8 dir, flow_resolve_t resolver, void *ctx); | 210 | u8 dir, flow_resolve_t resolver, void *ctx); |
211 | 211 | ||
212 | extern void flow_cache_flush(void); | 212 | extern void flow_cache_flush(void); |
213 | extern void flow_cache_flush_deferred(void); | ||
213 | extern atomic_t flow_cache_genid; | 214 | extern atomic_t flow_cache_genid; |
214 | 215 | ||
215 | #endif | 216 | #endif |
diff --git a/include/net/sctp/structs.h b/include/net/sctp/structs.h index 07e2cb1ae1f..88949a99453 100644 --- a/include/net/sctp/structs.h +++ b/include/net/sctp/structs.h | |||
@@ -241,6 +241,9 @@ extern struct sctp_globals { | |||
241 | * bits is an indicator of when to send and window update SACK. | 241 | * bits is an indicator of when to send and window update SACK. |
242 | */ | 242 | */ |
243 | int rwnd_update_shift; | 243 | int rwnd_update_shift; |
244 | |||
245 | /* Threshold for autoclose timeout, in seconds. */ | ||
246 | unsigned long max_autoclose; | ||
244 | } sctp_globals; | 247 | } sctp_globals; |
245 | 248 | ||
246 | #define sctp_rto_initial (sctp_globals.rto_initial) | 249 | #define sctp_rto_initial (sctp_globals.rto_initial) |
@@ -281,6 +284,7 @@ extern struct sctp_globals { | |||
281 | #define sctp_auth_enable (sctp_globals.auth_enable) | 284 | #define sctp_auth_enable (sctp_globals.auth_enable) |
282 | #define sctp_checksum_disable (sctp_globals.checksum_disable) | 285 | #define sctp_checksum_disable (sctp_globals.checksum_disable) |
283 | #define sctp_rwnd_upd_shift (sctp_globals.rwnd_update_shift) | 286 | #define sctp_rwnd_upd_shift (sctp_globals.rwnd_update_shift) |
287 | #define sctp_max_autoclose (sctp_globals.max_autoclose) | ||
284 | 288 | ||
285 | /* SCTP Socket type: UDP or TCP style. */ | 289 | /* SCTP Socket type: UDP or TCP style. */ |
286 | typedef enum { | 290 | typedef enum { |
diff --git a/include/net/sock.h b/include/net/sock.h index 3144c795064..bb972d254df 100644 --- a/include/net/sock.h +++ b/include/net/sock.h | |||
@@ -662,12 +662,14 @@ static inline void __sk_add_backlog(struct sock *sk, struct sk_buff *skb) | |||
662 | 662 | ||
663 | /* | 663 | /* |
664 | * Take into account size of receive queue and backlog queue | 664 | * Take into account size of receive queue and backlog queue |
665 | * Do not take into account this skb truesize, | ||
666 | * to allow even a single big packet to come. | ||
665 | */ | 667 | */ |
666 | static inline bool sk_rcvqueues_full(const struct sock *sk, const struct sk_buff *skb) | 668 | static inline bool sk_rcvqueues_full(const struct sock *sk, const struct sk_buff *skb) |
667 | { | 669 | { |
668 | unsigned int qsize = sk->sk_backlog.len + atomic_read(&sk->sk_rmem_alloc); | 670 | unsigned int qsize = sk->sk_backlog.len + atomic_read(&sk->sk_rmem_alloc); |
669 | 671 | ||
670 | return qsize + skb->truesize > sk->sk_rcvbuf; | 672 | return qsize > sk->sk_rcvbuf; |
671 | } | 673 | } |
672 | 674 | ||
673 | /* The per-socket spinlock must be held here. */ | 675 | /* The per-socket spinlock must be held here. */ |