Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
authorDavid S. Miller <davem@davemloft.net>
Tue, 9 Jul 2019 02:48:57 +0000 (19:48 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 9 Jul 2019 02:48:57 +0000 (19:48 -0700)
Two cases of overlapping changes, nothing fancy.

Signed-off-by: David S. Miller <davem@davemloft.net>
51 files changed:
1  2 
MAINTAINERS
arch/x86/net/bpf_jit_comp32.c
drivers/net/bonding/bond_main.c
drivers/net/dsa/mv88e6xxx/chip.c
drivers/net/ethernet/allwinner/sun4i-emac.c
drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c
drivers/net/ethernet/broadcom/bnxt/bnxt.c
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
drivers/net/ethernet/cadence/macb.h
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
drivers/net/ethernet/ti/cpsw.c
drivers/net/ethernet/ti/cpsw_priv.h
drivers/net/vxlan.c
drivers/net/wireless/intel/iwlwifi/pcie/trans.c
drivers/net/wireless/marvell/mwifiex/scan.c
drivers/net/wireless/marvell/mwifiex/wmm.c
drivers/net/wireless/mediatek/mt76/mt76.h
drivers/net/wireless/mediatek/mt76/usb.c
include/linux/phylink.h
include/net/ip_vs.h
include/net/tls.h
include/net/xdp_sock.h
include/uapi/linux/bpf.h
include/uapi/linux/nl80211.h
kernel/bpf/core.c
net/batman-adv/hard-interface.c
net/batman-adv/types.h
net/bridge/br_input.c
net/core/filter.c
net/ipv4/devinet.c
net/ipv4/igmp.c
net/ipv4/route.c
net/ipv4/tcp.c
net/key/af_key.c
net/netfilter/ipvs/ip_vs_core.c
net/netfilter/ipvs/ip_vs_ctl.c
net/netfilter/nf_nat_proto.c
net/netfilter/nf_queue.c
net/sched/cls_flower.c
net/tls/tls_device.c
net/tls/tls_sw.c
net/xdp/xsk.c
net/xdp/xsk_queue.h
net/xfrm/xfrm_interface.c
net/xfrm/xfrm_policy.c
samples/bpf/xdp_redirect_user.c
tools/bpf/bpftool/cgroup.c
tools/include/uapi/linux/bpf.h
tools/testing/selftests/bpf/progs/test_lwt_seg6local.c
tools/testing/selftests/net/config
tools/testing/selftests/tc-testing/tc-tests/filters/tests.json

diff --cc MAINTAINERS
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 0fe57a261c9c7c566cfb2efceaf15b81a9e11173,5b130140fb8f3a8382d047718f8fcdf31e87439e..300ecdb6790a7ae8655e74bd43e6cf8e991c67fe
@@@ -114,9 -99,15 +115,15 @@@ struct phylink_mac_ops 
   * If the @state->interface mode is %PHY_INTERFACE_MODE_1000BASEX
   * or %PHY_INTERFACE_MODE_2500BASEX, select the appropriate mode
   * based on @state->advertising and/or @state->speed and update
-  * @state->interface accordingly.
+  * @state->interface accordingly. See phylink_helper_basex_speed().
+  *
+  * When @state->interface is %PHY_INTERFACE_MODE_NA, phylink expects the
+  * MAC driver to return all supported link modes.
+  *
+  * If the @state->interface mode is not supported, then the @supported
+  * mask must be cleared.
   */
 -void validate(struct net_device *ndev, unsigned long *supported,
 +void validate(struct phylink_config *config, unsigned long *supported,
              struct phylink_link_state *state);
  
  /**
Simple merge
index 0279938386aba2a6ebbd903887a57d56764ee56e,889df0312cd10d11b4c8353bbdfb05e294b57921..176d0b039f32c0e96f57208021370be760439a08
@@@ -345,8 -310,10 +345,9 @@@ struct tls_offload_context_rx 
  };
  
  #define TLS_OFFLOAD_CONTEXT_SIZE_RX                                   \
 -      (ALIGN(sizeof(struct tls_offload_context_rx), sizeof(void *)) + \
 -       TLS_DRIVER_STATE_SIZE)
 +      (sizeof(struct tls_offload_context_rx) + TLS_DRIVER_STATE_SIZE_RX)
  
+ void tls_ctx_free(struct tls_context *ctx);
  int wait_on_pending_writer(struct sock *sk, long *timeo);
  int tls_sk_query(struct sock *sk, int optname, char __user *optval,
                int __user *optlen);
index de4e3a353df344ffd42f88560b2dd4a8722b16ce,7da155164947d0dafc247fe4d16d2f6a294e0c6f..69796d264f0638457526345f5cc423bf2c27bf17
@@@ -58,11 -58,16 +58,16 @@@ struct xdp_sock 
        struct xdp_umem *umem;
        struct list_head flush_node;
        u16 queue_id;
 -      struct xsk_queue *tx ____cacheline_aligned_in_smp;
 -      struct list_head list;
        bool zc;
+       enum {
+               XSK_READY = 0,
+               XSK_BOUND,
+               XSK_UNBOUND,
+       } state;
        /* Protects multiple processes in the control path */
        struct mutex mutex;
 +      struct xsk_queue *tx ____cacheline_aligned_in_smp;
 +      struct list_head list;
        /* Mutual exclusion of NAPI TX thread and sendmsg error paths
         * in the SKB destructor callback.
         */
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 137d1892395d3e9f9bb26ed532484b9737aaab8f,c5ebfa199794cd9585a0162f2dd47c6b16412cb3..a4b5bd4d2c89e0ce9574199a467d53ee8504876c
@@@ -482,10 -473,11 +487,13 @@@ static int __inet_insert_ifa(struct in_
        ifa->ifa_flags &= ~IFA_F_SECONDARY;
        last_primary = &in_dev->ifa_list;
  
 -      for (ifap = &in_dev->ifa_list; (ifa1 = *ifap) != NULL;
 -           ifap = &ifa1->ifa_next) {
+       /* Don't set IPv6 only flags to IPv4 addresses */
+       ifa->ifa_flags &= ~IPV6ONLY_FLAGS;
 +      ifap = &in_dev->ifa_list;
 +      ifa1 = rtnl_dereference(*ifap);
 +
 +      while (ifa1) {
                if (!(ifa1->ifa_flags & IFA_F_SECONDARY) &&
                    ifa->ifa_scope <= ifa1->ifa_scope)
                        last_primary = &ifa1->ifa_next;
diff --cc net/ipv4/igmp.c
Simple merge
Simple merge
diff --cc net/ipv4/tcp.c
Simple merge
Simple merge
Simple merge
Simple merge
index 888292e8fbb24f7790da01536dfb1e2d16b0b54a,83a24cc5753bcf94c58498f5d1df8349a75414b3..7ac733ebd060d4acf6ed56972d978a23d02d722b
@@@ -562,9 -562,9 +562,9 @@@ int nf_nat_icmp_reply_translation(struc
  
        WARN_ON(ctinfo != IP_CT_RELATED && ctinfo != IP_CT_RELATED_REPLY);
  
 -      if (!skb_make_writable(skb, hdrlen + sizeof(*inside)))
 +      if (skb_ensure_writable(skb, hdrlen + sizeof(*inside)))
                return 0;
-       if (nf_ip_checksum(skb, hooknum, hdrlen, 0))
+       if (nf_ip_checksum(skb, hooknum, hdrlen, IPPROTO_ICMP))
                return 0;
  
        inside = (void *)skb->data + hdrlen;
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc net/xdp/xsk.c
index 0574f008954c1f76ed290120831af99e64713a74,f53a6ef7c155de864f46361fe01c909ba793eb1e..d4d6f10aa93646d280c23eb6f28b89582cbb922f
@@@ -798,8 -817,8 +851,9 @@@ static int xsk_create(struct net *net, 
        sock_set_flag(sk, SOCK_RCU_FREE);
  
        xs = xdp_sk(sk);
+       xs->state = XSK_READY;
        mutex_init(&xs->mutex);
 +      spin_lock_init(&xs->rx_lock);
        spin_lock_init(&xs->tx_completion_lock);
  
        mutex_lock(&net->xdp.lock);
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index e4b878d95ba01f96a1bbf9cc7a2b15f597fba5db,3dea2cba232527d5fd0164ce3e9761a740130440..b8503a8119b070a27f22b2eada4d890b119e8d8a
@@@ -25,6 -25,4 +25,7 @@@ CONFIG_NF_TABLES_IPV6=
  CONFIG_NF_TABLES_IPV4=y
  CONFIG_NFT_CHAIN_NAT_IPV6=m
  CONFIG_NFT_CHAIN_NAT_IPV4=m
 +CONFIG_NET_SCH_FQ=m
 +CONFIG_NET_SCH_ETF=m
 +CONFIG_TEST_BLACKHOLE_DEV=m
+ CONFIG_KALLSYMS=y