1. 15 1月, 2021 18 次提交
    • L
      Merge tag 'net-5.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · e8c13a6b
      Linus Torvalds 提交于
      Pull networking fixes from Jakub Kicinski:
       "We have a few fixes for long standing issues, in particular Eric's fix
        to not underestimate the skb sizes, and my fix for brokenness of
        register_netdevice() error path. They may uncover other bugs so we
        will keep an eye on them. Also included are Willem's fixes for
        kmap(_atomic).
      
        Looking at the "current release" fixes, it seems we are about one rc
        behind a normal cycle. We've previously seen an uptick of "people had
        run their test suites" / "humans actually tried to use new features"
        fixes between rc2 and rc3.
      
        Summary:
      
        Current release - regressions:
      
         - fix feature enforcement to allow NETIF_F_HW_TLS_TX if IP_CSUM &&
           IPV6_CSUM
      
         - dcb: accept RTM_GETDCB messages carrying set-like DCB commands if
           user is admin for backward-compatibility
      
         - selftests/tls: fix selftests build after adding ChaCha20-Poly1305
      
        Current release - always broken:
      
         - ppp: fix refcount underflow on channel unbridge
      
         - bnxt_en: clear DEFRAG flag in firmware message when retry flashing
      
         - smc: fix out of bound access in the new netlink interface
      
        Previous releases - regressions:
      
         - fix use-after-free with UDP GRO by frags
      
         - mptcp: better msk-level shutdown
      
         - rndis_host: set proper input size for OID_GEN_PHYSICAL_MEDIUM
           request
      
         - i40e: xsk: fix potential NULL pointer dereferencing
      
        Previous releases - always broken:
      
         - skb frag: kmap_atomic fixes
      
         - avoid 32 x truesize under-estimation for tiny skbs
      
         - fix issues around register_netdevice() failures
      
         - udp: prevent reuseport_select_sock from reading uninitialized socks
      
         - dsa: unbind all switches from tree when DSA master unbinds
      
         - dsa: clear devlink port type before unregistering slave netdevs
      
         - can: isotp: isotp_getname(): fix kernel information leak
      
         - mlxsw: core: Thermal control fixes
      
         - ipv6: validate GSO SKB against MTU before finish IPv6 processing
      
         - stmmac: use __napi_schedule() for PREEMPT_RT
      
         - net: mvpp2: remove Pause and Asym_Pause support
      
        Misc:
      
         - remove from MAINTAINERS folks who had been inactive for >5yrs"
      
      * tag 'net-5.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (58 commits)
        mptcp: fix locking in mptcp_disconnect()
        net: Allow NETIF_F_HW_TLS_TX if IP_CSUM && IPV6_CSUM
        MAINTAINERS: dccp: move Gerrit Renker to CREDITS
        MAINTAINERS: ipvs: move Wensong Zhang to CREDITS
        MAINTAINERS: tls: move Aviad to CREDITS
        MAINTAINERS: ena: remove Zorik Machulsky from reviewers
        MAINTAINERS: vrf: move Shrijeet to CREDITS
        MAINTAINERS: net: move Alexey Kuznetsov to CREDITS
        MAINTAINERS: altx: move Jay Cliburn to CREDITS
        net: avoid 32 x truesize under-estimation for tiny skbs
        nt: usb: USB_RTL8153_ECM should not default to y
        net: stmmac: fix taprio configuration when base_time is in the past
        net: stmmac: fix taprio schedule configuration
        net: tip: fix a couple kernel-doc markups
        net: sit: unregister_netdevice on newlink's error path
        net: stmmac: Fixed mtu channged by cache aligned
        cxgb4/chtls: Fix tid stuck due to wrong update of qid
        i40e: fix potential NULL pointer dereferencing
        net: stmmac: use __napi_schedule() for PREEMPT_RT
        can: mcp251xfd: mcp251xfd_handle_rxif_one(): fix wrong NULL pointer check
        ...
      e8c13a6b
    • P
      mptcp: fix locking in mptcp_disconnect() · 13a9499e
      Paolo Abeni 提交于
      tcp_disconnect() expects the caller acquires the sock lock,
      but mptcp_disconnect() is not doing that. Add the missing
      required lock.
      Reported-by: NEric Dumazet <eric.dumazet@gmail.com>
      Fixes: 76e2a55d ("mptcp: better msk-level shutdown.")
      Signed-off-by: NPaolo Abeni <pabeni@redhat.com>
      Link: https://lore.kernel.org/r/f818e82b58a556feeb71dcccc8bf1c87aafc6175.1610638176.git.pabeni@redhat.comSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      13a9499e
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid · 2bbe17ae
      Linus Torvalds 提交于
      Pull HID fixes from Jiri Kosina:
      
       - memory leak fix for Wacom driver (Ping Cheng)
      
       - various trivial small fixes, cleanups and device ID additions
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid:
        HID: logitech-hidpp: Add product ID for MX Ergo in Bluetooth mode
        HID: Ignore battery for Elan touchscreen on ASUS UX550
        HID: logitech-dj: add the G602 receiver
        HID: wiimote: remove h from printk format specifier
        HID: uclogic: remove h from printk format specifier
        HID: sony: select CONFIG_CRC32
        HID: sfh: fix address space confusion
        HID: multitouch: Enable multi-input for Synaptics pointstick/touchpad device
        HID: wacom: Fix memory leakage caused by kfifo_alloc
      2bbe17ae
    • T
      net: Allow NETIF_F_HW_TLS_TX if IP_CSUM && IPV6_CSUM · 25537d71
      Tariq Toukan 提交于
      Cited patch below blocked the TLS TX device offload unless HW_CSUM
      is set. This broke devices that use IP_CSUM && IP6_CSUM.
      Here we fix it.
      
      Note that the single HW_TLS_TX feature flag indicates support for
      both IPv4/6, hence it should still be disabled in case only one of
      (IP_CSUM | IPV6_CSUM) is set.
      
      Fixes: ae0b04b2 ("net: Disable NETIF_F_HW_TLS_TX when HW_CSUM is disabled")
      Signed-off-by: NTariq Toukan <tariqt@nvidia.com>
      Reported-by: NRohit Maheshwari <rohitm@chelsio.com>
      Reviewed-by: NMaxim Mikityanskiy <maximmi@mellanox.com>
      Link: https://lore.kernel.org/r/20210114151215.7061-1-tariqt@nvidia.comSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      25537d71
    • J
      Merge branch 'maintainers-remove-inactive-folks-from-networking' · 70db767f
      Jakub Kicinski 提交于
      To make maintainers' lives easier we're trying to nudge people
      towards CCing all the relevant folks on patches, in an attempt
      to improve review rate. We have a check in patchwork which validates
      the CC list against get_maintainers.pl. It's a little awkward, however,
      to force people to CC maintainers who we haven't seen on the mailing
      list for years. This series removes from maintainers folks who didn't
      provide any tag (incl. authoring a patch) in the last 5 years.
      To ensure reasonable signal to noise ratio we only considered
      MAINTAINERS entries which had more than 100 patches fall under
      them in that time period.
      
      All this is purely a process-greasing exercise, I hope nobody
      sees this series as an affront. Most folks are moved to CREDITS,
      a couple entries are simply removed.
      
      The following inactive maintainers are kept, because they indicated
      the intention to come back in the near future:
      
       - Veaceslav Falico (bonding)
       - Christian Benvenuti (Cisco drivers)
       - Felix Fietkau (mtk-eth)
       - Mirko Linder (skge/sky2)
      
      Patches in this series contain report from a script which did
      the analysis. Big thanks to Jonathan Corbet for help and writing
      the script (although I feel like I used it differently than Jon
      may have intended ;)). The output format is thus:
      
       Subsystem $name
        Changes $reviewed / $total ($percent%)           // how many changes to the subsystem had at least one ack/review
        Last activity: $date_of_most_recent_patch
        $maintainer/reviewer1:
          Author $last_commit_authored_by_the_person $how_many_in_5yrs
          Committer $last_committed $how_many
          Tags $last_tag_like_review_signoff_etc $how_many
        $maintainer/reviewer2:
          Author $last_commit_authored_by_the_person $how_many_in_5yrs
          Committer $last_committed $how_many
          Tags $last_tag_like_review_signoff_etc $how_many
        Top reviewers: // Top 3 reviewers (who are not listed in MAINTAINERS)
          [$count_of_reviews_and_acks]: $email
        INACTIVE MAINTAINER $name   // maintainer / reviewer who has done nothing in last 5yrs
      
      v2:
       - keep Felix and Mirko
      
      Link: https://lore.kernel.org/r/20210114014912.2519931-1-kuba@kernel.orgSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      70db767f
    • J
      MAINTAINERS: dccp: move Gerrit Renker to CREDITS · 054c4610
      Jakub Kicinski 提交于
      As far as I can tell we haven't heard from Gerrit for roughly
      5 years now. DCCP patch would really benefit from some review.
      Gerrit was the last maintainer so mark this entry as orphaned.
      
      Subsystem DCCP PROTOCOL
        Changes 38 / 166 (22%)
        (No activity)
        Top reviewers:
          [6]: kstewart@linuxfoundation.org
          [6]: allison@lohutok.net
          [5]: edumazet@google.com
        INACTIVE MAINTAINER Gerrit Renker <gerrit@erg.abdn.ac.uk>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      054c4610
    • J
      MAINTAINERS: ipvs: move Wensong Zhang to CREDITS · 4f3786e0
      Jakub Kicinski 提交于
      Move Wensong Zhang to credits, we haven't heard from
      him in years.
      
      Subsystem IPVS
        Changes 83 / 226 (36%)
        Last activity: 2020-11-27
        Wensong Zhang <wensong@linux-vs.org>:
        Simon Horman <horms@verge.net.au>:
          Committer c24b75e0 2019-10-24 00:00:00 33
          Tags 7980d2ea 2020-10-12 00:00:00 76
        Julian Anastasov <ja@ssi.bg>:
          Author 7980d2ea 2020-10-12 00:00:00 26
          Tags 4bc3c8dc 2020-11-27 00:00:00 78
        Top reviewers:
          [6]: horms+renesas@verge.net.au
        INACTIVE MAINTAINER Wensong Zhang <wensong@linux-vs.org>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      4f3786e0
    • J
      MAINTAINERS: tls: move Aviad to CREDITS · 0e4ed0b6
      Jakub Kicinski 提交于
      Aviad wrote parts of the initial TLS implementation
      but hasn't been contributing to TLS since.
      
      Subsystem NETWORKING [TLS]
        Changes 123 / 308 (39%)
        Last activity: 2020-12-01
        Boris Pismenny <borisp@nvidia.com>:
          Tags 138559b9 2020-11-17 00:00:00 1
        Aviad Yehezkel <aviadye@nvidia.com>:
        John Fastabend <john.fastabend@gmail.com>:
          Author e91de6af 2020-06-01 00:00:00 22
          Tags e91de6af 2020-06-01 00:00:00 29
        Daniel Borkmann <daniel@iogearbox.net>:
          Author c16ee04c 2018-10-20 00:00:00 7
          Committer b8e202d1 2020-02-21 00:00:00 19
          Tags b8e202d1 2020-02-21 00:00:00 28
        Jakub Kicinski <kuba@kernel.org>:
          Author 5c39f26e 2020-11-27 00:00:00 89
          Committer d31c0800 2020-12-01 00:00:00 15
          Tags d31c0800 2020-12-01 00:00:00 117
        Top reviewers:
          [50]: dirk.vandermerwe@netronome.com
          [26]: simon.horman@netronome.com
          [14]: john.hurley@netronome.com
        INACTIVE MAINTAINER Aviad Yehezkel <aviadye@nvidia.com>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      0e4ed0b6
    • J
      MAINTAINERS: ena: remove Zorik Machulsky from reviewers · c41efbf2
      Jakub Kicinski 提交于
      While ENA has 3 reviewers and 2 maintainers, we mostly see review
      tags and comments from the maintainers. While we very much appreciate
      Zorik's invovment in the community let's trim the reviewer list
      down to folks we've seen tags from.
      
      Subsystem AMAZON ETHERNET DRIVERS
        Changes 13 / 269 (4%)
        Last activity: 2020-11-24
        Netanel Belgazal <netanel@amazon.com>:
          Author 24dee0c7 2019-12-10 00:00:00 43
          Tags 0e3a3f6d 2020-07-21 00:00:00 47
        Arthur Kiyanovski <akiyano@amazon.com>:
          Author 0e3a3f6d 2020-07-21 00:00:00 79
          Tags 09323b3b 2020-11-24 00:00:00 104
        Guy Tzalik <gtzalik@amazon.com>:
          Tags 713865da 2020-09-10 00:00:00 3
        Saeed Bishara <saeedb@amazon.com>:
          Tags 470793a7 2020-02-11 00:00:00 2
        Zorik Machulsky <zorik@amazon.com>:
        Top reviewers:
          [4]: sameehj@amazon.com
          [3]: snelson@pensando.io
          [3]: shayagr@amazon.com
        INACTIVE MAINTAINER Zorik Machulsky <zorik@amazon.com>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      c41efbf2
    • J
      MAINTAINERS: vrf: move Shrijeet to CREDITS · 5e62d124
      Jakub Kicinski 提交于
      Shrijeet has moved on from VRF-related work.
      
      Subsystem VRF
        Changes 30 / 120 (25%)
        Last activity: 2020-12-09
        David Ahern <dsahern@kernel.org>:
          Author 1b6687e3 2020-07-23 00:00:00 1
          Tags 9125abe7 2020-12-09 00:00:00 4
        Shrijeet Mukherjee <shrijeet@gmail.com>:
        Top reviewers:
          [13]: dsahern@gmail.com
          [4]: dsa@cumulusnetworks.com
        INACTIVE MAINTAINER Shrijeet Mukherjee <shrijeet@gmail.com>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      5e62d124
    • J
      MAINTAINERS: net: move Alexey Kuznetsov to CREDITS · 09cd3f46
      Jakub Kicinski 提交于
      Move Alexey to CREDITS.
      
      I am probably not giving him enough justice with
      the description line..
      
      Subsystem NETWORKING [IPv4/IPv6]
        Changes 1535 / 5111 (30%)
        Last activity: 2020-12-10
        "David S. Miller" <davem@davemloft.net>:
          Author b7e4ba9a 2020-12-09 00:00:00 407
          Committer e0fecb28 2020-12-10 00:00:00 3992
          Tags e0fecb28 2020-12-10 00:00:00 3978
        Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>:
        Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>:
          Tags d5d8760b 2016-06-16 00:00:00 8
        Top reviewers:
          [225]: edumazet@google.com
          [222]: dsahern@gmail.com
          [176]: ncardwell@google.com
        INACTIVE MAINTAINER Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      09cd3f46
    • J
      MAINTAINERS: altx: move Jay Cliburn to CREDITS · 93089de9
      Jakub Kicinski 提交于
      Jay was not active in recent years and does not have plans
      to return to work on ATLX drivers.
      
      Subsystem ATLX ETHERNET DRIVERS
        Changes 20 / 116 (17%)
        Last activity: 2020-02-24
        Jay Cliburn <jcliburn@gmail.com>:
        Chris Snook <chris.snook@gmail.com>:
          Tags ea973742 2020-02-24 00:00:00 1
        Top reviewers:
          [4]: andrew@lunn.ch
          [2]: kuba@kernel.org
          [2]: o.rempel@pengutronix.de
        INACTIVE MAINTAINER Jay Cliburn <jcliburn@gmail.com>
      Acked-by: NChris Snook <chris.snook@gmail.com>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      93089de9
    • E
      net: avoid 32 x truesize under-estimation for tiny skbs · 3226b158
      Eric Dumazet 提交于
      Both virtio net and napi_get_frags() allocate skbs
      with a very small skb->head
      
      While using page fragments instead of a kmalloc backed skb->head might give
      a small performance improvement in some cases, there is a huge risk of
      under estimating memory usage.
      
      For both GOOD_COPY_LEN and GRO_MAX_HEAD, we can fit at least 32 allocations
      per page (order-3 page in x86), or even 64 on PowerPC
      
      We have been tracking OOM issues on GKE hosts hitting tcp_mem limits
      but consuming far more memory for TCP buffers than instructed in tcp_mem[2]
      
      Even if we force napi_alloc_skb() to only use order-0 pages, the issue
      would still be there on arches with PAGE_SIZE >= 32768
      
      This patch makes sure that small skb head are kmalloc backed, so that
      other objects in the slab page can be reused instead of being held as long
      as skbs are sitting in socket queues.
      
      Note that we might in the future use the sk_buff napi cache,
      instead of going through a more expensive __alloc_skb()
      
      Another idea would be to use separate page sizes depending
      on the allocated length (to never have more than 4 frags per page)
      
      I would like to thank Greg Thelen for his precious help on this matter,
      analysing crash dumps is always a time consuming task.
      
      Fixes: fd11a83d ("net: Pull out core bits of __netdev_alloc_skb and add __napi_alloc_skb")
      Signed-off-by: NEric Dumazet <edumazet@google.com>
      Cc: Paolo Abeni <pabeni@redhat.com>
      Cc: Greg Thelen <gthelen@google.com>
      Reviewed-by: NAlexander Duyck <alexanderduyck@fb.com>
      Acked-by: NMichael S. Tsirkin <mst@redhat.com>
      Link: https://lore.kernel.org/r/20210113161819.1155526-1-eric.dumazet@gmail.comSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      3226b158
    • G
      nt: usb: USB_RTL8153_ECM should not default to y · 7da17624
      Geert Uytterhoeven 提交于
      In general, device drivers should not be enabled by default.
      
      Fixes: 657bc1d1 ("r8153_ecm: avoid to be prior to r8152 driver")
      Signed-off-by: NGeert Uytterhoeven <geert+renesas@glider.be>
      Reviewed-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      Link: https://lore.kernel.org/r/20210113144309.1384615-1-geert+renesas@glider.beSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      7da17624
    • Y
      net: stmmac: fix taprio configuration when base_time is in the past · fe28c53e
      Yannick Vignon 提交于
      The Synopsys TSN MAC supports Qbv base times in the past, but only up to a
      certain limit. As a result, a taprio qdisc configuration with a small
      base time (for example when treating the base time as a simple phase
      offset) is not applied by the hardware and silently ignored.
      
      This was observed on an NXP i.MX8MPlus device, but likely affects all
      TSN-variants of the MAC.
      
      Fix the issue by making sure the base time is in the future, pushing it by
      an integer amount of cycle times if needed. (a similar check is already
      done in several other taprio implementations, see for example
      drivers/net/ethernet/intel/igc/igc_tsn.c#L116 or
      drivers/net/dsa/sja1105/sja1105_ptp.h#L39).
      
      Fixes: b60189e0 ("net: stmmac: Integrate EST with TAPRIO scheduler API")
      Signed-off-by: NYannick Vignon <yannick.vignon@nxp.com>
      Link: https://lore.kernel.org/r/20210113131557.24651-2-yannick.vignon@oss.nxp.comSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      fe28c53e
    • Y
      net: stmmac: fix taprio schedule configuration · b76889ff
      Yannick Vignon 提交于
      When configuring a 802.1Qbv schedule through the tc taprio qdisc on an NXP
      i.MX8MPlus device, the effective cycle time differed from the requested one
      by N*96ns, with N number of entries in the Qbv Gate Control List. This is
      because the driver was adding a 96ns margin to each interval of the GCL,
      apparently to account for the IPG. The problem was observed on NXP
      i.MX8MPlus devices but likely affected all devices relying on the same
      configuration callback (dwmac 4.00, 4.10, 5.10 variants).
      
      Fix the issue by removing the margins, and simply setup the MAC with the
      provided cycle time value. This is the behavior expected by the user-space
      API, as altering the Qbv schedule timings would break standards conformance.
      This is also the behavior of several other Ethernet MAC implementations
      supporting taprio, including the dwxgmac variant of stmmac.
      
      Fixes: 504723af ("net: stmmac: Add basic EST support for GMAC5+")
      Signed-off-by: NYannick Vignon <yannick.vignon@nxp.com>
      Link: https://lore.kernel.org/r/20210113131557.24651-1-yannick.vignon@oss.nxp.comSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      b76889ff
    • M
      net: tip: fix a couple kernel-doc markups · 25764779
      Mauro Carvalho Chehab 提交于
      A function has a different name between their prototype
      and its kernel-doc markup:
      
      	../net/tipc/link.c:2551: warning: expecting prototype for link_reset_stats(). Prototype was for tipc_link_reset_stats() instead
      	../net/tipc/node.c:1678: warning: expecting prototype for is the general link level function for message sending(). Prototype was for tipc_node_xmit() instead
      Signed-off-by: NMauro Carvalho Chehab <mchehab+huawei@kernel.org>
      Acked-by: NJon Maloy <jmaloy@redhat.com>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      25764779
    • J
      net: sit: unregister_netdevice on newlink's error path · 47e4bb14
      Jakub Kicinski 提交于
      We need to unregister the netdevice if config failed.
      .ndo_uninit takes care of most of the heavy lifting.
      
      This was uncovered by recent commit c269a24c ("net: make
      free_netdev() more lenient with unregistering devices").
      Previously the partially-initialized device would be left
      in the system.
      
      Reported-and-tested-by: syzbot+2393580080a2da190f04@syzkaller.appspotmail.com
      Fixes: e2f1f072 ("sit: allow to configure 6rd tunnels via netlink")
      Acked-by: NNicolas Dichtel <nicolas.dichtel@6wind.com>
      Link: https://lore.kernel.org/r/20210114012947.2515313-1-kuba@kernel.orgSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      47e4bb14
  2. 14 1月, 2021 11 次提交
  3. 13 1月, 2021 11 次提交