Skip to content
Permalink
Yunsheng-Lin/a…
Switch branches/tags

Commits on Jul 14, 2021

  1. net: hns3: support skb's frag page recycling based on page pool

    This patch adds skb's frag page recycling support based on
    the frag page support in page pool.
    
    The performance improves above 10~20% for single thread iperf
    TCP flow with IOMMU disabled when iperf server and irq/NAPI
    have a different CPU.
    
    The performance improves about 135%(14Gbit to 33Gbit) for single
    thread iperf TCP flow IOMMU is in strict mode and iperf server
    shares the same cpu with irq/NAPI.
    
    Signed-off-by: Yunsheng Lin <linyunsheng@huawei.com>
    Yunsheng Lin authored and intel-lab-lkp committed Jul 14, 2021
  2. page_pool: add frag page recycling support in page pool

    Currently page pool only support page recycling when there
    is only one user of the page, and the split page reusing
    implemented in the most driver can not use the page pool as
    bing-pong way of reusing requires the multi user support in
    page pool.
    
    Those reusing or recycling has below limitations:
    1. page from page pool can only be used be one user in order
       for the page recycling to happen.
    2. Bing-pong way of reusing in most driver does not support
       multi desc using different part of the same page in order
       to save memory.
    
    So add multi-users support and frag page recycling in page
    pool to overcome the above limitation.
    
    Signed-off-by: Yunsheng Lin <linyunsheng@huawei.com>
    Yunsheng Lin authored and intel-lab-lkp committed Jul 14, 2021
  3. page_pool: add interface to manipulate frag count in page pool

    As suggested by Alexander, "A DMA mapping should be page
    aligned anyway so the lower 12 bits would be reserved 0",
    so it might make more sense to repurpose the lower 12 bits
    of the dma address to store the frag count for frag page
    support in page pool for 32 bit systems with 64 bit dma,
    which should be rare those days.
    
    For normal system, the dma_addr[1] in 'struct page' is not
    used, so we can reuse one of the dma_addr for storing frag
    count, which means how many frags this page might be splited
    to.
    
    The PAGE_POOL_DMA_USE_PP_FRAG_COUNT macro is added to decide
    where to store the frag count, as the "sizeof(dma_addr_t) >
    sizeof(unsigned long)" is false for most systems those days,
    so hopefully the compiler will optimize out the unused code
    for those systems.
    
    The newly added page_pool_set_frag_count() should be called
    before the page is passed to any user. Otherwise, call the
    newly added page_pool_atomic_sub_frag_count_return().
    
    Signed-off-by: Yunsheng Lin <linyunsheng@huawei.com>
    Yunsheng Lin authored and intel-lab-lkp committed Jul 14, 2021
  4. page_pool: keep pp info as long as page pool owns the page

    Currently, page->pp is cleared and set everytime the page
    is recycled, which is unnecessary.
    
    So only set the page->pp when the page is added to the page
    pool and only clear it when the page is released from the
    page pool.
    
    This is also a preparation to support allocating frag page
    in page pool.
    
    Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
    Signed-off-by: Yunsheng Lin <linyunsheng@huawei.com>
    Yunsheng Lin authored and intel-lab-lkp committed Jul 14, 2021

Commits on Jul 1, 2021

  1. Merge branch 'dsa-mv88e6xxx-topaz-fixes'

    Marek Behún says:
    
    ====================
    dsa: mv88e6xxx: Topaz fixes
    
    here comes some fixes for the Topaz family (Marvell 88E6141 / 88E6341)
    which I found out about when I compared the Topaz' operations
    structure with that one of Peridot (6390).
    
    This is v2. In v1, I accidentally sent patches generated from wrong
    branch and the 5th patch does not contain a necessary change in
    serdes.c.
    
    Changes from v1:
    - the fifth patch, "enable SerDes RX stats for Topaz", needs another
      change in serdes.c
    - Andrew's Reviewed-by to 1,2,3,4 and 6
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jul 1, 2021
  2. net: dsa: mv88e6xxx: enable SerDes PCS register dump via ethtool -d o…

    …n Topaz
    
    Commit bf3504c ("net: dsa: mv88e6xxx: Add 6390 family PCS
    registers to ethtool -d") added support for dumping SerDes PCS registers
    via ethtool -d for Peridot.
    
    The same implementation is also valid for Topaz, but was not
    enabled at the time.
    
    Signed-off-by: Marek Behún <kabel@kernel.org>
    Fixes: bf3504c ("net: dsa: mv88e6xxx: Add 6390 family PCS registers to ethtool -d")
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    elkablo authored and davem330 committed Jul 1, 2021
  3. net: dsa: mv88e6xxx: enable SerDes RX stats for Topaz

    Commit 0df9528 ("mv88e6xxx: Add serdes Rx statistics") added
    support for RX statistics on SerDes ports for Peridot.
    
    This same implementation is also valid for Topaz, but was not enabled
    at the time.
    
    We need to use the generic .serdes_get_lane() method instead of the
    Peridot specific one in the stats methods so that on Topaz the proper
    one is used.
    
    Signed-off-by: Marek Behún <kabel@kernel.org>
    Fixes: 0df9528 ("mv88e6xxx: Add serdes Rx statistics")
    Signed-off-by: David S. Miller <davem@davemloft.net>
    elkablo authored and davem330 committed Jul 1, 2021
  4. net: dsa: mv88e6xxx: enable devlink ATU hash param for Topaz

    Commit 23e8b47 ("net: dsa: mv88e6xxx: Add devlink param for ATU
    hash algorithm.") introduced ATU hash algorithm access via devlink, but
    did not enable it for Topaz.
    
    Enable this feature also for Topaz.
    
    Signed-off-by: Marek Behún <kabel@kernel.org>
    Fixes: 23e8b47 ("net: dsa: mv88e6xxx: Add devlink param for ATU hash algorithm.")
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    elkablo authored and davem330 committed Jul 1, 2021
  5. net: dsa: mv88e6xxx: enable .rmu_disable() on Topaz

    Commit 9e5baf9 ("net: dsa: mv88e6xxx: add RMU disable op")
    introduced .rmu_disable() method with implementation for several models,
    but forgot to add Topaz, which can use the Peridot implementation.
    
    Use the Peridot implementation of .rmu_disable() on Topaz.
    
    Signed-off-by: Marek Behún <kabel@kernel.org>
    Fixes: 9e5baf9 ("net: dsa: mv88e6xxx: add RMU disable op")
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    elkablo authored and davem330 committed Jul 1, 2021
  6. net: dsa: mv88e6xxx: use correct .stats_set_histogram() on Topaz

    Commit 40cff8f ("net: dsa: mv88e6xxx: Fix stats histogram mode")
    introduced wrong .stats_set_histogram() method for Topaz family.
    
    The Peridot method should be used instead.
    
    Signed-off-by: Marek Behún <kabel@kernel.org>
    Fixes: 40cff8f ("net: dsa: mv88e6xxx: Fix stats histogram mode")
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    elkablo authored and davem330 committed Jul 1, 2021
  7. net: dsa: mv88e6xxx: enable .port_set_policy() on Topaz

    Commit f3a2cd3 ("net: dsa: mv88e6xxx: introduce .port_set_policy")
    introduced .port_set_policy() method with implementation for several
    models, but forgot to add Topaz, which can use the 6352 implementation.
    
    Use the 6352 implementation of .port_set_policy() on Topaz.
    
    Signed-off-by: Marek Behún <kabel@kernel.org>
    Fixes: f3a2cd3 ("net: dsa: mv88e6xxx: introduce .port_set_policy")
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    elkablo authored and davem330 committed Jul 1, 2021
  8. net: dsa: return -EOPNOTSUPP when driver does not implement .port_lag…

    …_join
    
    The DSA core has a layered structure, and even though we end up
    returning 0 (success) to user space when setting a bonding/team upper
    that can't be offloaded, some parts of the framework actually need to
    know that we couldn't offload that.
    
    For example, if dsa_switch_lag_join returns 0 as it currently does,
    dsa_port_lag_join has no way to tell a successful offload from a
    software fallback, and it will call dsa_port_bridge_join afterwards.
    Then we'll think we're offloading the bridge master of the LAG, when in
    fact we're not even offloading the LAG. In turn, this will make us set
    skb->offload_fwd_mark = true, which is incorrect and the bridge doesn't
    like it.
    
    Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
    Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    vladimiroltean authored and davem330 committed Jul 1, 2021
  9. Merge branch 'octeopntx2-LMTST-regions'

    Geetha sowjanya says:
    
    ====================
    Dynamic LMTST region setup
    
    This patch series allows RVU PF/VF to allocate memory for
    LMTST operations instead of using memory reserved by firmware
    which is mapped as device memory.
    The LMTST mapping table contains the RVU PF/VF LMTST memory base
    address entries. This table is used by hardware for LMTST operations.
    Patch1 introduces new mailbox message to update the LMTST table with
    the new allocated memory address.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jul 1, 2021
  10. octeontx2-pf: cn10k: Use runtime allocated LMTLINE region

    The current driver uses static LMTST region allocated by firmware.
    This memory gets populated as PF/VF BAR2. RVU PF/VF driver ioremap
    the memory as device memory for NIX/NPA operation. Since the memory
    is mapped as device memory we see performance degration. To address
    this issue this patch implements runtime memory allocation.
    RVU PF/VF allocates memory during device probe and share the base
    address with RVU AF. RVU AF then configure the LMT MAP table
    accordingly.
    
    Signed-off-by: Geetha sowjanya <gakula@marvell.com>
    Signed-off-by: Sunil Kovvuri Goutham <sgoutham@marvell.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Geetha sowjanya authored and davem330 committed Jul 1, 2021
  11. octeontx2-af: cn10k: Support configurable LMTST regions

    This patch extends the lmtst_tbl_setup_req mbox to support run time
    LMTST configuration.
    RVU PF/VF and DPDK/ODP allocates a LMT region, creates a translation
    entry for a device via VFIO IOCTLs.
    This IOVA is shared with AF through above mbox. AF then uses
    RVU_SMMU transulation Widget and gets PA for the IOVA and updates
    the LMTtable entry for that device.
    
    Signed-off-by: Geetha sowjanya <gakula@marvell.com>
    Signed-off-by: Sunil Kovvuri Goutham <sgoutham@marvell.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Geetha sowjanya authored and davem330 committed Jul 1, 2021
  12. octeontx2-af: cn10k: Setting up lmtst map table

    Introducing a new mailbox to support updating lmt entries
    and common lmt base address scheme i.e. multiple pcifuncs
    can share lmt region to reduce L1 cache pressure for application.
    Parameters passed to mailbox includes the primary pcifunc
    value whose lmt regions will be shared by other secondary
    pcifuncs. Here secondary pcifunc will be the one who is
    calling the mailbox.
    For example:
    By default each pcifunc has its own LMT base address:
            PCIFUNC1    LMT_BASE_ADDR A
            PCIFUNC2    LMT_BASE_ADDR B
            PCIFUNC3    LMT_BASE_ADDR C
            PCIFUNC4    LMT_BASE_ADDR D
    Application will choose PCIFUNC1 as base/primary pcifunc
    and as and when other pcifunc(secondary pcifuncs) gets
    probed, this mailbox will be called and LMTST table will
    be updated as:
            PCIFUNC1    LMT_BASE_ADDR A
            PCIFUNC2    LMT_BASE_ADDR A
            PCIFUNC3    LMT_BASE_ADDR A
            PCIFUNC4    LMT_BASE_ADDR A
    
    On FLR lmtst map table gets resetted to the default lmt
    base addresses for all secondary pcifuncs.
    
    Signed-off-by: Harman Kalra <hkalra@marvell.com>
    Signed-off-by: Geetha sowjanya <gakula@marvell.com>
    Signed-off-by: Sunil Goutham <sgoutham@marvell.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Harman Kalra authored and davem330 committed Jul 1, 2021

Commits on Jun 30, 2021

  1. Merge tag 'net-next-5.14' of git://git.kernel.org/pub/scm/linux/kerne…

    …l/git/netdev/net-next
    
    Pull networking updates from Jakub Kicinski:
     "Core:
    
       - BPF:
          - add syscall program type and libbpf support for generating
            instructions and bindings for in-kernel BPF loaders (BPF loaders
            for BPF), this is a stepping stone for signed BPF programs
          - infrastructure to migrate TCP child sockets from one listener to
            another in the same reuseport group/map to improve flexibility
            of service hand-off/restart
          - add broadcast support to XDP redirect
    
       - allow bypass of the lockless qdisc to improving performance (for
         pktgen: +23% with one thread, +44% with 2 threads)
    
       - add a simpler version of "DO_ONCE()" which does not require jump
         labels, intended for slow-path usage
    
       - virtio/vsock: introduce SOCK_SEQPACKET support
    
       - add getsocketopt to retrieve netns cookie
    
       - ip: treat lowest address of a IPv4 subnet as ordinary unicast
         address allowing reclaiming of precious IPv4 addresses
    
       - ipv6: use prandom_u32() for ID generation
    
       - ip: add support for more flexible field selection for hashing
         across multi-path routes (w/ offload to mlxsw)
    
       - icmp: add support for extended RFC 8335 PROBE (ping)
    
       - seg6: add support for SRv6 End.DT46 behavior
    
       - mptcp:
          - DSS checksum support (RFC 8684) to detect middlebox meddling
          - support Connection-time 'C' flag
          - time stamping support
    
       - sctp: packetization Layer Path MTU Discovery (RFC 8899)
    
       - xfrm: speed up state addition with seq set
    
       - WiFi:
          - hidden AP discovery on 6 GHz and other HE 6 GHz improvements
          - aggregation handling improvements for some drivers
          - minstrel improvements for no-ack frames
          - deferred rate control for TXQs to improve reaction times
          - switch from round robin to virtual time-based airtime scheduler
    
       - add trace points:
          - tcp checksum errors
          - openvswitch - action execution, upcalls
          - socket errors via sk_error_report
    
      Device APIs:
    
       - devlink: add rate API for hierarchical control of max egress rate
         of virtual devices (VFs, SFs etc.)
    
       - don't require RCU read lock to be held around BPF hooks in NAPI
         context
    
       - page_pool: generic buffer recycling
    
      New hardware/drivers:
    
       - mobile:
          - iosm: PCIe Driver for Intel M.2 Modem
          - support for Qualcomm MSM8998 (ipa)
    
       - WiFi: Qualcomm QCN9074 and WCN6855 PCI devices
    
       - sparx5: Microchip SparX-5 family of Enterprise Ethernet switches
    
       - Mellanox BlueField Gigabit Ethernet (control NIC of the DPU)
    
       - NXP SJA1110 Automotive Ethernet 10-port switch
    
       - Qualcomm QCA8327 switch support (qca8k)
    
       - Mikrotik 10/25G NIC (atl1c)
    
      Driver changes:
    
       - ACPI support for some MDIO, MAC and PHY devices from Marvell and
         NXP (our first foray into MAC/PHY description via ACPI)
    
       - HW timestamping (PTP) support: bnxt_en, ice, sja1105, hns3, tja11xx
    
       - Mellanox/Nvidia NIC (mlx5)
          - NIC VF offload of L2 bridging
          - support IRQ distribution to Sub-functions
    
       - Marvell (prestera):
          - add flower and match all
          - devlink trap
          - link aggregation
    
       - Netronome (nfp): connection tracking offload
    
       - Intel 1GE (igc): add AF_XDP support
    
       - Marvell DPU (octeontx2): ingress ratelimit offload
    
       - Google vNIC (gve): new ring/descriptor format support
    
       - Qualcomm mobile (rmnet & ipa): inline checksum offload support
    
       - MediaTek WiFi (mt76)
          - mt7915 MSI support
          - mt7915 Tx status reporting
          - mt7915 thermal sensors support
          - mt7921 decapsulation offload
          - mt7921 enable runtime pm and deep sleep
    
       - Realtek WiFi (rtw88)
          - beacon filter support
          - Tx antenna path diversity support
          - firmware crash information via devcoredump
    
       - Qualcomm WiFi (wcn36xx)
          - Wake-on-WLAN support with magic packets and GTK rekeying
    
       - Micrel PHY (ksz886x/ksz8081): add cable test support"
    
    * tag 'net-next-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (2168 commits)
      tcp: change ICSK_CA_PRIV_SIZE definition
      tcp_yeah: check struct yeah size at compile time
      gve: DQO: Fix off by one in gve_rx_dqo()
      stmmac: intel: set PCI_D3hot in suspend
      stmmac: intel: Enable PHY WOL option in EHL
      net: stmmac: option to enable PHY WOL with PMT enabled
      net: say "local" instead of "static" addresses in ndo_dflt_fdb_{add,del}
      net: use netdev_info in ndo_dflt_fdb_{add,del}
      ptp: Set lookup cookie when creating a PTP PPS source.
      net: sock: add trace for socket errors
      net: sock: introduce sk_error_report
      net: dsa: replay the local bridge FDB entries pointing to the bridge dev too
      net: dsa: ensure during dsa_fdb_offload_notify that dev_hold and dev_put are on the same dev
      net: dsa: include fdb entries pointing to bridge in the host fdb list
      net: dsa: include bridge addresses which are local in the host fdb list
      net: dsa: sync static FDB entries on foreign interfaces to hardware
      net: dsa: install the host MDB and FDB entries in the master's RX filter
      net: dsa: reference count the FDB addresses at the cross-chip notifier level
      net: dsa: introduce a separate cross-chip notifier type for host FDBs
      net: dsa: reference count the MDB entries at the cross-chip notifier level
      ...
    torvalds committed Jun 30, 2021
  2. Merge tag 'sched-urgent-2021-06-30' of git://git.kernel.org/pub/scm/l…

    …inux/kernel/git/tip/tip
    
    Pull scheduler fixes from Ingo Molnar:
    
     - Fix a small inconsistency (bug) in load tracking, caught by a new
       warning that several people reported.
    
     - Flip CONFIG_SCHED_CORE to default-disabled, and update the Kconfig
       help text.
    
    * tag 'sched-urgent-2021-06-30' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      sched/core: Disable CONFIG_SCHED_CORE by default
      sched/fair: Ensure _sum and _avg values stay consistent
    torvalds committed Jun 30, 2021
  3. Merge tag 'microblaze-v5.14' of git://git.monstr.eu/linux-2.6-microblaze

    Pull microblaze updates from Michal Simek:
    
     - Remove unused PAGE_UP/DOWN macros
    
     - Fix trivial spelling mistake
    
    * tag 'microblaze-v5.14' of git://git.monstr.eu/linux-2.6-microblaze:
      arch: microblaze: Fix spelling mistake "vesion" -> "version"
      microblaze: Cleanup unused functions
    torvalds committed Jun 30, 2021
  4. Merge tag 'safesetid-5.14' of git://github.com/micah-morton/linux

    Pull SafeSetID update from Micah Morton:
     "One very minor code cleanup change that marks a variable as
      __initdata"
    
    * tag 'safesetid-5.14' of git://github.com/micah-morton/linux:
      LSM: SafeSetID: Mark safesetid_initialized as __initdata
    torvalds committed Jun 30, 2021
  5. Merge tag 'Smack-for-5.14' of git://github.com/cschaufler/smack-next

    Pull smack updates from Casey Schaufler:
     "There is nothing more significant than an improvement to a byte count
      check in smackfs.
    
      All changes have been in next for weeks"
    
    * tag 'Smack-for-5.14' of git://github.com/cschaufler/smack-next:
      Smack: fix doc warning
      Revert "Smack: Handle io_uring kernel thread privileges"
      smackfs: restrict bytes count in smk_set_cipso()
      security/smack/: fix misspellings using codespell tool
    torvalds committed Jun 30, 2021
  6. Merge tag 'audit-pr-20210629' of git://git.kernel.org/pub/scm/linux/k…

    …ernel/git/pcmoore/audit
    
    Pull audit updates from Paul Moore:
     "Another merge window, another small audit pull request.
    
      Four patches in total: one is cosmetic, one removes an unnecessary
      initialization, one renames some enum values to prevent name
      collisions, and one converts list_del()/list_add() to list_move().
    
      None of these are earth shattering and all pass the audit-testsuite
      tests while merging cleanly on top of your tree from earlier today"
    
    * tag 'audit-pr-20210629' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit:
      audit: remove unnecessary 'ret' initialization
      audit: remove trailing spaces and tabs
      audit: Use list_move instead of list_del/list_add
      audit: Rename enum audit_state constants to avoid AUDIT_DISABLED redefinition
      audit: add blank line after variable declarations
    torvalds committed Jun 30, 2021
  7. Merge tag 'selinux-pr-20210629' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/pcmoore/selinux
    
    Pull SELinux updates from Paul Moore:
    
     - The slow_avc_audit() function is now non-blocking so we can remove
       the AVC_NONBLOCKING tricks; this also includes the 'flags' variant of
       avc_has_perm().
    
     - Use kmemdup() instead of kcalloc()+copy when copying parts of the
       SELinux policydb.
    
     - The InfiniBand device name is now passed by reference when possible
       in the SELinux code, removing a strncpy().
    
     - Minor cleanups including: constification of avtab function args,
       removal of useless LSM/XFRM function args, SELinux kdoc fixes, and
       removal of redundant assignments.
    
    * tag 'selinux-pr-20210629' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux:
      selinux: kill 'flags' argument in avc_has_perm_flags() and avc_audit()
      selinux: slow_avc_audit has become non-blocking
      selinux: Fix kernel-doc
      selinux: use __GFP_NOWARN with GFP_NOWAIT in the AVC
      lsm_audit,selinux: pass IB device name by reference
      selinux: Remove redundant assignment to rc
      selinux: Corrected comment to match kernel-doc comment
      selinux: delete selinux_xfrm_policy_lookup() useless argument
      selinux: constify some avtab function arguments
      selinux: simplify duplicate_policydb_cond_list() by using kmemdup()
    torvalds committed Jun 30, 2021
  8. Merge tag 'clang-features-v5.14-rc1' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/kees/linux
    
    Pull clang feature updates from Kees Cook:
    
     - Add CC_HAS_NO_PROFILE_FN_ATTR in preparation for PGO support in the
       face of the noinstr attribute, paving the way for PGO and fixing
       GCOV. (Nick Desaulniers)
    
     - x86_64 LTO coverage is expanded to 32-bit x86. (Nathan Chancellor)
    
     - Small fixes to CFI. (Mark Rutland, Nathan Chancellor)
    
    * tag 'clang-features-v5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
      qemu_fw_cfg: Make fw_cfg_rev_attr a proper kobj_attribute
      Kconfig: Introduce ARCH_WANTS_NO_INSTR and CC_HAS_NO_PROFILE_FN_ATTR
      compiler_attributes.h: cleanups for GCC 4.9+
      compiler_attributes.h: define __no_profile, add to noinstr
      x86, lto: Enable Clang LTO for 32-bit as well
      CFI: Move function_nocfi() into compiler.h
      MAINTAINERS: Add Clang CFI section
    torvalds committed Jun 30, 2021
  9. Merge tag 'for-5.14/drivers-2021-06-29' of git://git.kernel.dk/linux-…

    …block
    
    Pull block driver updates from Jens Axboe:
     "Pretty calm round, mostly just NVMe and a bit of MD:
    
       - NVMe updates (via Christoph)
            - improve the APST configuration algorithm (Alexey Bogoslavsky)
            - look for StorageD3Enable on companion ACPI device
              (Mario Limonciello)
            - allow selecting the network interface for TCP connections
              (Martin Belanger)
            - misc cleanups (Amit Engel, Chaitanya Kulkarni, Colin Ian King,
              Christoph)
            - move the ACPI StorageD3 code to drivers/acpi/ and add quirks
              for certain AMD CPUs (Mario Limonciello)
            - zoned device support for nvmet (Chaitanya Kulkarni)
            - fix the rules for changing the serial number in nvmet
              (Noam Gottlieb)
            - various small fixes and cleanups (Dan Carpenter, JK Kim,
              Chaitanya Kulkarni, Hannes Reinecke, Wesley Sheng, Geert
              Uytterhoeven, Daniel Wagner)
    
       - MD updates (Via Song)
            - iostats rewrite (Guoqing Jiang)
            - raid5 lock contention optimization (Gal Ofri)
    
       - Fall through warning fix (Gustavo)
    
       - Misc fixes (Gustavo, Jiapeng)"
    
    * tag 'for-5.14/drivers-2021-06-29' of git://git.kernel.dk/linux-block: (78 commits)
      nvmet: use NVMET_MAX_NAMESPACES to set nn value
      loop: Fix missing discard support when using LOOP_CONFIGURE
      nvme.h: add missing nvme_lba_range_type endianness annotations
      nvme: remove zeroout memset call for struct
      nvme-pci: remove zeroout memset call for struct
      nvmet: remove zeroout memset call for struct
      nvmet: add ZBD over ZNS backend support
      nvmet: add Command Set Identifier support
      nvmet: add nvmet_req_bio put helper for backends
      nvmet: add req cns error complete helper
      block: export blk_next_bio()
      nvmet: remove local variable
      nvmet: use nvme status value directly
      nvmet: use u32 type for the local variable nsid
      nvmet: use u32 for nvmet_subsys max_nsid
      nvmet: use req->cmd directly in file-ns fast path
      nvmet: use req->cmd directly in bdev-ns fast path
      nvmet: make ver stable once connection established
      nvmet: allow mn change if subsys not discovered
      nvmet: make sn stable once connection was established
      ...
    torvalds committed Jun 30, 2021
  10. Merge tag 'for-5.14/block-2021-06-29' of git://git.kernel.dk/linux-block

    Pull core block updates from Jens Axboe:
    
     - disk events cleanup (Christoph)
    
     - gendisk and request queue allocation simplifications (Christoph)
    
     - bdev_disk_changed cleanups (Christoph)
    
     - IO priority improvements (Bart)
    
     - Chained bio completion trace fix (Edward)
    
     - blk-wbt fixes (Jan)
    
     - blk-wbt enable/disable fix (Zhang)
    
     - Scheduler dispatch improvements (Jan, Ming)
    
     - Shared tagset scheduler improvements (John)
    
     - BFQ updates (Paolo, Luca, Pietro)
    
     - BFQ lock inversion fix (Jan)
    
     - Documentation improvements (Kir)
    
     - CLONE_IO block cgroup fix (Tejun)
    
     - Remove of ancient and deprecated block dump feature (zhangyi)
    
     - Discard merge fix (Ming)
    
     - Misc fixes or followup fixes (Colin, Damien, Dan, Long, Max, Thomas,
       Yang)
    
    * tag 'for-5.14/block-2021-06-29' of git://git.kernel.dk/linux-block: (129 commits)
      block: fix discard request merge
      block/mq-deadline: Remove a WARN_ON_ONCE() call
      blk-mq: update hctx->dispatch_busy in case of real scheduler
      blk: Fix lock inversion between ioc lock and bfqd lock
      bfq: Remove merged request already in bfq_requests_merged()
      block: pass a gendisk to bdev_disk_changed
      block: move bdev_disk_changed
      block: add the events* attributes to disk_attrs
      block: move the disk events code to a separate file
      block: fix trace completion for chained bio
      block/partitions/msdos: Fix typo inidicator -> indicator
      block, bfq: reset waker pointer with shared queues
      block, bfq: check waker only for queues with no in-flight I/O
      block, bfq: avoid delayed merge of async queues
      block, bfq: boost throughput by extending queue-merging times
      block, bfq: consider also creation time in delayed stable merge
      block, bfq: fix delayed stable merge check
      block, bfq: let also stably merged queues enjoy weight raising
      blk-wbt: make sure throttle is enabled properly
      blk-wbt: introduce a new disable state to prevent false positive by rwb_enabled()
      ...
    torvalds committed Jun 30, 2021
  11. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/hid/hid
    
    Pull HID updates from Jiri Kosina:
    
     - patch series that ensures that hid-multitouch driver disables touch
       and button-press reporting on hid-mt devices during suspend when the
       device is not configured as a wakeup-source, from Hans de Goede
    
     - support for ISH DMA on Intel EHL platform, from Even Xu
    
     - support for Renoir and Cezanne SoCs, Ambient Light Sensor and Human
       Presence Detection sensor for amd-sfh driver, from Basavaraj Natikar
    
     - other assorted code cleanups and device-specific fixes/quirks
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid: (45 commits)
      HID: thrustmaster: Switch to kmemdup() when allocate change_request
      HID: multitouch: Disable event reporting on suspend when the device is not a wakeup-source
      HID: logitech-dj: Implement may_wakeup ll-driver callback
      HID: usbhid: Implement may_wakeup ll-driver callback
      HID: core: Add hid_hw_may_wakeup() function
      HID: input: Add support for Programmable Buttons
      HID: wacom: Correct base usage for capacitive ExpressKey status bits
      HID: amd_sfh: Add initial support for HPD sensor
      HID: amd_sfh: Extend ALS support for newer AMD platform
      HID: amd_sfh: Extend driver capabilities for multi-generation support
      HID: surface-hid: Fix get-report request
      HID: sony: fix freeze when inserting ghlive ps3/wii dongles
      HID: usbkbd: Avoid GFP_ATOMIC when GFP_KERNEL is possible
      HID: amd_sfh: change in maintainer
      HID: intel-ish-hid: ipc: Specify that EHL no cache snooping
      HID: intel-ish-hid: ishtp: Add dma_no_cache_snooping() callback
      HID: intel-ish-hid: Set ISH driver depends on x86
      HID: hid-input: add Surface Go battery quirk
      HID: intel-ish-hid: Fix minor typos in comments
      HID: usbmouse: Avoid GFP_ATOMIC when GFP_KERNEL is possible
      ...
    torvalds committed Jun 30, 2021
  12. Merge tag 'edac_updates_for_v5.14' of git://git.kernel.org/pub/scm/li…

    …nux/kernel/git/ras/ras
    
    Pull EDAC updates from Tony Luck:
     "Various fixes and support for new CPUs:
    
       - Clean up error messages from thunderx_edac
    
       - Add MODULE_DEVICE_TABLE to ti_edac so it will autoload
    
       - Use %pR to print resources in aspeed_edac
    
       - Add Yazen Ghannam as MAINTAINER for AMD edac drivers
    
       - Fix Ice Lake and Sapphire Rapids drivers to report correct "near"
         or "far" device for errors in 2LM configurations
    
       - Add support of on package high bandwidth memory in Sapphire Rapids
    
       - New CPU support for three CPUs supporting in-band ECC (IOT SKUs for
         ICL-NNPI, Tiger Lake and Alder Lake)
    
       - Don't even try to load Intel EDAC drivers when running as a guest
    
       - Fix Kconfig dependency on X86_MCE_INTEL for EDAC_IGEN6"
    
    * tag 'edac_updates_for_v5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras:
      EDAC/igen6: fix core dependency
      EDAC/Intel: Do not load EDAC driver when running as a guest
      EDAC/igen6: Add Intel Alder Lake SoC support
      EDAC/igen6: Add Intel Tiger Lake SoC support
      EDAC/igen6: Add Intel ICL-NNPI SoC support
      EDAC/i10nm: Add support for high bandwidth memory
      EDAC/i10nm: Add detection of memory levels for ICX/SPR servers
      EDAC/skx_common: Add new ADXL components for 2-level memory
      MAINTAINERS: Make Yazen Ghannam maintainer for EDAC-AMD64
      EDAC/aspeed: Use proper format string for printing resource
      EDAC/ti: Add missing MODULE_DEVICE_TABLE
      EDAC/thunderx: Remove irrelevant variable from error messages
    torvalds committed Jun 30, 2021
  13. Merge tag 'tpmdd-next-v5.14-rc1' of git://git.kernel.org/pub/scm/linu…

    …x/kernel/git/jarkko/linux-tpmdd
    
    Pull tpm driver updates from Jarkko Sakkinen:
     "Bug fixes for TPM"
    
    [ This isn't actually the whole contents of the tag and thus doesn't
      contain Jarkko's signature - I dropped the two top commits that added
      support for signing modules using elliptic curve keys because there's
      a new series for that that fixes a few confising things   - Linus ]
    
    * tag 'tpmdd-next-v5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd:
      tpm: Replace WARN_ONCE() with dev_err_once() in tpm_tis_status()
      tpm_tis: Use DEFINE_RES_MEM() to simplify code
      tpm: fix some doc warnings in tpm1-cmd.c
      tpm_tis_spi: add missing SPI device ID entries
      tpm: add longer timeout for TPM2_CC_VERIFY_SIGNATURE
      char: tpm: move to use request_irq by IRQF_NO_AUTOEN flag
      tpm_tis_spi: set default probe function if device id not match
      tpm_crb: Use IOMEM_ERR_PTR when function returns iomem
    torvalds committed Jun 30, 2021
  14. Merge tag 'platform-drivers-x86-v5.14-1' of git://git.kernel.org/pub/…

    …scm/linux/kernel/git/pdx86/platform-drivers-x86
    
    Pull x86 platform driver updates from Hans de Goede:
     "Highlights:
    
       - New think-lmi driver adding support for changing Lenovo Thinkpad
         BIOS settings from within Linux using the standard firmware-
         attributes class sysfs API
    
       - MS Surface aggregator-cdev now also supports forwarding events to
         user-space (for debugging / new driver development purposes only)
    
       - New intel_skl_int3472 driver this provides the necessary glue to
         translate ACPI table information to GPIOs, regulators, etc. for
         camera sensors on Intel devices with IPU3 attached MIPI cameras
    
       - A whole bunch of other fixes + device-specific quirk additions
    
       - New devm_work_autocancel() devm-helpers.h function"
    
    * tag 'platform-drivers-x86-v5.14-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86: (83 commits)
      platform/x86: dell-wmi-sysman: Change user experience when Admin/System Password is modified
      platform/x86: intel_skl_int3472: Uninitialized variable in skl_int3472_handle_gpio_resources()
      platform/x86: think-lmi: Move kfree(setting->possible_values) to tlmi_attr_setting_release()
      platform/x86: think-lmi: Split current_value to reflect only the value
      platform/x86: think-lmi: Fix issues with duplicate attributes
      platform/x86: think-lmi: Return EINVAL when kbdlang gets set to a 0 length string
      platform/x86: intel_cht_int33fe: Move to its own subfolder
      platform/x86: intel_skl_int3472: Move to intel/ subfolder
      platform/x86: intel_skl_int3472: Provide skl_int3472_unregister_clock()
      platform/x86: intel_skl_int3472: Provide skl_int3472_unregister_regulator()
      platform/x86: intel_skl_int3472: Use ACPI GPIO resource directly
      platform/x86: intel_skl_int3472: Fix dependencies (drop CLKDEV_LOOKUP)
      platform/x86: intel_skl_int3472: Free ACPI device resources after use
      platform/x86: Remove "default n" entries
      platform/x86: ISST: Use numa node id for cpu pci dev mapping
      platform/x86: ISST: Optimize CPU to PCI device mapping
      tools/power/x86/intel-speed-select: v1.10 release
      tools/power/x86/intel-speed-select: Fix uncore memory frequency display
      extcon: extcon-max8997: Simplify driver using devm
      extcon: extcon-max8997: Fix IRQ freeing at error path
      ...
    torvalds committed Jun 30, 2021
  15. Merge tag 'mailbox-v5.14' of git://git.linaro.org/landing-teams/worki…

    …ng/fujitsu/integration
    
    Pull mailbox updates from Jassi Brar:
    
     - imx: add support for i.MX8ULP
    
     - mtk: code change around callback struct
    
     - qcom: add sm6125, MSM8939 fix for channel exhaustion
    
     - microchip: add support for polarfire controller
    
     - misc: cosmetic changes to bcm-2835,flexrm,pdc, arm-mhu and hisilicon
    
    * tag 'mailbox-v5.14' of git://git.linaro.org/landing-teams/working/fujitsu/integration: (26 commits)
      MAINTAINERS: add entry for polarfire soc mailbox
      dt-bindings: add bindings for polarfire soc system controller
      mbox: add polarfire soc system controller mailbox
      dt-bindings: add bindings for polarfire soc mailbox
      mailbox: imx: Avoid using val uninitialized in imx_mu_isr()
      mailbox: qcom: Add MSM8939 APCS support
      mailbox: qcom: Use PLATFORM_DEVID_AUTO to register platform device
      dt-bindings: mailbox: qcom: Add MSM8939 APCS compatible
      mailbox: qcom-apcs: Add SM6125 compatible
      dt-bindings: mailbox: Add binding for sm6125
      mailbox: mtk-cmdq: Fix uninitialized variable in cmdq_mbox_flush()
      mailbox: bcm-flexrm-mailbox: Remove redundant dev_err call in flexrm_mbox_probe()
      mailbox: bcm2835: Remove redundant dev_err call in bcm2835_mbox_probe()
      mailbox: qcom-ipcc: Fix IPCC mbox channel exhaustion
      mailbox: mtk-cmdq: Add struct cmdq_pkt in struct cmdq_cb_data
      mailbox: mtk-cmdq: Use mailbox rx_callback
      mailbox: mtk-cmdq: Remove cmdq_cb_status
      mailbox: imx-mailbox: support i.MX8ULP MU
      mailbox: imx: add xSR/xCR register array
      mailbox: imx: replace the xTR/xRR array with single register
      ...
    torvalds committed Jun 30, 2021
  16. Merge tag 'for-linus-5.14-1' of git://github.com/cminyard/linux-ipmi

    Pull IPMI driver updates from Corey Minyard:
     "Mostly a restructure of the kcs_bmc driver to make it easier to use
      with different types of devices, and just to clean things up and
      improve things.
    
      Also some bug fixes for the kcs_bmc driver.
    
      One fix to the IPMI watchdog to stop the timer when the action is
      none. Not a big deal, but it's the right thing to do"
    
    * tag 'for-linus-5.14-1' of git://github.com/cminyard/linux-ipmi:
      ipmi: kcs_bmc_aspeed: Fix less than zero comparison of a unsigned int
      ipmi: kcs_bmc_aspeed: Optionally apply status address
      ipmi: kcs_bmc_aspeed: Fix IBFIE typo from datasheet
      ipmi: kcs_bmc_aspeed: Implement KCS SerIRQ configuration
      dt-bindings: ipmi: Add optional SerIRQ property to ASPEED KCS devices
      dt-bindings: ipmi: Convert ASPEED KCS binding to schema
      ipmi: kcs_bmc: Add serio adaptor
      ipmi: kcs_bmc: Enable IBF on open
      ipmi: kcs_bmc: Allow clients to control KCS IRQ state
      ipmi: kcs_bmc: Decouple the IPMI chardev from the core
      ipmi: kcs_bmc: Strip private client data from struct kcs_bmc
      ipmi: kcs_bmc: Split headers into device and client
      ipmi: kcs_bmc: Turn the driver data-structures inside-out
      ipmi: kcs_bmc: Split out kcs_bmc_cdev_ipmi
      ipmi: kcs_bmc: Rename {read,write}_{status,data}() functions
      ipmi: kcs_bmc: Make status update atomic
      ipmi: kcs_bmc_aspeed: Use of match data to extract KCS properties
      ipmi/watchdog: Stop watchdog timer when the current action is 'none'
    torvalds committed Jun 30, 2021
  17. Merge branch 'sched/core' into sched/urgent, to pick up fix

    Pick up a fix for a warning that several people reported.
    
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    Ingo Molnar committed Jun 30, 2021
  18. Merge branch 'for-5.14/multitouch' into for-linus

    - patch series that ensures that hid-multitouch driver disables touch and
      button-press reporting on hid-mt devices during suspend when the device is
      not configured as a wakeup-source, from Hans de Goede
    Jiri Kosina committed Jun 30, 2021
  19. Merge branch 'for-5.14/logitech' into for-linus

    - support for LCD menu keys + LCD brightness control on the Logitech Z-10
      speakers (with LCD) which use the same protocol as the G15 keyboards
      from Hans de Goede
    Jiri Kosina committed Jun 30, 2021
Older