Skip to content
Permalink
Stefan-Roesch/…
Switch branches/tags

Commits on Feb 14, 2022

  1. block: enable async buffered writes for block devices.

    This introduces the flag FMODE_BUF_WASYNC. If devices support async
    buffered writes, this flag can be set. It also enables async buffered
    writes for block devices.
    
    Signed-off-by: Stefan Roesch <shr@fb.com>
    shrfb authored and intel-lab-lkp committed Feb 14, 2022
  2. io_uring: support write throttling for async buffered writes

    This adds the process-level throttling for the block layer for async
    buffered writes to io-uring.In io_write the code now checks if the write
    needs to be throttled. If this is required, it adds the request to the
    list of pending io requests and starts a timer. After the timer expires,
    it submits the list of pending writes.
    
    - Add new list called pending_ios for delayed writes (throttled writes)
      to struct io_uring_task. The list is protected by the task_lock spin
      lock.
    - Add new timer to struct io_uring_task.
    
    Signed-off-by: Stefan Roesch <shr@fb.com>
    shrfb authored and intel-lab-lkp committed Feb 14, 2022
  3. mm: support write throttling for async buffered writes

    This change adds support for async write throttling in the function
    balance_dirty_pages(). So far if throttling was required, the code
    was waiting synchronously as long as the writes were throttled. This
    change introduces asynchronous throttling. Instead of waiting in the
    function balance_dirty_pages(), the timeout is set in the task_struct
    field bdp_pause. Once the timeout has expired, the writes are no
    longer throttled.
    
    - Add a new parameter to the balance_dirty_pages() function
      - This allows the caller to pass in the nowait flag
      - When the nowait flag is specified, the code does not wait in
        balance_dirty_pages(), but instead stores the wait expiration in the
        new task_struct field bdp_pause.
    
    - The function balance_dirty_pages_ratelimited() resets the new values
      in the task_struct, once the timeout has expired
    
    This change is required to support write throttling for the async
    buffered writes. While the writes are throttled, io_uring still can make
    progress with processing other requests.
    
    Signed-off-by: Stefan Roesch <shr@fb.com>
    shrfb authored and intel-lab-lkp committed Feb 14, 2022
  4. sched: add new fields to task_struct

    Add two new fields to the task_struct to support async
    write throttling.
    
      - One field to store how long writes are throttled: bdp_pause
      - The other field to store the number of dirtied pages:
        bdp_nr_dirtied_pause
    
    Signed-off-by: Stefan Roesch <shr@fb.com>
    shrfb authored and intel-lab-lkp committed Feb 14, 2022
  5. io_uring: Add tracepoint for short writes

    This adds the io_uring_short_write tracepoint to io_uring. A short write
    is issued if not all pages that are required for a write are in the page
    cache and the async buffered writes have to return EAGAIN.
    
    Signed-off-by: Stefan Roesch <shr@fb.com>
    shrfb authored and intel-lab-lkp committed Feb 14, 2022
  6. io_uring: add support for async buffered writes

    This enables the async buffered writes for block devices in io_uring.
    Buffered writes are enabled for blocks that are already in the page
    cache or can be acquired with noio.
    
    It is possible that a write request cannot be completely fullfilled
    (short write). In that case the request is punted and sent to the io
    workers to be completed. Before submitting the request to the io
    workers, the request is updated with how much has already been written.
    
    Signed-off-by: Stefan Roesch <shr@fb.com>
    shrfb authored and intel-lab-lkp committed Feb 14, 2022
  7. fs: add support for async buffered writes

    This adds support for the AOP_FLAGS_BUF_WASYNC flag to the fs layer. If
    a page that is required for writing is not in the page cache, it returns
    EAGAIN instead of ENOMEM.
    
    Signed-off-by: Stefan Roesch <shr@fb.com>
    shrfb authored and intel-lab-lkp committed Feb 14, 2022
  8. fs: Add aop_flags parameter to create_page_buffers()

    This adds the aop_flags parameter to the create_page_buffers function.
    When AOP_FLAGS_NOWAIT parameter is set, the atomic allocation flag is
    set. The AOP_FLAGS_NOWAIT flag is set, when async buffered writes are
    enabled.
    
    Signed-off-by: Stefan Roesch <shr@fb.com>
    shrfb authored and intel-lab-lkp committed Feb 14, 2022
  9. fs: split off __create_empty_buffers function

    This splits off the function __create_empty_buffers() from the function
    create_empty_buffers. The __create_empty_buffers has an additional gfp
    parameter. This allows the caller to specify the allocation properties.
    
    Signed-off-by: Stefan Roesch <shr@fb.com>
    shrfb authored and intel-lab-lkp committed Feb 14, 2022
  10. fs: split off __alloc_page_buffers function

    This splits off the __alloc_page_buffers() function from the
    alloc_page_buffers_function(). In addition it adds a gfp_t parameter, so
    the caller can specify the allocation flags.
    
    Signed-off-by: Stefan Roesch <shr@fb.com>
    shrfb authored and intel-lab-lkp committed Feb 14, 2022
  11. mm: Add support for async buffered writes

    This adds support for async buffered writes in the mm layer. When the
    AOP_FLAGS_BUF_WASYNC flag is set, if the page is not already loaded,
    the page gets created without blocking on the allocation.
    
    Signed-off-by: Stefan Roesch <shr@fb.com>
    shrfb authored and intel-lab-lkp committed Feb 14, 2022
  12. mm: add noio support in filemap_get_pages

    This adds noio support for async buffered writes in filemap_get_pages.
    The idea is to handle the failure gracefully and return -EAGAIN if we
    can't get the memory quickly.
    
    Signed-off-by: Stefan Roesch <shr@fb.com>
    shrfb authored and intel-lab-lkp committed Feb 14, 2022
  13. mm: Introduce do_generic_perform_write

    This splits off the do generic_perform_write() function, so an
    additional flags parameter can be specified. It uses the new flag
    parameter to support async buffered writes.
    
    Signed-off-by: Stefan Roesch <shr@fb.com>
    shrfb authored and intel-lab-lkp committed Feb 14, 2022
  14. fs: Add flags parameter to __block_write_begin_int

    This adds a flags parameter to the __begin_write_begin_int() function.
    This allows to pass flags down the stack.
    
    Signed-off-by: Stefan Roesch <shr@fb.com>
    shrfb authored and intel-lab-lkp committed Feb 14, 2022

Commits on Feb 11, 2022

  1. Merge tag 'net-5.17-rc4' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/netdev/net
    
    Pull networking fixes from Jakub Kicinski:
     "Including fixes from netfilter and can.
    
    Current release - new code bugs:
    
       - sparx5: fix get_stat64 out-of-bound access and crash
    
       - smc: fix netdev ref tracker misuse
    
      Previous releases - regressions:
    
       - eth: ixgbevf: require large buffers for build_skb on 82599VF, avoid
         overflows
    
       - eth: ocelot: fix all IP traffic getting trapped to CPU with PTP
         over IP
    
       - bonding: fix rare link activation misses in 802.3ad mode
    
      Previous releases - always broken:
    
       - tcp: fix tcp sock mem accounting in zero-copy corner cases
    
       - remove the cached dst when uncloning an skb dst and its metadata,
         since we only have one ref it'd lead to an UaF
    
       - netfilter:
          - conntrack: don't refresh sctp entries in closed state
          - conntrack: re-init state for retransmitted syn-ack, avoid
            connection establishment getting stuck with strange stacks
          - ctnetlink: disable helper autoassign, avoid it getting lost
          - nft_payload: don't allow transport header access for fragments
    
       - dsa: fix use of devres for mdio throughout drivers
    
       - eth: amd-xgbe: disable interrupts during pci removal
    
       - eth: dpaa2-eth: unregister netdev before disconnecting the PHY
    
       - eth: ice: fix IPIP and SIT TSO offload"
    
    * tag 'net-5.17-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (53 commits)
      net: dsa: mv88e6xxx: fix use-after-free in mv88e6xxx_mdios_unregister
      net: mscc: ocelot: fix mutex lock error during ethtool stats read
      ice: Avoid RTNL lock when re-creating auxiliary device
      ice: Fix KASAN error in LAG NETDEV_UNREGISTER handler
      ice: fix IPIP and SIT TSO offload
      ice: fix an error code in ice_cfg_phy_fec()
      net: mpls: Fix GCC 12 warning
      dpaa2-eth: unregister the netdev before disconnecting from the PHY
      skbuff: cleanup double word in comment
      net: macb: Align the dma and coherent dma masks
      mptcp: netlink: process IPv6 addrs in creating listening sockets
      selftests: mptcp: add missing join check
      net: usb: qmi_wwan: Add support for Dell DW5829e
      vlan: move dev_put into vlan_dev_uninit
      vlan: introduce vlan_dev_free_egress_priority
      ax25: fix UAF bugs of net_device caused by rebinding operation
      net: dsa: fix panic when DSA master device unbinds on shutdown
      net: amd-xgbe: disable interrupts during pci removal
      tipc: rate limit warning for received illegal binding update
      net: mdio: aspeed: Add missing MODULE_DEVICE_TABLE
      ...
    torvalds committed Feb 11, 2022

Commits on Feb 10, 2022

  1. Merge tag 'linux-kselftest-fixes-5.17-rc4' of git://git.kernel.org/pu…

    …b/scm/linux/kernel/git/shuah/linux-kselftest
    
    Pull Kselftest fixes from Shuah Khan:
     "Build and run-time fixes to pidfd, clone3, and ir tests"
    
    * tag 'linux-kselftest-fixes-5.17-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
      selftests/ir: fix build with ancient kernel headers
      selftests: fixup build warnings in pidfd / clone3 tests
      pidfd: fix test failure due to stack overflow on some arches
    torvalds committed Feb 10, 2022
  2. Merge tag 'linux-kselftest-kunit-fixes-5.17-rc4' of git://git.kernel.…

    …org/pub/scm/linux/kernel/git/shuah/linux-kselftest
    
    Pull KUnit fixes from Shuah Khan:
     "Fixes to the test and usage documentation"
    
    * tag 'linux-kselftest-kunit-fixes-5.17-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
      Documentation: KUnit: Fix usage bug
      kunit: fix missing f in f-string in run_checks.py
    torvalds committed Feb 10, 2022
  3. net: dsa: mv88e6xxx: fix use-after-free in mv88e6xxx_mdios_unregister

    Since struct mv88e6xxx_mdio_bus *mdio_bus is the bus->priv of something
    allocated with mdiobus_alloc_size(), this means that mdiobus_free(bus)
    will free the memory backing the mdio_bus as well. Therefore, the
    mdio_bus->list element is freed memory, but we continue to iterate
    through the list of MDIO buses using that list element.
    
    To fix this, use the proper list iterator that handles element deletion
    by keeping a copy of the list element next pointer.
    
    Fixes: f53a2ce ("net: dsa: mv88e6xxx: don't use devres for mdiobus")
    Reported-by: Rafael Richter <rafael.richter@gin.de>
    Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
    Link: https://lore.kernel.org/r/20220210174017.3271099-1-vladimir.oltean@nxp.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    vladimiroltean authored and Jakub Kicinski committed Feb 10, 2022
  4. Merge branch '100GbE' of git://git.kernel.org/pub/scm/linux/kernel/gi…

    …t/tnguy/net-queue
    
    Tony Nguyen says:
    
    ====================
    Intel Wired LAN Driver Updates 2022-02-10
    
    Dan Carpenter propagates an error in FEC configuration.
    
    Jesse fixes TSO offloads of IPIP and SIT frames.
    
    Dave adds a dedicated LAG unregister function to resolve a KASAN error
    and moves auxiliary device re-creation after LAG removal to the service
    task to avoid issues with RTNL lock.
    
    * '100GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/net-queue:
      ice: Avoid RTNL lock when re-creating auxiliary device
      ice: Fix KASAN error in LAG NETDEV_UNREGISTER handler
      ice: fix IPIP and SIT TSO offload
      ice: fix an error code in ice_cfg_phy_fec()
    ====================
    
    Link: https://lore.kernel.org/r/20220210170515.2609656-1-anthony.l.nguyen@intel.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Jakub Kicinski committed Feb 10, 2022
  5. net: mscc: ocelot: fix mutex lock error during ethtool stats read

    An ongoing workqueue populates the stats buffer. At the same time, a user
    might query the statistics. While writing to the buffer is mutex-locked,
    reading from the buffer wasn't. This could lead to buggy reads by ethtool.
    
    This patch fixes the former blamed commit, but the bug was introduced in
    the latter.
    
    Signed-off-by: Colin Foster <colin.foster@in-advantage.com>
    Fixes: 1e1caa9 ("ocelot: Clean up stats update deferred work")
    Fixes: a556c76 ("net: mscc: Add initial Ocelot switch support")
    Reported-by: Vladimir Oltean <vladimir.oltean@nxp.com>
    Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
    Link: https://lore.kernel.org/all/20220210150451.416845-2-colin.foster@in-advantage.com/
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    colin-foster-in-advantage authored and Jakub Kicinski committed Feb 10, 2022
  6. ice: Avoid RTNL lock when re-creating auxiliary device

    If a call to re-create the auxiliary device happens in a context that has
    already taken the RTNL lock, then the call flow that recreates auxiliary
    device can hang if there is another attempt to claim the RTNL lock by the
    auxiliary driver.
    
    To avoid this, any call to re-create auxiliary devices that comes from
    an source that is holding the RTNL lock (e.g. netdev notifier when
    interface exits a bond) should execute in a separate thread.  To
    accomplish this, add a flag to the PF that will be evaluated in the
    service task and dealt with there.
    
    Fixes: f9f5301 ("ice: Register auxiliary device to provide RDMA")
    Signed-off-by: Dave Ertman <david.m.ertman@intel.com>
    Reviewed-by: Jonathan Toppins <jtoppins@redhat.com>
    Tested-by: Gurucharan G <gurucharanx.g@intel.com>
    Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
    dmertman authored and anguy11 committed Feb 10, 2022
  7. ice: Fix KASAN error in LAG NETDEV_UNREGISTER handler

    Currently, the same handler is called for both a NETDEV_BONDING_INFO
    LAG unlink notification as for a NETDEV_UNREGISTER call.  This is
    causing a problem though, since the netdev_notifier_info passed has
    a different structure depending on which event is passed.  The problem
    manifests as a call trace from a BUG: KASAN stack-out-of-bounds error.
    
    Fix this by creating a handler specific to NETDEV_UNREGISTER that only
    is passed valid elements in the netdev_notifier_info struct for the
    NETDEV_UNREGISTER event.
    
    Also included is the removal of an unbalanced dev_put on the peer_netdev
    and related braces.
    
    Fixes: 6a8b357 ("ice: Respond to a NETDEV_UNREGISTER event for LAG")
    Signed-off-by: Dave Ertman <david.m.ertman@intel.com>
    Acked-by: Jonathan Toppins <jtoppins@redhat.com>
    Tested-by: Sunitha Mekala <sunithax.d.mekala@intel.com>
    Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
    dmertman authored and anguy11 committed Feb 10, 2022
  8. ice: fix IPIP and SIT TSO offload

    The driver was avoiding offload for IPIP (at least) frames due to
    parsing the inner header offsets incorrectly when trying to check
    lengths.
    
    This length check works for VXLAN frames but fails on IPIP frames
    because skb_transport_offset points to the inner header in IPIP
    frames, which meant the subtraction of transport_header from
    inner_network_header returns a negative value (-20).
    
    With the code before this patch, everything continued to work, but GSO
    was being used to segment, causing throughputs of 1.5Gb/s per thread.
    After this patch, throughput is more like 10Gb/s per thread for IPIP
    traffic.
    
    Fixes: e94d447 ("ice: Implement filter sync, NDO operations and bump version")
    Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
    Reviewed-by: Paul Menzel <pmenzel@molgen.mpg.de>
    Tested-by: Gurucharan G <gurucharanx.g@intel.com>
    Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
    jbrandeb authored and anguy11 committed Feb 10, 2022
  9. ice: fix an error code in ice_cfg_phy_fec()

    Propagate the error code from ice_get_link_default_override() instead
    of returning success.
    
    Fixes: ea78ce4 ("ice: add link lenient and default override support")
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Tested-by: Gurucharan G <gurucharanx.g@intel.com>
    Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
    error27 authored and anguy11 committed Feb 10, 2022
  10. net: mpls: Fix GCC 12 warning

    When building with automatic stack variable initialization, GCC 12
    complains about variables defined outside of switch case statements.
    Move the variable outside the switch, which silences the warning:
    
    ./net/mpls/af_mpls.c:1624:21: error: statement will never be executed [-Werror=switch-unreachable]
      1624 |                 int err;
           |                     ^~~
    
    Signed-off-by: Victor Erminpour <victor.erminpour@oracle.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    victor-erminpour authored and davem330 committed Feb 10, 2022
  11. dpaa2-eth: unregister the netdev before disconnecting from the PHY

    The netdev should be unregistered before we are disconnecting from the
    MAC/PHY so that the dev_close callback is called and the PHY and the
    phylink workqueues are actually stopped before we are disconnecting and
    destroying the phylink instance.
    
    Fixes: 7194792 ("dpaa2-eth: add MAC/PHY support through phylink")
    Signed-off-by: Robert-Ionut Alexa <robert-ionut.alexa@nxp.com>
    Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Robert-Ionut Alexa authored and davem330 committed Feb 10, 2022
  12. skbuff: cleanup double word in comment

    Remove the second 'to'.
    
    Signed-off-by: Tom Rix <trix@redhat.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    trixirt authored and davem330 committed Feb 10, 2022
  13. net: macb: Align the dma and coherent dma masks

    Single page and coherent memory blocks can use different DMA masks
    when the macb accesses physical memory directly. The kernel is clever
    enough to allocate pages that fit into the requested address width.
    
    When using the ARM SMMU, the DMA mask must be the same for single
    pages and big coherent memory blocks. Otherwise the translation
    tables turn into one big mess.
    
      [   74.959909] macb ff0e0000.ethernet eth0: DMA bus error: HRESP not OK
      [   74.959989] arm-smmu fd800000.smmu: Unhandled context fault: fsr=0x402, iova=0x3165687460, fsynr=0x20001, cbfrsynra=0x877, cb=1
      [   75.173939] macb ff0e0000.ethernet eth0: DMA bus error: HRESP not OK
      [   75.173955] arm-smmu fd800000.smmu: Unhandled context fault: fsr=0x402, iova=0x3165687460, fsynr=0x20001, cbfrsynra=0x877, cb=1
    
    Since using the same DMA mask does not hurt direct 1:1 physical
    memory mappings, this commit always aligns DMA and coherent masks.
    
    Signed-off-by: Marc St-Amand <mstamand@ciena.com>
    Signed-off-by: Harini Katakam <harini.katakam@xilinx.com>
    Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com>
    Tested-by: Conor Dooley <conor.dooley@microchip.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Marc St-Amand authored and davem330 committed Feb 10, 2022
  14. Merge tag 'mips-fixes-5.17_3' of git://git.kernel.org/pub/scm/linux/k…

    …ernel/git/mips/linux
    
    Pull MIPS fix from Thomas Bogendoerfer:
     "Device tree fix for Ingenic CI20"
    
    * tag 'mips-fixes-5.17_3' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux:
      MIPS: DTS: CI20: fix how ddc power is enabled
    torvalds committed Feb 10, 2022
  15. Merge tag 'audit-pr-20220209' of git://git.kernel.org/pub/scm/linux/k…

    …ernel/git/pcmoore/audit
    
    Pull audit fix from Paul Moore:
     "Another audit fix, this time a single rather small but important fix
      for an oops/page-fault caused by improperly accessing userspace
      memory"
    
    * tag 'audit-pr-20220209' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit:
      audit: don't deref the syscall args when checking the openat2 open_how::flags
    torvalds committed Feb 10, 2022
  16. tipc: improve size validations for received domain records

    The function tipc_mon_rcv() allows a node to receive and process
    domain_record structs from peer nodes to track their views of the
    network topology.
    
    This patch verifies that the number of members in a received domain
    record does not exceed the limit defined by MAX_MON_DOMAIN, something
    that may otherwise lead to a stack overflow.
    
    tipc_mon_rcv() is called from the function tipc_link_proto_rcv(), where
    we are reading a 32 bit message data length field into a uint16.  To
    avert any risk of bit overflow, we add an extra sanity check for this in
    that function.  We cannot see that happen with the current code, but
    future designers being unaware of this risk, may introduce it by
    allowing delivery of very large (> 64k) sk buffers from the bearer
    layer.  This potential problem was identified by Eric Dumazet.
    
    This fixes CVE-2022-0435
    
    Reported-by: Samuel Page <samuel.page@appgate.com>
    Reported-by: Eric Dumazet <edumazet@google.com>
    Fixes: 35c55c9 ("tipc: add neighbor monitoring framework")
    Signed-off-by: Jon Maloy <jmaloy@redhat.com>
    Reviewed-by: Xin Long <lucien.xin@gmail.com>
    Reviewed-by: Samuel Page <samuel.page@appgate.com>
    Reviewed-by: Eric Dumazet <edumazet@google.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    lmcjoma authored and torvalds committed Feb 10, 2022
  17. Merge branch 'mptcp-fixes-for-5-17'

    Mat Martineau says:
    
    ====================
    mptcp: Fixes for 5.17
    
    Patch 1 fixes a MPTCP selftest bug that combined the results of two
    separate tests in the test output.
    
    Patch 2 fixes a problem where advertised IPv6 addresses were not actually
    available for incoming MP_JOIN requests.
    ====================
    
    Link: https://lore.kernel.org/r/20220210012508.226880-1-mathew.j.martineau@linux.intel.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Jakub Kicinski committed Feb 10, 2022
  18. mptcp: netlink: process IPv6 addrs in creating listening sockets

    This change updates mptcp_pm_nl_create_listen_socket() to create
    listening sockets bound to IPv6 addresses (where IPv6 is supported).
    
    Fixes: 1729cf1 ("mptcp: create the listening socket for new port")
    Acked-by: Geliang Tang <geliang.tang@suse.com>
    Signed-off-by: Kishen Maloor <kishen.maloor@intel.com>
    Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    kmaloor authored and Jakub Kicinski committed Feb 10, 2022
  19. selftests: mptcp: add missing join check

    This function also writes the name of the test with its ID, making clear
    a new test has been executed.
    
    Without that, the ADD_ADDR results from this test was appended at the
    end of the previous test causing confusions. Especially when the second
    test was failing, we had:
    
      17 signal invalid addresses     syn[ ok ] - synack[ ok ] - ack[ ok ]
                                      add[ ok ] - echo  [ ok ]
                                      add[fail] got 2 ADD_ADDR[s] expected 3
    
    In fact, this 17th test was OK but not the 18th one.
    
    Now we have:
    
      17 signal invalid addresses     syn[ ok ] - synack[ ok ] - ack[ ok ]
                                      add[ ok ] - echo  [ ok ]
      18 signal addresses race test   syn[fail] got 2 JOIN[s] syn expected 3
       - synack[fail] got 2 JOIN[s] synack expected
       - ack[fail] got 2 JOIN[s] ack expected 3
                                      add[fail] got 2 ADD_ADDR[s] expected 3
    
    Fixes: 33c563a ("selftests: mptcp: add_addr and echo race test")
    Reported-by: Paolo Abeni <pabeni@redhat.com>
    Signed-off-by: Matthieu Baerts <matthieu.baerts@tessares.net>
    Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    matttbe authored and Jakub Kicinski committed Feb 10, 2022
  20. net: usb: qmi_wwan: Add support for Dell DW5829e

    Dell DW5829e same as DW5821e except the CAT level.
    DW5821e supports CAT16 but DW5829e supports CAT9.
    Also, DW5829e includes normal and eSIM type.
    Please see below test evidence:
    
    T:  Bus=04 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#=  5 Spd=5000 MxCh= 0
    D:  Ver= 3.10 Cls=ef(misc ) Sub=02 Prot=01 MxPS= 9 #Cfgs=  1
    P:  Vendor=413c ProdID=81e6 Rev=03.18
    S:  Manufacturer=Dell Inc.
    S:  Product=DW5829e Snapdragon X20 LTE
    S:  SerialNumber=0123456789ABCDEF
    C:  #Ifs= 6 Cfg#= 1 Atr=a0 MxPwr=896mA
    I:  If#=0x0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=qmi_wwan
    I:  If#=0x1 Alt= 0 #EPs= 1 Cls=03(HID  ) Sub=00 Prot=00 Driver=usbhid
    I:  If#=0x2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
    I:  If#=0x3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
    I:  If#=0x4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
    I:  If#=0x5 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option
    
    T:  Bus=04 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#=  7 Spd=5000 MxCh= 0
    D:  Ver= 3.10 Cls=ef(misc ) Sub=02 Prot=01 MxPS= 9 #Cfgs=  1
    P:  Vendor=413c ProdID=81e4 Rev=03.18
    S:  Manufacturer=Dell Inc.
    S:  Product=DW5829e-eSIM Snapdragon X20 LTE
    S:  SerialNumber=0123456789ABCDEF
    C:  #Ifs= 6 Cfg#= 1 Atr=a0 MxPwr=896mA
    I:  If#=0x0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=qmi_wwan
    I:  If#=0x1 Alt= 0 #EPs= 1 Cls=03(HID  ) Sub=00 Prot=00 Driver=usbhid
    I:  If#=0x2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
    I:  If#=0x3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
    I:  If#=0x4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
    I:  If#=0x5 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option
    
    Signed-off-by: Slark Xiao <slark_xiao@163.com>
    Acked-by: Bjørn Mork <bjorn@mork.no>
    Link: https://lore.kernel.org/r/20220209024717.8564-1-slark_xiao@163.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    SlarkXiao authored and Jakub Kicinski committed Feb 10, 2022
Older