mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 11:41:38 -04:00
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Signed-off-by: David S. Miller <[email protected]>
This commit is contained in:
commit
b1513c3531
84 changed files with 617 additions and 249 deletions
|
|
@ -2403,7 +2403,8 @@ struct rtable *__ip_route_output_key_hash(struct net *net, struct flowi4 *fl4,
|
|||
}
|
||||
|
||||
/* L3 master device is the loopback for that domain */
|
||||
dev_out = l3mdev_master_dev_rcu(dev_out) ? : net->loopback_dev;
|
||||
dev_out = l3mdev_master_dev_rcu(FIB_RES_DEV(res)) ? :
|
||||
net->loopback_dev;
|
||||
fl4->flowi4_oif = dev_out->ifindex;
|
||||
flags |= RTCF_LOCAL;
|
||||
goto make_route;
|
||||
|
|
|
|||
|
|
@ -168,12 +168,8 @@ void tcp_assign_congestion_control(struct sock *sk)
|
|||
}
|
||||
out:
|
||||
rcu_read_unlock();
|
||||
memset(icsk->icsk_ca_priv, 0, sizeof(icsk->icsk_ca_priv));
|
||||
|
||||
/* Clear out private data before diag gets it and
|
||||
* the ca has not been initialized.
|
||||
*/
|
||||
if (ca->get_info)
|
||||
memset(icsk->icsk_ca_priv, 0, sizeof(icsk->icsk_ca_priv));
|
||||
if (ca->flags & TCP_CONG_NEEDS_ECN)
|
||||
INET_ECN_xmit(sk);
|
||||
else
|
||||
|
|
@ -200,11 +196,10 @@ static void tcp_reinit_congestion_control(struct sock *sk,
|
|||
tcp_cleanup_congestion_control(sk);
|
||||
icsk->icsk_ca_ops = ca;
|
||||
icsk->icsk_ca_setsockopt = 1;
|
||||
memset(icsk->icsk_ca_priv, 0, sizeof(icsk->icsk_ca_priv));
|
||||
|
||||
if (sk->sk_state != TCP_CLOSE) {
|
||||
memset(icsk->icsk_ca_priv, 0, sizeof(icsk->icsk_ca_priv));
|
||||
if (sk->sk_state != TCP_CLOSE)
|
||||
tcp_init_congestion_control(sk);
|
||||
}
|
||||
}
|
||||
|
||||
/* Manage refcounts on socket close. */
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@ static struct sk_buff *__skb_udp_tunnel_segment(struct sk_buff *skb,
|
|||
u16 mac_len = skb->mac_len;
|
||||
int udp_offset, outer_hlen;
|
||||
__wsum partial;
|
||||
bool need_ipsec;
|
||||
|
||||
if (unlikely(!pskb_may_pull(skb, tnl_hlen)))
|
||||
goto out;
|
||||
|
|
@ -62,8 +63,10 @@ static struct sk_buff *__skb_udp_tunnel_segment(struct sk_buff *skb,
|
|||
|
||||
ufo = !!(skb_shinfo(skb)->gso_type & SKB_GSO_UDP);
|
||||
|
||||
need_ipsec = skb_dst(skb) && dst_xfrm(skb_dst(skb));
|
||||
/* Try to offload checksum if possible */
|
||||
offload_csum = !!(need_csum &&
|
||||
!need_ipsec &&
|
||||
(skb->dev->features &
|
||||
(is_ipv6 ? (NETIF_F_HW_CSUM | NETIF_F_IPV6_CSUM) :
|
||||
(NETIF_F_HW_CSUM | NETIF_F_IP_CSUM))));
|
||||
|
|
|
|||
Loading…
Reference in a new issue