Skip to content
Permalink
Meng-Li/net-st…
Switch branches/tags

Commits on Nov 12, 2021

  1. net: stmmac: socfpga: add runtime suspend/resume callback for stratix…

    …10 platform
    
    According to upstream commit 5ec5582("net: stmmac:
    add clocks management for gmac driver"), it improve clocks
    management for stmmac driver. So, it is necessary to implement
    the runtime callback in dwmac-socfpga driver because it doesn't
    use the common stmmac_pltfr_pm_ops instance. Otherwise, clocks
    are not disabled when system enters suspend status.
    
    Fixes: 5ec5582 ("net: stmmac: add clocks management for gmac driver")
    Cc: stable@vger.kernel.org
    Signed-off-by: Meng Li <Meng.Li@windriver.com>
    limeng-linux authored and intel-lab-lkp committed Nov 12, 2021

Commits on Nov 11, 2021

  1. Merge tag 'pci-v5.16-fixes-1' of git://git.kernel.org/pub/scm/linux/k…

    …ernel/git/helgaas/pci
    
    Pull PCI fixes from Bjorn Helgaas:
     "Revert conversion to struct device.driver instead of struct
      pci_dev.driver.
    
      The device.driver is set earlier, and using it caused the PCI core to
      call driver PM entry points before .probe() and after .remove(), when
      the driver isn't prepared.
    
      This caused NULL pointer dereferences in i2c_designware_pci and
      probably other driver issues"
    
    * tag 'pci-v5.16-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
      Revert "PCI: Use to_pci_driver() instead of pci_dev->driver"
      Revert "PCI: Remove struct pci_dev->driver"
    torvalds committed Nov 11, 2021
  2. Merge tag 'kcsan.2021.11.11a' of git://git.kernel.org/pub/scm/linux/k…

    …ernel/git/paulmck/linux-rcu
    
    Pull KCSAN updates from Paul McKenney:
     "This contains initialization fixups, testing improvements, addition of
      instruction pointer to data-race reports, and scoped data-race checks"
    
    * tag 'kcsan.2021.11.11a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu:
      kcsan: selftest: Cleanup and add missing __init
      kcsan: Move ctx to start of argument list
      kcsan: Support reporting scoped read-write access type
      kcsan: Start stack trace with explicit location if provided
      kcsan: Save instruction pointer for scoped accesses
      kcsan: Add ability to pass instruction pointer of access to reporting
      kcsan: test: Fix flaky test case
      kcsan: test: Use kunit_skip() to skip tests
      kcsan: test: Defer kcsan_test_init() after kunit initialization
    torvalds committed Nov 11, 2021
  3. Merge tag 'apparmor-pr-2021-11-10' of git://git.kernel.org/pub/scm/li…

    …nux/kernel/git/jj/linux-apparmor
    
    Pull apparmor updates from John Johansen:
     "Features
       - use per file locks for transactional queries
       - update policy management capability checks to work with LSM stacking
    
      Bug Fixes:
       - check/put label on apparmor_sk_clone_security()
       - fix error check on update of label hname
       - fix introspection of of task mode for unconfined tasks
    
      Cleanups:
       - avoid -Wempty-body warning
       - remove duplicated 'Returns:' comments
       - fix doc warning
       - remove unneeded one-line hook wrappers
       - use struct_size() helper in kzalloc()
       - fix zero-length compiler warning in AA_BUG()
       - file.h: delete duplicated word
       - delete repeated words in comments
       - remove repeated declaration"
    
    * tag 'apparmor-pr-2021-11-10' of git://git.kernel.org/pub/scm/linux/kernel/git/jj/linux-apparmor:
      apparmor: remove duplicated 'Returns:' comments
      apparmor: remove unneeded one-line hook wrappers
      apparmor: Use struct_size() helper in kzalloc()
      apparmor: fix zero-length compiler warning in AA_BUG()
      apparmor: use per file locks for transactional queries
      apparmor: fix doc warning
      apparmor: Remove the repeated declaration
      apparmor: avoid -Wempty-body warning
      apparmor: Fix internal policy capable check for policy management
      apparmor: fix error check
      security: apparmor: delete repeated words in comments
      security: apparmor: file.h: delete duplicated word
      apparmor: switch to apparmor to internal capable check for policy management
      apparmor: update policy capable checks to use a label
      apparmor: fix introspection of of task mode for unconfined tasks
      apparmor: check/put label on apparmor_sk_clone_security()
    torvalds committed Nov 11, 2021
  4. Merge branch 'akpm' (patches from Andrew)

    Merge more updates from Andrew Morton:
     "The post-linux-next material.
    
      7 patches.
    
      Subsystems affected by this patch series (all mm): debug,
      slab-generic, migration, memcg, and kasan"
    
    * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
      kasan: add kasan mode messages when kasan init
      mm: unexport {,un}lock_page_memcg
      mm: unexport folio_memcg_{,un}lock
      mm/migrate.c: remove MIGRATE_PFN_LOCKED
      mm: migrate: simplify the file-backed pages validation when migrating its mapping
      mm: allow only SLUB on PREEMPT_RT
      mm/page_owner.c: modify the type of argument "order" in some functions
    torvalds committed Nov 11, 2021
  5. Merge tag 'm68knommu-for-v5.16' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/gerg/m68knommu
    
    Pull m68knommu updates from Greg Ungerer:
     "Only two changes.
    
      One removes the now unused CONFIG_MCPU32 symbol. The other sets a
      default for the CONFIG_MEMORY_RESERVE config symbol (this aids
      scripting and other automation) so you don't interactively get asked
      for a value at configure time.
    
      Summary:
    
       - remove unused CONFIG_MCPU32 symbol
    
       - default CONFIG_MEMORY_RESERVE value (for scripting)"
    
    * tag 'm68knommu-for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
      m68knommu: Remove MCPU32 config symbol
      m68k: set a default value for MEMORY_RESERVE
    torvalds committed Nov 11, 2021
  6. Revert "PCI: Use to_pci_driver() instead of pci_dev->driver"

    This reverts commit 2a4d940.
    
    Robert reported a NULL pointer dereference caused by the PCI core
    (local_pci_probe()) calling the i2c_designware_pci driver's
    .runtime_resume() method before the .probe() method.  i2c_dw_pci_resume()
    depends on initialization done by i2c_dw_pci_probe().
    
    Prior to 2a4d940 ("PCI: Use to_pci_driver() instead of
    pci_dev->driver"), pci_pm_runtime_resume() avoided calling the
    .runtime_resume() method because pci_dev->driver had not been set yet.
    
    2a4d940 and b5f9c64 ("PCI: Remove struct pci_dev->driver"),
    removed pci_dev->driver, replacing it by device->driver, which *has* been
    set by this time, so pci_pm_runtime_resume() called the .runtime_resume()
    method when it previously had not.
    
    Fixes: 2a4d940 ("PCI: Use to_pci_driver() instead of pci_dev->driver")
    Link: https://lore.kernel.org/linux-i2c/CAP145pgdrdiMAT7=-iB1DMgA7t_bMqTcJL4N0=6u8kNY3EU0dw@mail.gmail.com/
    Reported-by: Robert Święcki <robert@swiecki.net>
    Tested-by: Robert Święcki <robert@swiecki.net>
    Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
    bjorn-helgaas committed Nov 11, 2021
  7. Revert "PCI: Remove struct pci_dev->driver"

    This reverts commit b5f9c64.
    
    Revert b5f9c64 ("PCI: Remove struct pci_dev->driver"), which is needed
    to revert 2a4d940 ("PCI: Use to_pci_driver() instead of
    pci_dev->driver").
    
    2a4d940 caused a NULL pointer dereference reported by Robert Święcki.
    Details in the revert of that commit.
    
    Fixes: 2a4d940 ("PCI: Use to_pci_driver() instead of pci_dev->driver")
    Link: https://lore.kernel.org/linux-i2c/CAP145pgdrdiMAT7=-iB1DMgA7t_bMqTcJL4N0=6u8kNY3EU0dw@mail.gmail.com/
    Reported-by: Robert Święcki <robert@swiecki.net>
    Tested-by: Robert Święcki <robert@swiecki.net>
    Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
    bjorn-helgaas committed Nov 11, 2021
  8. Merge tag 'trace-v5.16-3' of git://git.kernel.org/pub/scm/linux/kerne…

    …l/git/rostedt/linux-trace
    
    Pull tracing fixes from Steven Rostedt:
     "Two locking fixes:
    
       - Add mutex protection to ring_buffer_reset()
    
       - Fix deadlock in modify_ftrace_direct_multi()"
    
    * tag 'trace-v5.16-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
      ftrace/direct: Fix lockup in modify_ftrace_direct_multi
      ring-buffer: Protect ring_buffer_reset() from reentrancy
    torvalds committed Nov 11, 2021
  9. Merge tag 'net-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/netdev/net
    
    Pull networking fixes from Jakub Kicinski:
     "Including fixes from bpf, can and netfilter.
    
      Current release - regressions:
    
       - bpf: do not reject when the stack read size is different from the
         tracked scalar size
    
       - net: fix premature exit from NAPI state polling in napi_disable()
    
       - riscv, bpf: fix RV32 broken build, and silence RV64 warning
    
      Current release - new code bugs:
    
       - net: fix possible NULL deref in sock_reserve_memory
    
       - amt: fix error return code in amt_init(); fix stopping the
         workqueue
    
       - ax88796c: use the correct ioctl callback
    
      Previous releases - always broken:
    
       - bpf: stop caching subprog index in the bpf_pseudo_func insn
    
       - security: fixups for the security hooks in sctp
    
       - nfc: add necessary privilege flags in netlink layer, limit
         operations to admin only
    
       - vsock: prevent unnecessary refcnt inc for non-blocking connect
    
       - net/smc: fix sk_refcnt underflow on link down and fallback
    
       - nfnetlink_queue: fix OOB when mac header was cleared
    
       - can: j1939: ignore invalid messages per standard
    
       - bpf, sockmap:
          - fix race in ingress receive verdict with redirect to self
          - fix incorrect sk_skb data_end access when src_reg = dst_reg
          - strparser, and tls are reusing qdisc_skb_cb and colliding
    
       - ethtool: fix ethtool msg len calculation for pause stats
    
       - vlan: fix a UAF in vlan_dev_real_dev() when ref-holder tries to
         access an unregistering real_dev
    
       - udp6: make encap_rcv() bump the v6 not v4 stats
    
       - drv: prestera: add explicit padding to fix m68k build
    
       - drv: felix: fix broken VLAN-tagged PTP under VLAN-aware bridge
    
       - drv: mvpp2: fix wrong SerDes reconfiguration order
    
      Misc & small latecomers:
    
       - ipvs: auto-load ipvs on genl access
    
       - mctp: sanity check the struct sockaddr_mctp padding fields
    
       - libfs: support RENAME_EXCHANGE in simple_rename()
    
       - avoid double accounting for pure zerocopy skbs"
    
    * tag 'net-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (123 commits)
      selftests/net: udpgso_bench_rx: fix port argument
      net: wwan: iosm: fix compilation warning
      cxgb4: fix eeprom len when diagnostics not implemented
      net: fix premature exit from NAPI state polling in napi_disable()
      net/smc: fix sk_refcnt underflow on linkdown and fallback
      net/mlx5: Lag, fix a potential Oops with mlx5_lag_create_definer()
      gve: fix unmatched u64_stats_update_end()
      net: ethernet: lantiq_etop: Fix compilation error
      selftests: forwarding: Fix packet matching in mirroring selftests
      vsock: prevent unnecessary refcnt inc for nonblocking connect
      net: marvell: mvpp2: Fix wrong SerDes reconfiguration order
      net: ethernet: ti: cpsw_ale: Fix access to un-initialized memory
      net: stmmac: allow a tc-taprio base-time of zero
      selftests: net: test_vxlan_under_vrf: fix HV connectivity test
      net: hns3: allow configure ETS bandwidth of all TCs
      net: hns3: remove check VF uc mac exist when set by PF
      net: hns3: fix some mac statistics is always 0 in device version V2
      net: hns3: fix kernel crash when unload VF while it is being reset
      net: hns3: sync rx ring head in echo common pull
      net: hns3: fix pfc packet number incorrect after querying pfc parameters
      ...
    torvalds committed Nov 11, 2021
  10. Merge tag 'char-misc-5.16-rc1' of git://git.kernel.org/pub/scm/linux/…

    …kernel/git/gregkh/char-misc
    
    Pull char/misc fix from Greg KH:
     "Here is a single fix for 5.16-rc1 to resolve a build problem that came
      in through the coresight tree (and as such came in through the
      char/misc tree merge in the 5.16-rc1 merge window).
    
      It resolves a build problem with 'allmodconfig' on arm64 and is acked
      by the proper subsystem maintainers. It has been in linux-next all
      week with no reported problems"
    
    * tag 'char-misc-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
      arm64: cpufeature: Export this_cpu_has_cap helper
    torvalds committed Nov 11, 2021
  11. Merge tag 'usb-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/gregkh/usb
    
    Pull USB fixes from Greg KH:
     "Here are some small reverts and fixes for USB drivers for issues that
      came up during the 5.16-rc1 merge window.
    
      These include:
    
       - two reverts of xhci and USB core patches that are causing problems
         in many systems.
    
       - xhci 3.1 enumeration delay fix for systems that were having
         problems.
    
      All three of these have been in linux-next all week with no reported
      issues"
    
    * tag 'usb-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
      xhci: Fix USB 3.1 enumeration issues by increasing roothub power-on-good delay
      Revert "usb: core: hcd: Add support for deferring roothub registration"
      Revert "xhci: Set HCD flag to defer primary roothub registration"
    torvalds committed Nov 11, 2021
  12. kasan: add kasan mode messages when kasan init

    There are multiple kasan modes.  It makes sense that we add some
    messages to know which kasan mode is active when booting up [1].
    
    Link: https://bugzilla.kernel.org/show_bug.cgi?id=212195 [1]
    Link: https://lkml.kernel.org/r/20211020094850.4113-1-Kuan-Ying.Lee@mediatek.com
    Signed-off-by: Kuan-Ying Lee <Kuan-Ying.Lee@mediatek.com>
    Reviewed-by: Marco Elver <elver@google.com>
    Reviewed-by: David Hildenbrand <david@redhat.com>
    Cc: Andrey Ryabinin <ryabinin.a.a@gmail.com>
    Cc: Alexander Potapenko <glider@google.com>
    Cc: Andrey Konovalov <andreyknvl@gmail.com>
    Cc: Dmitry Vyukov <dvyukov@google.com>
    Cc: Catalin Marinas <catalin.marinas@arm.com>
    Cc: Will Deacon <will@kernel.org>
    Cc: Matthias Brugger <matthias.bgg@gmail.com>
    Cc: Chinwen Chang <chinwen.chang@mediatek.com>
    Cc: Yee Lee <yee.lee@mediatek.com>
    Cc: Nicholas Tang <nicholas.tang@mediatek.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Kuan-Ying Lee authored and torvalds committed Nov 11, 2021
  13. mm: unexport {,un}lock_page_memcg

    These are only used in built-in core mm code.
    
    Link: https://lkml.kernel.org/r/20210820095815.445392-3-hch@lst.de
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Acked-by: Johannes Weiner <hannes@cmpxchg.org>
    Cc: Michal Hocko <mhocko@kernel.org>
    Cc: Vladimir Davydov <vdavydov.dev@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Christoph Hellwig authored and torvalds committed Nov 11, 2021
  14. mm: unexport folio_memcg_{,un}lock

    Patch series "unexport memcg locking helpers".
    
    Neither the old page-based nor the new folio-based memcg locking helpers
    are used in modular code at all, so drop the exports.
    
    This patch (of 2):
    
    folio_memcg_{,un}lock are only used in built-in core mm code.
    
    Link: https://lkml.kernel.org/r/20210820095815.445392-1-hch@lst.de
    Link: https://lkml.kernel.org/r/20210820095815.445392-2-hch@lst.de
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Cc: Johannes Weiner <hannes@cmpxchg.org>
    Cc: Michal Hocko <mhocko@kernel.org>
    Cc: Vladimir Davydov <vdavydov.dev@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Christoph Hellwig authored and torvalds committed Nov 11, 2021
  15. mm/migrate.c: remove MIGRATE_PFN_LOCKED

    MIGRATE_PFN_LOCKED is used to indicate to migrate_vma_prepare() that a
    source page was already locked during migrate_vma_collect().  If it
    wasn't then the a second attempt is made to lock the page.  However if
    the first attempt failed it's unlikely a second attempt will succeed,
    and the retry adds complexity.  So clean this up by removing the retry
    and MIGRATE_PFN_LOCKED flag.
    
    Destination pages are also meant to have the MIGRATE_PFN_LOCKED flag
    set, but nothing actually checks that.
    
    Link: https://lkml.kernel.org/r/20211025041608.289017-1-apopple@nvidia.com
    Signed-off-by: Alistair Popple <apopple@nvidia.com>
    Reviewed-by: Ralph Campbell <rcampbell@nvidia.com>
    Acked-by: Felix Kuehling <Felix.Kuehling@amd.com>
    Cc: Alex Deucher <alexander.deucher@amd.com>
    Cc: Jerome Glisse <jglisse@redhat.com>
    Cc: John Hubbard <jhubbard@nvidia.com>
    Cc: Zi Yan <ziy@nvidia.com>
    Cc: Christoph Hellwig <hch@lst.de>
    Cc: Ben Skeggs <bskeggs@redhat.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Alistair Popple authored and torvalds committed Nov 11, 2021
  16. mm: migrate: simplify the file-backed pages validation when migrating…

    … its mapping
    
    There is no need to validate the file-backed page's refcount before
    trying to freeze the page's expected refcount, instead we can rely on
    the folio_ref_freeze() to validate if the page has the expected refcount
    before migrating its mapping.
    
    Moreover we are always under the page lock when migrating the page
    mapping, which means nowhere else can remove it from the page cache, so
    we can remove the xas_load() validation under the i_pages lock.
    
    Link: https://lkml.kernel.org/r/cover.1629447552.git.baolin.wang@linux.alibaba.com
    Link: https://lkml.kernel.org/r/df4c129fd8e86a95dbc55f4663d77441cc0d3bd1.1629447552.git.baolin.wang@linux.alibaba.com
    Signed-off-by: Baolin Wang <baolin.wang@linux.alibaba.com>
    Suggested-by: Matthew Wilcox <willy@infradead.org>
    Cc: Yang Shi <shy828301@gmail.com>
    Cc: Alistair Popple <apopple@nvidia.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Baolin Wang authored and torvalds committed Nov 11, 2021
  17. mm: allow only SLUB on PREEMPT_RT

    Memory allocators may disable interrupts or preemption as part of the
    allocation and freeing process.  For PREEMPT_RT it is important that
    these sections remain deterministic and short and therefore don't depend
    on the size of the memory to allocate/ free or the inner state of the
    algorithm.
    
    Until v3.12-RT the SLAB allocator was an option but involved several
    changes to meet all the requirements.  The SLUB design fits better with
    PREEMPT_RT model and so the SLAB patches were dropped in the 3.12-RT
    patchset.  Comparing the two allocator, SLUB outperformed SLAB in both
    throughput (time needed to allocate and free memory) and the maximal
    latency of the system measured with cyclictest during hackbench.
    
    SLOB was never evaluated since it was unlikely that it preforms better
    than SLAB.  During a quick test, the kernel crashed with SLOB enabled
    during boot.
    
    Disable SLAB and SLOB on PREEMPT_RT.
    
    [bigeasy@linutronix.de: commit description]
    
    Link: https://lkml.kernel.org/r/20211015210336.gen3tib33ig5q2md@linutronix.de
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
    Acked-by: Vlastimil Babka <vbabka@suse.cz>
    Cc: Christoph Lameter <cl@linux.com>
    Cc: Pekka Enberg <penberg@kernel.org>
    Cc: David Rientjes <rientjes@google.com>
    Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Ingo Molnar authored and torvalds committed Nov 11, 2021
  18. mm/page_owner.c: modify the type of argument "order" in some functions

    The type of "order" in struct page_owner is unsigned short.
    However, it is unsigned int in the following 3 functions:
    
      __reset_page_owner
      __set_page_owner_handle
      __set_page_owner_handle
    
    The type of "order" in argument list is unsigned int, which is
    inconsistent.
    
    [akpm@linux-foundation.org: update include/linux/page_owner.h]
    
    Link: https://lkml.kernel.org/r/20211020125945.47792-1-caoyixuan2019@email.szu.edu.cn
    Signed-off-by: Yixuan Cao <caoyixuan2019@email.szu.edu.cn>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Cao-Wuhui authored and torvalds committed Nov 11, 2021
  19. selftests/net: udpgso_bench_rx: fix port argument

    The below commit added optional support for passing a bind address.
    It configures the sockaddr bind arguments before parsing options and
    reconfigures on options -b and -4.
    
    This broke support for passing port (-p) on its own.
    
    Configure sockaddr after parsing all arguments.
    
    Fixes: 3327a9c ("selftests: add functionals test for UDP GRO")
    Reported-by: Eric Dumazet <edumazet@google.com>
    Signed-off-by: Willem de Bruijn <willemb@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    wdebruij authored and davem330 committed Nov 11, 2021
  20. net: wwan: iosm: fix compilation warning

    curr_phase is unused. Removed the dead code.
    
    Fixes: 8d9be06 ("net: wwan: iosm: transport layer support for fw flashing/cd")
    Reported-by: kernel test robot <lkp@intel.com>
    Signed-off-by: M Chetan Kumar <m.chetan.kumar@linux.intel.com>
    Reviewed-by: Loic Poulain <loic.poulain@linaro.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    mchetankumar authored and davem330 committed Nov 11, 2021
  21. cxgb4: fix eeprom len when diagnostics not implemented

    Ensure diagnostics monitoring support is implemented for the SFF 8472
    compliant port module and set the correct length for ethtool port
    module eeprom read.
    
    Fixes: f56ec67 ("cxgb4: Add support for ethtool i2c dump")
    Signed-off-by: Manoj Malviya <manojmalviya@chelsio.com>
    Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    chelsiocudbg authored and davem330 committed Nov 11, 2021
  22. net: fix premature exit from NAPI state polling in napi_disable()

    Commit 719c571 ("net: make napi_disable() symmetric with
    enable") accidentally introduced a bug sometimes leading to a kernel
    BUG when bringing an iface up/down under heavy traffic load.
    
    Prior to this commit, napi_disable() was polling n->state until
    none of (NAPIF_STATE_SCHED | NAPIF_STATE_NPSVC) is set and then
    always flip them. Now there's a possibility to get away with the
    NAPIF_STATE_SCHE unset as 'continue' drops us to the cmpxchg()
    call with an uninitialized variable, rather than straight to
    another round of the state check.
    
    Error path looks like:
    
    napi_disable():
    unsigned long val, new; /* new is uninitialized */
    
    do {
    	val = READ_ONCE(n->state); /* NAPIF_STATE_NPSVC and/or
    				      NAPIF_STATE_SCHED is set */
    	if (val & (NAPIF_STATE_SCHED | NAPIF_STATE_NPSVC)) { /* true */
    		usleep_range(20, 200);
    		continue; /* go straight to the condition check */
    	}
    	new = val | <...>
    } while (cmpxchg(&n->state, val, new) != val); /* state == val, cmpxchg()
    						  writes garbage */
    
    napi_enable():
    do {
    	val = READ_ONCE(n->state);
    	BUG_ON(!test_bit(NAPI_STATE_SCHED, &val)); /* 50/50 boom */
    <...>
    
    while the typical BUG splat is like:
    
    [  172.652461] ------------[ cut here ]------------
    [  172.652462] kernel BUG at net/core/dev.c:6937!
    [  172.656914] invalid opcode: 0000 [#1] PREEMPT SMP PTI
    [  172.661966] CPU: 36 PID: 2829 Comm: xdp_redirect_cp Tainted: G          I       5.15.0 torvalds#42
    [  172.670222] Hardware name: Intel Corporation S2600WFT/S2600WFT, BIOS SE5C620.86B.02.01.0014.082620210524 08/26/2021
    [  172.680646] RIP: 0010:napi_enable+0x5a/0xd0
    [  172.684832] Code: 07 49 81 cc 00 01 00 00 4c 89 e2 48 89 d8 80 e6 fb f0 48 0f b1 55 10 48 39 c3 74 10 48 8b 5d 10 f6 c7 04 75 3d f6 c3 01 75 b4 <0f> 0b 5b 5d 41 5c c3 65 ff 05 b8 e5 61 53 48 c7 c6 c0 f3 34 ad 48
    [  172.703578] RSP: 0018:ffffa3c9497477a8 EFLAGS: 00010246
    [  172.708803] RAX: ffffa3c96615a014 RBX: 0000000000000000 RCX: ffff8a4b575301a0
    < snip >
    [  172.782403] Call Trace:
    [  172.784857]  <TASK>
    [  172.786963]  ice_up_complete+0x6f/0x210 [ice]
    [  172.791349]  ice_xdp+0x136/0x320 [ice]
    [  172.795108]  ? ice_change_mtu+0x180/0x180 [ice]
    [  172.799648]  dev_xdp_install+0x61/0xe0
    [  172.803401]  dev_xdp_attach+0x1e0/0x550
    [  172.807240]  dev_change_xdp_fd+0x1e6/0x220
    [  172.811338]  do_setlink+0xee8/0x1010
    [  172.814917]  rtnl_setlink+0xe5/0x170
    [  172.818499]  ? bpf_lsm_binder_set_context_mgr+0x10/0x10
    [  172.823732]  ? security_capable+0x36/0x50
    < snip >
    
    Fix this by replacing 'do { } while (cmpxchg())' with an "infinite"
    for-loop with an explicit break.
    
    From v1 [0]:
     - just use a for-loop to simplify both the fix and the existing
       code (Eric).
    
    [0] https://lore.kernel.org/netdev/20211110191126.1214-1-alexandr.lobakin@intel.com
    
    Fixes: 719c571 ("net: make napi_disable() symmetric with enable")
    Suggested-by: Eric Dumazet <edumazet@google.com> # for-loop
    Signed-off-by: Alexander Lobakin <alexandr.lobakin@intel.com>
    Reviewed-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
    Reviewed-by: Eric Dumazet <edumazet@google.com>
    Link: https://lore.kernel.org/r/20211110195605.1304-1-alexandr.lobakin@intel.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    alobakin authored and Jakub Kicinski committed Nov 11, 2021
  23. Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kern…

    …el/git/tytso/ext4
    
    Pull ext4 updates from Ted Ts'o:
     "Only bug fixes and cleanups for ext4 this merge window.
    
      Of note are fixes for the combination of the inline_data and
      fast_commit fixes, and more accurately calculating when to schedule
      additional lazy inode table init, especially when CONFIG_HZ is 100HZ"
    
    * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
      ext4: fix error code saved on super block during file system abort
      ext4: inline data inode fast commit replay fixes
      ext4: commit inline data during fast commit
      ext4: scope ret locally in ext4_try_to_trim_range()
      ext4: remove an unused variable warning with CONFIG_QUOTA=n
      ext4: fix boolreturn.cocci warnings in fs/ext4/name.c
      ext4: prevent getting empty inode buffer
      ext4: move ext4_fill_raw_inode() related functions
      ext4: factor out ext4_fill_raw_inode()
      ext4: prevent partial update of the extent blocks
      ext4: check for inconsistent extents between index and leaf block
      ext4: check for out-of-order index extents in ext4_valid_extent_entries()
      ext4: convert from atomic_t to refcount_t on ext4_io_end->count
      ext4: refresh the ext4_ext_path struct after dropping i_data_sem.
      ext4: ensure enough credits in ext4_ext_shift_path_extents
      ext4: correct the left/middle/right debug message for binsearch
      ext4: fix lazy initialization next schedule time computation in more granular unit
      Revert "ext4: enforce buffer head state assertion in ext4_da_map_blocks"
    torvalds committed Nov 11, 2021
  24. Merge tag 'for-5.16-deadlock-fix-tag' of git://git.kernel.org/pub/scm…

    …/linux/kernel/git/kdave/linux
    
    Pull btrfs fix from David Sterba:
     "Fix for a deadlock when direct/buffered IO is done on a mmaped file
      and a fault happens (details in the patch). There's a fstest
      generic/647 that triggers the problem and makes testing hard"
    
    * tag 'for-5.16-deadlock-fix-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
      btrfs: fix deadlock due to page faults during direct IO reads and writes
    torvalds committed Nov 11, 2021
  25. Merge tag 'nfsd-5.16' of git://linux-nfs.org/~bfields/linux

    Pull nfsd updates from Bruce Fields:
     "A slow cycle for nfsd: mainly cleanup, including Neil's patch dropping
      support for a filehandle format deprecated 20 years ago, and further
      xdr-related cleanup from Chuck"
    
    * tag 'nfsd-5.16' of git://linux-nfs.org/~bfields/linux: (26 commits)
      nfsd4: remove obselete comment
      nfsd: document server-to-server-copy parameters
      NFSD:fix boolreturn.cocci warning
      nfsd: update create verifier comment
      SUNRPC: Change return value type of .pc_encode
      SUNRPC: Replace the "__be32 *p" parameter to .pc_encode
      NFSD: Save location of NFSv4 COMPOUND status
      SUNRPC: Change return value type of .pc_decode
      SUNRPC: Replace the "__be32 *p" parameter to .pc_decode
      SUNRPC: De-duplicate .pc_release() call sites
      SUNRPC: Simplify the SVC dispatch code path
      SUNRPC: Capture value of xdr_buf::page_base
      SUNRPC: Add trace event when alloc_pages_bulk() makes no progress
      svcrdma: Split svcrmda_wc_{read,write} tracepoints
      svcrdma: Split the svcrdma_wc_send() tracepoint
      svcrdma: Split the svcrdma_wc_receive() tracepoint
      NFSD: Have legacy NFSD WRITE decoders use xdr_stream_subsegment()
      SUNRPC: xdr_stream_subsegment() must handle non-zero page_bases
      NFSD: Initialize pointer ni with NULL and not plain integer 0
      NFSD: simplify struct nfsfh
      ...
    torvalds committed Nov 11, 2021
  26. Merge tag 'nfs-for-5.16-1' of git://git.linux-nfs.org/projects/trondm…

    …y/linux-nfs
    
    Pull NFS client updates from Trond Myklebust:
     "Highlights include:
    
      Features:
       - NFSv4.1 can always retrieve and cache the ACCESS mode on OPEN
       - Optimisations for READDIR and the 'ls -l' style workload
       - Further replacements of dprintk() with tracepoints and other
         tracing improvements
       - Ensure we re-probe NFSv4 server capabilities when the user does a
         "mount -o remount"
    
      Bugfixes:
       - Fix an Oops in pnfs_mark_request_commit()
       - Fix up deadlocks in the commit code
       - Fix regressions in NFSv2/v3 attribute revalidation due to the
         change_attr_type optimisations
       - Fix some dentry verifier races
       - Fix some missing dentry verifier settings
       - Fix a performance regression in nfs_set_open_stateid_locked()
       - SUNRPC was sending multiple SYN calls when re-establishing a TCP
         connection.
       - Fix multiple NFSv4 issues due to missing sanity checking of server
         return values
       - Fix a potential Oops when FREE_STATEID races with an unmount
    
      Cleanups:
       - Clean up the labelled NFS code
       - Remove unused header <linux/pnfs_osd_xdr.h>"
    
    * tag 'nfs-for-5.16-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (84 commits)
      NFSv4: Sanity check the parameters in nfs41_update_target_slotid()
      NFS: Remove the nfs4_label argument from decode_getattr_*() functions
      NFS: Remove the nfs4_label argument from nfs_setsecurity
      NFS: Remove the nfs4_label argument from nfs_fhget()
      NFS: Remove the nfs4_label argument from nfs_add_or_obtain()
      NFS: Remove the nfs4_label argument from nfs_instantiate()
      NFS: Remove the nfs4_label from the nfs_setattrres
      NFS: Remove the nfs4_label from the nfs4_getattr_res
      NFS: Remove the f_label from the nfs4_opendata and nfs_openres
      NFS: Remove the nfs4_label from the nfs4_lookupp_res struct
      NFS: Remove the label from the nfs4_lookup_res struct
      NFS: Remove the nfs4_label from the nfs4_link_res struct
      NFS: Remove the nfs4_label from the nfs4_create_res struct
      NFS: Remove the nfs4_label from the nfs_entry struct
      NFS: Create a new nfs_alloc_fattr_with_label() function
      NFS: Always initialise fattr->label in nfs_fattr_alloc()
      NFSv4.2: alloc_file_pseudo() takes an open flag, not an f_mode
      NFS: Don't allocate nfs_fattr on the stack in __nfs42_ssc_open()
      NFSv4: Remove unnecessary 'minor version' check
      NFSv4: Fix potential Oops in decode_op_map()
      ...
    torvalds committed Nov 11, 2021
  27. Merge branch 'exit-cleanups-for-v5.16' of git://git.kernel.org/pub/sc…

    …m/linux/kernel/git/ebiederm/user-namespace
    
    Pull exit cleanups from Eric Biederman:
     "While looking at some issues related to the exit path in the kernel I
      found several instances where the code is not using the existing
      abstractions properly.
    
      This set of changes introduces force_fatal_sig a way of sending a
      signal and not allowing it to be caught, and corrects the misuse of
      the existing abstractions that I found.
    
      A lot of the misuse of the existing abstractions are silly things such
      as doing something after calling a no return function, rolling BUG by
      hand, doing more work than necessary to terminate a kernel thread, or
      calling do_exit(SIGKILL) instead of calling force_sig(SIGKILL).
    
      In the review a deficiency in force_fatal_sig and force_sig_seccomp
      where ptrace or sigaction could prevent the delivery of the signal was
      found. I have added a change that adds SA_IMMUTABLE to change that
      makes it impossible to interrupt the delivery of those signals, and
      allows backporting to fix force_sig_seccomp
    
      And Arnd found an issue where a function passed to kthread_run had the
      wrong prototype, and after my cleanup was failing to build."
    
    * 'exit-cleanups-for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: (23 commits)
      soc: ti: fix wkup_m3_rproc_boot_thread return type
      signal: Add SA_IMMUTABLE to ensure forced siganls do not get changed
      signal: Replace force_sigsegv(SIGSEGV) with force_fatal_sig(SIGSEGV)
      exit/r8188eu: Replace the macro thread_exit with a simple return 0
      exit/rtl8712: Replace the macro thread_exit with a simple return 0
      exit/rtl8723bs: Replace the macro thread_exit with a simple return 0
      signal/x86: In emulate_vsyscall force a signal instead of calling do_exit
      signal/sparc32: In setup_rt_frame and setup_fram use force_fatal_sig
      signal/sparc32: Exit with a fatal signal when try_to_clear_window_buffer fails
      exit/syscall_user_dispatch: Send ordinary signals on failure
      signal: Implement force_fatal_sig
      exit/kthread: Have kernel threads return instead of calling do_exit
      signal/s390: Use force_sigsegv in default_trap_handler
      signal/vm86_32: Properly send SIGSEGV when the vm86 state cannot be saved.
      signal/vm86_32: Replace open coded BUG_ON with an actual BUG_ON
      signal/sparc: In setup_tsb_params convert open coded BUG into BUG
      signal/powerpc: On swapcontext failure force SIGSEGV
      signal/sh: Use force_sig(SIGKILL) instead of do_group_exit(SIGKILL)
      signal/mips: Update (_save|_restore)_fp_context to fail with -EFAULT
      signal/sparc32: Remove unreachable do_exit in do_sparc_fault
      ...
    torvalds committed Nov 11, 2021
  28. Merge tag 'kernel.sys.v5.16' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/brauner/linux
    
    Pull prctl updates from Christian Brauner:
     "This contains the missing prctl uapi pieces for PR_SCHED_CORE.
    
      In order to activate core scheduling the caller is expected to specify
      the scope of the new core scheduling domain.
    
      For example, passing 2 in the 4th argument of
    
         prctl(PR_SCHED_CORE, PR_SCHED_CORE_CREATE, <pid>,  2, 0);
    
      would indicate that the new core scheduling domain encompasses all
      tasks in the process group of <pid>. Specifying 0 would only create a
      core scheduling domain for the thread identified by <pid> and 2 would
      encompass the whole thread-group of <pid>.
    
      Note, the values 0, 1, and 2 correspond to PIDTYPE_PID, PIDTYPE_TGID,
      and PIDTYPE_PGID. A first version tried to expose those values
      directly to which I objected because:
    
       - PIDTYPE_* is an enum that is kernel internal which we should not
         expose to userspace directly.
    
       - PIDTYPE_* indicates what a given struct pid is used for it doesn't
         express a scope.
    
      But what the 4th argument of PR_SCHED_CORE prctl() expresses is the
      scope of the operation, i.e. the scope of the core scheduling domain
      at creation time. So Eugene's patch now simply introduces three new
      defines PR_SCHED_CORE_SCOPE_THREAD, PR_SCHED_CORE_SCOPE_THREAD_GROUP,
      and PR_SCHED_CORE_SCOPE_PROCESS_GROUP. They simply express what
      happens.
    
      This has been on the mailing list for quite a while with all relevant
      scheduler folks Cced. I announced multiple times that I'd pick this up
      if I don't see or her anyone else doing it. None of this touches
      proper scheduler code but only concerns uapi so I think this is fine.
    
      With core scheduling being quite common now for vm managers (e.g.
      moving individual vcpu threads into their own core scheduling domain)
      and container managers (e.g. moving the init process into its own core
      scheduling domain and letting all created children inherit it) having
      to rely on raw numbers passed as the 4th argument in prctl() is a bit
      annoying and everyone is starting to come up with their own defines"
    
    * tag 'kernel.sys.v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux:
      uapi/linux/prctl: provide macro definitions for the PR_SCHED_CORE type argument
    torvalds committed Nov 11, 2021
  29. Merge tag 'pidfd.v5.16' of git://git.kernel.org/pub/scm/linux/kernel/…

    …git/brauner/linux
    
    Pull pidfd updates from Christian Brauner:
     "Various places in the kernel have picked up pidfds.
    
      The two most recent additions have probably been the ability to use
      pidfds in bpf maps and the usage of pidfds in mm-based syscalls such
      as process_mrelease() and process_madvise().
    
      The same pattern to turn a pidfd into a struct task exists in two
      places. One of those places used PIDTYPE_TGID while the other one used
      PIDTYPE_PID even though it is clearly documented in all pidfd-helpers
      that pidfds __currently__ only refer to thread-group leaders (subject
      to change in the future if need be).
    
      This isn't a bug per se but has the potential to be one if we allow
      pidfds to refer to individual threads. If that happens we want to
      audit all codepaths that make use of them to ensure they can deal with
      pidfds refering to individual threads.
    
      This adds a simple helper to turn a pidfd into a struct task making it
      easy to grep for such places. Plus, it gets rid of code-duplication"
    
    * tag 'pidfd.v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux:
      mm: use pidfd_get_task()
      pid: add pidfd_get_task() helper
    torvalds committed Nov 11, 2021

Commits on Nov 10, 2021

  1. Merge tag 'thermal-5.16-rc1-2' of git://git.kernel.org/pub/scm/linux/…

    …kernel/git/rafael/linux-pm
    
    Pull more thermal control updates from Rafael Wysocki:
     "These fix two issues in the thermal core and one in the int340x
      thermal driver.
    
      Specifics:
    
       - Replace pr_warn() with pr_warn_once() in user_space_bind() to
         reduce kernel log noise (Rafael Wysocki).
    
       - Extend the RFIM mailbox interface in the int340x thermal driver to
         return 64 bit values to allow all values returned by the hardware
         to be handled correctly (Srinivas Pandruvada).
    
       - Fix possible NULL pointer dereferences in the of_thermal_ family of
         functions (Subbaraman Narayanamurthy)"
    
    * tag 'thermal-5.16-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
      thermal: Replace pr_warn() with pr_warn_once() in user_space_bind()
      thermal: Fix NULL pointer dereferences in of_thermal_ functions
      thermal/drivers/int340x: processor_thermal: Suppot 64 bit RFIM responses
    torvalds committed Nov 10, 2021
  2. Merge tag 'pm-5.16-rc1-2' of git://git.kernel.org/pub/scm/linux/kerne…

    …l/git/rafael/linux-pm
    
    Pull more power management updates from Rafael Wysocki:
     "These fix three intel_pstate driver regressions, fix locking in the
      core code suspending and resuming devices during system PM
      transitions, fix the handling of cpuidle drivers based on runtime PM
      during system-wide suspend, fix two issues in the operating
      performance points (OPP) framework and resource-managed helpers to it.
    
      Specifics:
    
       - Fix two intel_pstate driver regressions related to the HWP
         interrupt handling added recently (Srinivas Pandruvada).
    
       - Fix intel_pstate driver regression introduced during the 5.11 cycle
         and causing HWP desired performance to be mishandled in some cases
         when switching driver modes and during system suspend and shutdown
         (Rafael Wysocki).
    
       - Fix system-wide device suspend and resume locking to avoid
         deadlocks when device objects are deleted during a system-wide PM
         transition (Rafael Wysocki).
    
       - Modify system-wide suspend of devices to prevent cpuidle drivers
         based on runtime PM from misbehaving during the "no IRQ" phase of
         it (Ulf Hansson).
    
       - Fix return value of _opp_add_static_v2() helper (YueHaibing).
    
       - Fix required-opp handle count (Pavankumar Kondeti).
    
       - Add resource managed OPP helpers, update dev_pm_opp_attach_genpd(),
         update their devfreq users, and make minor DT binding change
         (Dmitry Osipenko)"
    
    * tag 'pm-5.16-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
      PM: sleep: Avoid calling put_device() under dpm_list_mtx
      cpufreq: intel_pstate: Clear HWP Status during HWP Interrupt enable
      cpufreq: intel_pstate: Fix unchecked MSR 0x773 access
      cpufreq: intel_pstate: Clear HWP desired on suspend/shutdown and offline
      PM: sleep: Fix runtime PM based cpuidle support
      dt-bindings: opp: Allow multi-worded OPP entry name
      opp: Fix return in _opp_add_static_v2()
      PM / devfreq: tegra30: Check whether clk_round_rate() returns zero rate
      PM / devfreq: tegra30: Use resource-managed helpers
      PM / devfreq: Add devm_devfreq_add_governor()
      opp: Add more resource-managed variants of dev_pm_opp_of_add_table()
      opp: Change type of dev_pm_opp_attach_genpd(names) argument
      opp: Fix required-opps phandle array count check
    torvalds committed Nov 10, 2021
  3. Merge tag 'acpi-5.16-rc1-2' of git://git.kernel.org/pub/scm/linux/ker…

    …nel/git/rafael/linux-pm
    
    Pull more ACPI updates from Rafael Wysocki:
     "These add support for a new ACPI device configuration object called
      _DSC, fix some issues including one recent regression, add two new
      items to quirk lists and clean up assorted pieces of code.
    
      Specifics:
    
       - Add support for new ACPI device configuration object called _DSC
         ("Deepest State for Configuration") to allow certain devices to be
         probed without changing their power states, document it and make
         two drivers use it (Sakari Ailus, Rajmohan Mani).
    
       - Fix device wakeup power reference counting broken recently by
         mistake (Rafael Wysocki).
    
       - Drop unused symbol and macros depending on it from acgcc.h (Rafael
         Wysocki).
    
       - Add HP ZHAN 66 Pro to the "no EC wakeup" quirk list (Binbin Zhou).
    
       - Add Xiaomi Mi Pad 2 to the backlight quirk list and drop an unused
         piece of data from all of the list entries (Hans de Goede).
    
       - Fix register read accesses handling in the Intel PMIC operation
         region driver (Hans de Goede).
    
       - Clean up static variables initialization in the EC driver
         (wangzhitong)"
    
    * tag 'acpi-5.16-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
      Documentation: ACPI: Fix non-D0 probe _DSC object example
      ACPI: Drop ACPI_USE_BUILTIN_STDARG ifdef from acgcc.h
      ACPI: PM: Fix device wakeup power reference counting error
      ACPI: video: use platform backlight driver on Xiaomi Mi Pad 2
      ACPI: video: Drop dmi_system_id.ident settings from video_detect_dmi_table[]
      ACPI: PMIC: Fix intel_pmic_regs_handler() read accesses
      ACPI: EC: Remove initialization of static variables to false
      ACPI: EC: Use ec_no_wakeup on HP ZHAN 66 Pro
      at24: Support probing while in non-zero ACPI D state
      media: i2c: imx319: Support device probe in non-zero ACPI D state
      ACPI: Add a convenience function to tell a device is in D0 state
      Documentation: ACPI: Document _DSC object usage for enum power state
      i2c: Allow an ACPI driver to manage the device's power state during probe
      ACPI: scan: Obtain device's desired enumeration power state
    torvalds committed Nov 10, 2021
  4. Merge tag 'dmaengine-5.16-rc1' of git://git.kernel.org/pub/scm/linux/…

    …kernel/git/vkoul/dmaengine
    
    Pull dmaengine updates from Vinod Koul:
     "A bunch of driver updates, no new driver or controller support this
      time though:
    
       - Another pile of idxd updates
    
       - pm routines cleanup for at_xdmac driver
    
       - Correct handling of callback_result for few drivers
    
       - zynqmp_dma driver updates and descriptor management refinement
    
       - Hardware handshaking support for dw-axi-dmac
    
       - Support for remotely powered controllers in Qcom bam dma
    
       - tegra driver updates"
    
    * tag 'dmaengine-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine: (69 commits)
      dmaengine: ti: k3-udma: Set r/tchan or rflow to NULL if request fail
      dmaengine: ti: k3-udma: Set bchan to NULL if a channel request fail
      dmaengine: stm32-dma: avoid 64-bit division in stm32_dma_get_max_width
      dmaengine: fsl-edma: support edma memcpy
      dmaengine: idxd: fix resource leak on dmaengine driver disable
      dmaengine: idxd: cleanup completion record allocation
      dmaengine: zynqmp_dma: Correctly handle descriptor callbacks
      dmaengine: xilinx_dma: Correctly handle cyclic descriptor callbacks
      dmaengine: altera-msgdma: Correctly handle descriptor callbacks
      dmaengine: at_xdmac: fix compilation warning
      dmaengine: dw-axi-dmac: Simplify assignment in dma_chan_pause()
      dmaengine: qcom: bam_dma: Add "powered remotely" mode
      dt-bindings: dmaengine: bam_dma: Add "powered remotely" mode
      dmaengine: sa11x0: Mark PM functions as __maybe_unused
      dmaengine: switch from 'pci_' to 'dma_' API
      dmaengine: ioat: switch from 'pci_' to 'dma_' API
      dmaengine: hsu: switch from 'pci_' to 'dma_' API
      dmaengine: hisi_dma: switch from 'pci_' to 'dma_' API
      dmaengine: dw: switch from 'pci_' to 'dma_' API
      dmaengine: dw-edma-pcie: switch from 'pci_' to 'dma_' API
      ...
    torvalds committed Nov 10, 2021
  5. Merge tag 'tag-chrome-platform-for-v5.16' of git://git.kernel.org/pub…

    …/scm/linux/kernel/git/chrome-platform/linux
    
    Pull chrome platform updates from Benson Leung:
     "cros_ec_typec:
    
       - Clean up use of cros_ec_check_features
    
      cros_ec_*:
    
       - Rename and move cros_ec_pd_command to cros_ec_command, and make
         changes to cros_ec_typec and cros_ec_proto to use the new common
         command, reducing duplication.
    
      sensorhub:
    
       - simplify getting .driver_data in cros_ec_sensors_core and
         cros_ec_sensorhub
    
      misc:
    
       - Maintainership change. Enric Balletbo i Serra has moved on from
         Collabora, so removing him from chrome/platform maintainers. Thanks
         for all of your hard work maintaining this, Enric, and best of luck
         to you in your new role!
    
       - Add Prashant Malani as driver maintainer for cros_ec_typec.c and
         cros_usbpd_notify. He was already principal contributor of these
         drivers"
    
    * tag 'tag-chrome-platform-for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux:
      platform/chrome: cros_ec_proto: Use ec_command for check_features
      platform/chrome: cros_ec_proto: Use EC struct for features
      MAINTAINERS: Chrome: Drop Enric Balletbo i Serra
      platform/chrome: cros_ec_typec: Use cros_ec_command()
      platform/chrome: cros_ec_proto: Add version for ec_command
      platform/chrome: cros_ec_proto: Make data pointers void
      platform/chrome: cros_usbpd_notify: Move ec_command()
      platform/chrome: cros_usbpd_notify: Rename cros_ec_pd_command()
      platform/chrome: cros_ec: Fix spelling mistake "responsed" -> "response"
      platform/chrome: cros_ec_sensorhub: simplify getting .driver_data
      iio: common: cros_ec_sensors: simplify getting .driver_data
      platform/chrome: cros-ec-typec: Cleanup use of check_features
      platform/chrome: cros_ec_proto: Fix check_features ret val
      MAINTAINERS: Add Prashant's maintainership of cros_ec drivers
    torvalds committed Nov 10, 2021
Older