Merge tag 'v3.10.92' into update

This is the 3.10.92 stable release
This commit is contained in:
Stricted
2018-03-21 22:49:35 +01:00
20 changed files with 71 additions and 42 deletions
+3
View File
@@ -2363,6 +2363,9 @@ static inline void skb_postpull_rcsum(struct sk_buff *skb,
{
if (skb->ip_summed == CHECKSUM_COMPLETE)
skb->csum = csum_sub(skb->csum, csum_partial(start, len, 0));
else if (skb->ip_summed == CHECKSUM_PARTIAL &&
skb_checksum_start_offset(skb) < 0)
skb->ip_summed = CHECKSUM_NONE;
}
unsigned char *skb_pull_rcsum(struct sk_buff *skb, unsigned int len);
+5 -1
View File
@@ -64,7 +64,11 @@ struct unix_sock {
struct socket_wq peer_wq;
wait_queue_t peer_wake;
};
#define unix_sk(__sk) ((struct unix_sock *)__sk)
static inline struct unix_sock *unix_sk(struct sock *sk)
{
return (struct unix_sock *)sk;
}
#define peer_wait peer_wq.wait
+9
View File
@@ -786,6 +786,15 @@ static inline __must_check int sk_add_backlog(struct sock *sk, struct sk_buff *s
#endif
return -ENOBUFS;
}
/*
* If the skb was allocated from pfmemalloc reserves, only
* allow SOCK_MEMALLOC sockets to use it as this socket is
* helping free memory
*/
if (skb_pfmemalloc(skb) && !sock_flag(sk, SOCK_MEMALLOC))
return -ENOMEM;
__sk_add_backlog(sk, skb);
sk->sk_backlog.len += skb->truesize;
return 0;