Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts: drivers/net/vxlan.c drivers/vhost/net.c include/linux/if_vlan.h net/core/dev.c The net/core/dev.c conflict was the overlap of one commit marking an existing function static whilst another was adding a new function. In the include/linux/if_vlan.h case, the type used for a local variable was changed in 'net', whereas the function got rewritten to fix a stacked vlan bug in 'net-next'. In drivers/vhost/net.c, Al Viro's iov_iter conversions in 'net-next' overlapped with an endainness fix for VHOST 1.0 in 'net'. In drivers/net/vxlan.c, vxlan_find_vni() added a 'flags' parameter in 'net-next' whereas in 'net' there was a bug fix to pass in the correct network namespace pointer in calls to this function. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -22,9 +22,9 @@ struct flow_keys {
|
||||
__be32 ports;
|
||||
__be16 port16[2];
|
||||
};
|
||||
u16 thoff;
|
||||
u16 n_proto;
|
||||
u8 ip_proto;
|
||||
u16 thoff;
|
||||
__be16 n_proto;
|
||||
u8 ip_proto;
|
||||
};
|
||||
|
||||
bool __skb_flow_dissect(const struct sk_buff *skb, struct flow_keys *flow,
|
||||
|
||||
+1
-1
@@ -181,7 +181,7 @@ static inline __u8 ip_reply_arg_flowi_flags(const struct ip_reply_arg *arg)
|
||||
return (arg->flags & IP_REPLY_ARG_NOSRCCHECK) ? FLOWI_FLAG_ANYSRC : 0;
|
||||
}
|
||||
|
||||
void ip_send_unicast_reply(struct net *net, struct sk_buff *skb,
|
||||
void ip_send_unicast_reply(struct sock *sk, struct sk_buff *skb,
|
||||
const struct ip_options *sopt,
|
||||
__be32 daddr, __be32 saddr,
|
||||
const struct ip_reply_arg *arg,
|
||||
|
||||
+5
-2
@@ -671,6 +671,9 @@ static inline int ipv6_addr_diff(const struct in6_addr *a1, const struct in6_add
|
||||
return __ipv6_addr_diff(a1, a2, sizeof(struct in6_addr));
|
||||
}
|
||||
|
||||
u32 __ipv6_select_ident(u32 hashrnd, struct in6_addr *dst,
|
||||
struct in6_addr *src);
|
||||
void ipv6_select_ident(struct frag_hdr *fhdr, struct rt6_info *rt);
|
||||
void ipv6_proxy_select_ident(struct sk_buff *skb);
|
||||
|
||||
int ip6_dst_hoplimit(struct dst_entry *dst);
|
||||
@@ -708,7 +711,7 @@ static inline __be32 ip6_make_flowlabel(struct net *net, struct sk_buff *skb,
|
||||
__be32 flowlabel, bool autolabel)
|
||||
{
|
||||
if (!flowlabel && (autolabel || net->ipv6.sysctl.auto_flowlabels)) {
|
||||
__be32 hash;
|
||||
u32 hash;
|
||||
|
||||
hash = skb_get_hash(skb);
|
||||
|
||||
@@ -718,7 +721,7 @@ static inline __be32 ip6_make_flowlabel(struct net *net, struct sk_buff *skb,
|
||||
*/
|
||||
hash ^= hash >> 12;
|
||||
|
||||
flowlabel = hash & IPV6_FLOWLABEL_MASK;
|
||||
flowlabel = (__force __be32)hash & IPV6_FLOWLABEL_MASK;
|
||||
}
|
||||
|
||||
return flowlabel;
|
||||
|
||||
@@ -530,6 +530,8 @@ enum nft_chain_type {
|
||||
|
||||
int nft_chain_validate_dependency(const struct nft_chain *chain,
|
||||
enum nft_chain_type type);
|
||||
int nft_chain_validate_hooks(const struct nft_chain *chain,
|
||||
unsigned int hook_flags);
|
||||
|
||||
struct nft_stats {
|
||||
u64 bytes;
|
||||
|
||||
@@ -53,6 +53,7 @@ struct netns_ipv4 {
|
||||
struct inet_peer_base *peers;
|
||||
struct tcpm_hash_bucket *tcp_metrics_hash;
|
||||
unsigned int tcp_metrics_hash_log;
|
||||
struct sock * __percpu *tcp_sk;
|
||||
struct netns_frags frags;
|
||||
#ifdef CONFIG_NETFILTER
|
||||
struct xt_table *iptable_filter;
|
||||
|
||||
@@ -79,6 +79,9 @@ struct Qdisc {
|
||||
struct netdev_queue *dev_queue;
|
||||
|
||||
struct gnet_stats_rate_est64 rate_est;
|
||||
struct gnet_stats_basic_cpu __percpu *cpu_bstats;
|
||||
struct gnet_stats_queue __percpu *cpu_qstats;
|
||||
|
||||
struct Qdisc *next_sched;
|
||||
struct sk_buff *gso_skb;
|
||||
/*
|
||||
@@ -86,15 +89,9 @@ struct Qdisc {
|
||||
*/
|
||||
unsigned long state;
|
||||
struct sk_buff_head q;
|
||||
union {
|
||||
struct gnet_stats_basic_packed bstats;
|
||||
struct gnet_stats_basic_cpu __percpu *cpu_bstats;
|
||||
} __packed;
|
||||
struct gnet_stats_basic_packed bstats;
|
||||
unsigned int __state;
|
||||
union {
|
||||
struct gnet_stats_queue qstats;
|
||||
struct gnet_stats_queue __percpu *cpu_qstats;
|
||||
} __packed;
|
||||
struct gnet_stats_queue qstats;
|
||||
struct rcu_head rcu_head;
|
||||
int padded;
|
||||
atomic_t refcnt;
|
||||
|
||||
+2
-2
@@ -843,8 +843,8 @@ void tcp_get_available_congestion_control(char *buf, size_t len);
|
||||
void tcp_get_allowed_congestion_control(char *buf, size_t len);
|
||||
int tcp_set_allowed_congestion_control(char *allowed);
|
||||
int tcp_set_congestion_control(struct sock *sk, const char *name);
|
||||
void tcp_slow_start(struct tcp_sock *tp, u32 acked);
|
||||
void tcp_cong_avoid_ai(struct tcp_sock *tp, u32 w);
|
||||
u32 tcp_slow_start(struct tcp_sock *tp, u32 acked);
|
||||
void tcp_cong_avoid_ai(struct tcp_sock *tp, u32 w, u32 acked);
|
||||
|
||||
u32 tcp_reno_ssthresh(struct sock *sk);
|
||||
void tcp_reno_cong_avoid(struct sock *sk, u32 ack, u32 acked);
|
||||
|
||||
Reference in New Issue
Block a user