Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
authorDavid S. Miller <davem@davemloft.net>
Fri, 13 Mar 2020 04:29:30 +0000 (21:29 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 13 Mar 2020 05:34:48 +0000 (22:34 -0700)
Minor overlapping changes, nothing serious.

Signed-off-by: David S. Miller <davem@davemloft.net>
46 files changed:
1  2 
MAINTAINERS
drivers/base/core.c
drivers/net/dsa/mv88e6xxx/chip.c
drivers/net/dsa/sja1105/sja1105_main.c
drivers/net/ethernet/broadcom/bcmsysport.c
drivers/net/ethernet/broadcom/bnxt/bnxt.c
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c
drivers/net/ethernet/freescale/dpaa/dpaa_eth.c
drivers/net/ethernet/freescale/fec_main.c
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c
drivers/net/ethernet/mscc/ocelot.c
drivers/net/ethernet/pensando/ionic/ionic_lif.c
drivers/net/ethernet/sfc/efx.h
drivers/net/ethernet/sfc/efx_channels.c
drivers/net/ethernet/sfc/net_driver.h
drivers/net/ethernet/sfc/tx.c
drivers/net/phy/phy_device.c
drivers/net/phy/phylink.c
drivers/net/usb/r8152.c
drivers/net/wireless/mediatek/mt76/dma.c
drivers/s390/net/qeth_core.h
drivers/s390/net/qeth_core_main.c
drivers/s390/net/qeth_l2_main.c
drivers/s390/net/qeth_l3_main.c
include/linux/device.h
include/linux/inet_diag.h
include/linux/phy.h
net/core/devlink.c
net/core/sock.c
net/dsa/port.c
net/dsa/slave.c
net/ipv4/inet_connection_sock.c
net/ipv4/inet_diag.c
net/ipv4/raw_diag.c
net/ipv4/udp_diag.c
net/ipv6/addrconf.c
net/ipv6/seg6_iptunnel.c
net/mptcp/options.c
net/netlink/af_netlink.c
net/sctp/diag.c
net/smc/smc_ib.c
net/wireless/nl80211.c
tools/testing/selftests/tc-testing/config

diff --cc MAINTAINERS
Simple merge
Simple merge
Simple merge
index 06f9d013f8077ce2b64108c38cab84766e34f406,d3b7373c59617b64bea82dd32a91ad4179c1c404..18e9ffa21cd4636afb59f3cd55920e96435575f4
@@@ -2323,34 -2310,27 +2329,34 @@@ void ocelot_configure_cpu(struct ocelo
                         ANA_PORT_PORT_CFG_PORTID_VAL(cpu),
                         ANA_PORT_PORT_CFG, cpu);
  
 -      /* If the CPU port is a physical port, set up the port in Node
 -       * Processor Interface (NPI) mode. This is the mode through which
 -       * frames can be injected from and extracted to an external CPU.
 -       * Only one port can be an NPI at the same time.
 -       */
 -      if (cpu < ocelot->num_phys_ports) {
 +      if (npi >= 0 && npi < ocelot->num_phys_ports) {
-               int mtu = VLAN_ETH_FRAME_LEN + OCELOT_TAG_LEN;
+               int sdu = ETH_DATA_LEN + OCELOT_TAG_LEN;
  
                ocelot_write(ocelot, QSYS_EXT_CPU_CFG_EXT_CPUQ_MSK_M |
 -                           QSYS_EXT_CPU_CFG_EXT_CPU_PORT(cpu),
 +                           QSYS_EXT_CPU_CFG_EXT_CPU_PORT(npi),
                             QSYS_EXT_CPU_CFG);
  
                if (injection == OCELOT_TAG_PREFIX_SHORT)
-                       mtu += OCELOT_SHORT_PREFIX_LEN;
+                       sdu += OCELOT_SHORT_PREFIX_LEN;
                else if (injection == OCELOT_TAG_PREFIX_LONG)
-                       mtu += OCELOT_LONG_PREFIX_LEN;
+                       sdu += OCELOT_LONG_PREFIX_LEN;
  
-               ocelot_port_set_mtu(ocelot, npi, mtu);
+               ocelot_port_set_maxlen(ocelot, cpu, sdu);
 +
 +              /* Enable NPI port */
 +              ocelot_write_rix(ocelot,
 +                               QSYS_SWITCH_PORT_MODE_INGRESS_DROP_MODE |
 +                               QSYS_SWITCH_PORT_MODE_SCH_NEXT_CFG(1) |
 +                               QSYS_SWITCH_PORT_MODE_PORT_ENA,
 +                               QSYS_SWITCH_PORT_MODE, npi);
 +              /* NPI port Injection/Extraction configuration */
 +              ocelot_write_rix(ocelot,
 +                               SYS_PORT_MODE_INCL_XTR_HDR(extraction) |
 +                               SYS_PORT_MODE_INCL_INJ_HDR(injection),
 +                               SYS_PORT_MODE, npi);
        }
  
 -      /* CPU port Injection/Extraction configuration */
 +      /* Enable CPU port module */
        ocelot_write_rix(ocelot, QSYS_SWITCH_PORT_MODE_INGRESS_DROP_MODE |
                         QSYS_SWITCH_PORT_MODE_SCH_NEXT_CFG(1) |
                         QSYS_SWITCH_PORT_MODE_PORT_ENA,
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc net/core/sock.c
Simple merge
diff --cc net/dsa/port.c
Simple merge
diff --cc net/dsa/slave.c
Simple merge
Simple merge
index e1cad25909df07e90a024d9eb624b050a4cb60fc,8c8377568a787c80540aac7e9ed6f122068010ca..5d50aad3cdbf420b4fd8baa8429f213d1846fa55
@@@ -289,66 -298,6 +303,48 @@@ int inet_sk_diag_fill(struct sock *sk, 
                        goto errout;
        }
  
-       if (ext & (1 << (INET_DIAG_CLASS_ID - 1)) ||
-           ext & (1 << (INET_DIAG_TCLASS - 1))) {
-               u32 classid = 0;
- #ifdef CONFIG_SOCK_CGROUP_DATA
-               classid = sock_cgroup_classid(&sk->sk_cgrp_data);
- #endif
-               /* Fallback to socket priority if class id isn't set.
-                * Classful qdiscs use it as direct reference to class.
-                * For cgroup2 classid is always zero.
-                */
-               if (!classid)
-                       classid = sk->sk_priority;
-               if (nla_put_u32(skb, INET_DIAG_CLASS_ID, classid))
-                       goto errout;
-       }
 +      /* Keep it at the end for potential retry with a larger skb,
 +       * or else do best-effort fitting, which is only done for the
 +       * first_nlmsg.
 +       */
 +      if (cb_data->bpf_stg_diag) {
 +              bool first_nlmsg = ((unsigned char *)nlh == skb->data);
 +              unsigned int prev_min_dump_alloc;
 +              unsigned int total_nla_size = 0;
 +              unsigned int msg_len;
 +              int err;
 +
 +              msg_len = skb_tail_pointer(skb) - (unsigned char *)nlh;
 +              err = bpf_sk_storage_diag_put(cb_data->bpf_stg_diag, sk, skb,
 +                                            INET_DIAG_SK_BPF_STORAGES,
 +                                            &total_nla_size);
 +
 +              if (!err)
 +                      goto out;
 +
 +              total_nla_size += msg_len;
 +              prev_min_dump_alloc = cb->min_dump_alloc;
 +              if (total_nla_size > prev_min_dump_alloc)
 +                      cb->min_dump_alloc = min_t(u32, total_nla_size,
 +                                                 MAX_DUMP_ALLOC_SIZE);
 +
 +              if (!first_nlmsg)
 +                      goto errout;
 +
 +              if (cb->min_dump_alloc > prev_min_dump_alloc)
 +                      /* Retry with pskb_expand_head() with
 +                       * __GFP_DIRECT_RECLAIM
 +                       */
 +                      goto errout;
 +
 +              WARN_ON_ONCE(total_nla_size <= prev_min_dump_alloc);
 +
 +              /* Send what we have for this sk
 +               * and move on to the next sk in the following
 +               * dump()
 +               */
 +      }
 +
  out:
        nlmsg_end(skb, nlh);
        return 0;
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc net/sctp/diag.c
Simple merge
Simple merge
Simple merge
index c812faa29f3617828102703fb6e83c031d56f571,c03af46002818234020d58a55bf9a7ac116acfd1..c33a7aac27ff78a45c1fe43823ef96df185cfecf
@@@ -58,8 -57,4 +58,9 @@@ CONFIG_NET_IFE_SKBMARK=
  CONFIG_NET_IFE_SKBPRIO=m
  CONFIG_NET_IFE_SKBTCINDEX=m
  CONFIG_NET_SCH_FIFO=y
+ CONFIG_NET_SCH_ETS=m
 +
 +#
 +## Network testing
 +#
 +CONFIG_CAN=m