aboutsummaryrefslogtreecommitdiffstats
path: root/net/core
diff options
context:
space:
mode:
Diffstat (limited to 'net/core')
-rw-r--r--net/core/dev.c2
-rw-r--r--net/core/flow_dissector.c4
-rw-r--r--net/core/netpoll.c3
-rw-r--r--net/core/rtnetlink.c2
-rw-r--r--net/core/skbuff.c2
-rw-r--r--net/core/sock.c1
6 files changed, 9 insertions, 5 deletions
diff --git a/net/core/dev.c b/net/core/dev.c
index 77d43ae2a7bb..0ffcbdd55fa9 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -3272,7 +3272,7 @@ struct sk_buff *dev_hard_start_xmit(struct sk_buff *first, struct net_device *de
3272 } 3272 }
3273 3273
3274 skb = next; 3274 skb = next;
3275 if (netif_xmit_stopped(txq) && skb) { 3275 if (netif_tx_queue_stopped(txq) && skb) {
3276 rc = NETDEV_TX_BUSY; 3276 rc = NETDEV_TX_BUSY;
3277 break; 3277 break;
3278 } 3278 }
diff --git a/net/core/flow_dissector.c b/net/core/flow_dissector.c
index 676f3ad629f9..588f475019d4 100644
--- a/net/core/flow_dissector.c
+++ b/net/core/flow_dissector.c
@@ -1166,8 +1166,8 @@ ip_proto_again:
1166 break; 1166 break;
1167 } 1167 }
1168 1168
1169 if (dissector_uses_key(flow_dissector, 1169 if (dissector_uses_key(flow_dissector, FLOW_DISSECTOR_KEY_PORTS) &&
1170 FLOW_DISSECTOR_KEY_PORTS)) { 1170 !(key_control->flags & FLOW_DIS_IS_FRAGMENT)) {
1171 key_ports = skb_flow_dissector_target(flow_dissector, 1171 key_ports = skb_flow_dissector_target(flow_dissector,
1172 FLOW_DISSECTOR_KEY_PORTS, 1172 FLOW_DISSECTOR_KEY_PORTS,
1173 target_container); 1173 target_container);
diff --git a/net/core/netpoll.c b/net/core/netpoll.c
index 5da9552b186b..2b9fdbc43205 100644
--- a/net/core/netpoll.c
+++ b/net/core/netpoll.c
@@ -717,7 +717,8 @@ int netpoll_setup(struct netpoll *np)
717 717
718 read_lock_bh(&idev->lock); 718 read_lock_bh(&idev->lock);
719 list_for_each_entry(ifp, &idev->addr_list, if_list) { 719 list_for_each_entry(ifp, &idev->addr_list, if_list) {
720 if (ipv6_addr_type(&ifp->addr) & IPV6_ADDR_LINKLOCAL) 720 if (!!(ipv6_addr_type(&ifp->addr) & IPV6_ADDR_LINKLOCAL) !=
721 !!(ipv6_addr_type(&np->remote_ip.in6) & IPV6_ADDR_LINKLOCAL))
721 continue; 722 continue;
722 np->local_ip.in6 = ifp->addr; 723 np->local_ip.in6 = ifp->addr;
723 err = 0; 724 err = 0;
diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c
index e01274bd5e3e..33d9227a8b80 100644
--- a/net/core/rtnetlink.c
+++ b/net/core/rtnetlink.c
@@ -3367,7 +3367,7 @@ static int rtnl_dump_all(struct sk_buff *skb, struct netlink_callback *cb)
3367 cb->seq = 0; 3367 cb->seq = 0;
3368 } 3368 }
3369 ret = dumpit(skb, cb); 3369 ret = dumpit(skb, cb);
3370 if (ret < 0) 3370 if (ret)
3371 break; 3371 break;
3372 } 3372 }
3373 cb->family = idx; 3373 cb->family = idx;
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 946de0e24c87..b4ee5c8b928f 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -4944,6 +4944,8 @@ static unsigned int skb_gso_mac_seglen(const struct sk_buff *skb)
4944 * 4944 *
4945 * This is a helper to do that correctly considering GSO_BY_FRAGS. 4945 * This is a helper to do that correctly considering GSO_BY_FRAGS.
4946 * 4946 *
4947 * @skb: GSO skb
4948 *
4947 * @seg_len: The segmented length (from skb_gso_*_seglen). In the 4949 * @seg_len: The segmented length (from skb_gso_*_seglen). In the
4948 * GSO_BY_FRAGS case this will be [header sizes + GSO_BY_FRAGS]. 4950 * GSO_BY_FRAGS case this will be [header sizes + GSO_BY_FRAGS].
4949 * 4951 *
diff --git a/net/core/sock.c b/net/core/sock.c
index 6fcc4bc07d19..080a880a1761 100644
--- a/net/core/sock.c
+++ b/net/core/sock.c
@@ -3279,6 +3279,7 @@ int sock_load_diag_module(int family, int protocol)
3279 3279
3280#ifdef CONFIG_INET 3280#ifdef CONFIG_INET
3281 if (family == AF_INET && 3281 if (family == AF_INET &&
3282 protocol != IPPROTO_RAW &&
3282 !rcu_access_pointer(inet_protos[protocol])) 3283 !rcu_access_pointer(inet_protos[protocol]))
3283 return -ENOENT; 3284 return -ENOENT;
3284#endif 3285#endif