1. 14 Dec, 2022 14 commits
    • Linus Torvalds's avatar
      Merge tag 'x86_core_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 94a85511
      Linus Torvalds authored
      Pull x86 core updates from Borislav Petkov:
      
       - Add the call depth tracking mitigation for Retbleed which has been
         long in the making. It is a lighterweight software-only fix for
         Skylake-based cores where enabling IBRS is a big hammer and causes a
         significant performance impact.
      
         What it basically does is, it aligns all kernel functions to 16 bytes
         boundary and adds a 16-byte padding before the function, objtool
         collects all functions' locations and when the mitigation gets
         applied, it patches a call accounting thunk which is used to track
         the call depth of the stack at any time.
      
         When that call depth reaches a magical, microarchitecture-specific
         value for the Return Stack Buffer, the code stuffs that RSB and
         avoids its underflow which could otherwise lead to the Intel variant
         of Retbleed.
      
         This software-only solution brings a lot of the lost performance
         back, as benchmarks suggest:
      
             https://lore.kernel.org/all/20220915111039.092790446@infradead.org/
      
         That page above also contains a lot more detailed explanation of the
         whole mechanism
      
       - Implement a new control flow integrity scheme called FineIBT which is
         based on the software kCFI implementation and uses hardware IBT
         support where present to annotate and track indirect branches using a
         hash to validate them
      
       - Other misc fixes and cleanups
      
      * tag 'x86_core_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (80 commits)
        x86/paravirt: Use common macro for creating simple asm paravirt functions
        x86/paravirt: Remove clobber bitmask from .parainstructions
        x86/debug: Include percpu.h in debugreg.h to get DECLARE_PER_CPU() et al
        x86/cpufeatures: Move X86_FEATURE_CALL_DEPTH from bit 18 to bit 19 of word 11, to leave space for WIP X86_FEATURE_SGX_EDECCSSA bit
        x86/Kconfig: Enable kernel IBT by default
        x86,pm: Force out-of-line memcpy()
        objtool: Fix weak hole vs prefix symbol
        objtool: Optimize elf_dirty_reloc_sym()
        x86/cfi: Add boot time hash randomization
        x86/cfi: Boot time selection of CFI scheme
        x86/ibt: Implement FineIBT
        objtool: Add --cfi to generate the .cfi_sites section
        x86: Add prefix symbols for function padding
        objtool: Add option to generate prefix symbols
        objtool: Avoid O(bloody terrible) behaviour -- an ode to libelf
        objtool: Slice up elf_create_section_symbol()
        kallsyms: Revert "Take callthunks into account"
        x86: Unconfuse CONFIG_ and X86_FEATURE_ namespaces
        x86/retpoline: Fix crash printing warning
        x86/paravirt: Fix a !PARAVIRT build warning
        ...
      94a85511
    • Linus Torvalds's avatar
      Merge tag 'apparmor-pr-2022-12-14' of... · 93761c93
      Linus Torvalds authored
      Merge tag 'apparmor-pr-2022-12-14' of git://git.kernel.org/pub/scm/linux/kernel/git/jj/linux-apparmor
      
      Pull apparmor updates from John Johansen:
       "Features:
         - switch to zstd compression for profile raw data
      
        Cleanups:
         - simplify obtaining the newest label on a cred
         - remove useless static inline functions
         - compute permission conversion on policy unpack
         - refactor code to share common permissins
         - refactor unpack to group policy backwards compatiblity code
         - add __init annotation to aa_{setup/teardown}_dfa_engine()
      
        Bug Fixes:
         - fix a memleak in
             - multi_transaction_new()
             - free_ruleset()
             - unpack_profile()
             - alloc_ns()
         - fix lockdep warning when removing a namespace
         - fix regression in stacking due to label flags
         - fix loading of child before parent
         - fix kernel-doc comments that differ from fns
         - fix spelling errors in comments
         - store return value of unpack_perms_table() to signed variable"
      
      * tag 'apparmor-pr-2022-12-14' of git://git.kernel.org/pub/scm/linux/kernel/git/jj/linux-apparmor: (64 commits)
        apparmor: Fix uninitialized symbol 'array_size' in policy_unpack_test.c
        apparmor: Add __init annotation to aa_{setup/teardown}_dfa_engine()
        apparmor: Fix memleak in alloc_ns()
        apparmor: Fix memleak issue in unpack_profile()
        apparmor: fix a memleak in free_ruleset()
        apparmor: Fix spelling of function name in comment block
        apparmor: Use pointer to struct aa_label for lbs_cred
        AppArmor: Fix kernel-doc
        LSM: Fix kernel-doc
        AppArmor: Fix kernel-doc
        apparmor: Fix loading of child before parent
        apparmor: refactor code that alloc null profiles
        apparmor: fix obsoleted comments for aa_getprocattr() and audit_resource()
        apparmor: remove useless static inline functions
        apparmor: Fix unpack_profile() warn: passing zero to 'ERR_PTR'
        apparmor: fix uninitialize table variable in error in unpack_trans_table
        apparmor: store return value of unpack_perms_table() to signed variable
        apparmor: Fix kunit test for out of bounds array
        apparmor: Fix decompression of rawdata for read back to userspace
        apparmor: Fix undefined references to zstd_ symbols
        ...
      93761c93
    • Linus Torvalds's avatar
      Merge tag 'v6.2-p1' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 64e7003c
      Linus Torvalds authored
      Pull crypto updates from Herbert Xu:
       "API:
         - Optimise away self-test overhead when they are disabled
         - Support symmetric encryption via keyring keys in af_alg
         - Flip hwrng default_quality, the default is now maximum entropy
      
        Algorithms:
         - Add library version of aesgcm
         - CFI fixes for assembly code
         - Add arm/arm64 accelerated versions of sm3/sm4
      
        Drivers:
         - Remove assumption on arm64 that kmalloc is DMA-aligned
         - Fix selftest failures in rockchip
         - Add support for RK3328/RK3399 in rockchip
         - Add deflate support in qat
         - Merge ux500 into stm32
         - Add support for TEE for PCI ID 0x14CA in ccp
         - Add mt7986 support in mtk
         - Add MaxLinear platform support in inside-secure
         - Add NPCM8XX support in npcm"
      
      * tag 'v6.2-p1' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (184 commits)
        crypto: ux500/cryp - delete driver
        crypto: stm32/cryp - enable for use with Ux500
        crypto: stm32 - enable drivers to be used on Ux500
        dt-bindings: crypto: Let STM32 define Ux500 CRYP
        hwrng: geode - Fix PCI device refcount leak
        hwrng: amd - Fix PCI device refcount leak
        crypto: qce - Set DMA alignment explicitly
        crypto: octeontx2 - Set DMA alignment explicitly
        crypto: octeontx - Set DMA alignment explicitly
        crypto: keembay - Set DMA alignment explicitly
        crypto: safexcel - Set DMA alignment explicitly
        crypto: hisilicon/hpre - Set DMA alignment explicitly
        crypto: chelsio - Set DMA alignment explicitly
        crypto: ccree - Set DMA alignment explicitly
        crypto: ccp - Set DMA alignment explicitly
        crypto: cavium - Set DMA alignment explicitly
        crypto: img-hash - Fix variable dereferenced before check 'hdev->req'
        crypto: arm64/ghash-ce - use frame_push/pop macros consistently
        crypto: arm64/crct10dif - use frame_push/pop macros consistently
        crypto: arm64/aes-modes - use frame_push/pop macros consistently
        ...
      64e7003c
    • Linus Torvalds's avatar
      Merge tag 'hardening-v6.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux · 48ea09cd
      Linus Torvalds authored
      Pull kernel hardening updates from Kees Cook:
      
       - Convert flexible array members, fix -Wstringop-overflow warnings, and
         fix KCFI function type mismatches that went ignored by maintainers
         (Gustavo A. R. Silva, Nathan Chancellor, Kees Cook)
      
       - Remove the remaining side-effect users of ksize() by converting
         dma-buf, btrfs, and coredump to using kmalloc_size_roundup(), add
         more __alloc_size attributes, and introduce full testing of all
         allocator functions. Finally remove the ksize() side-effect so that
         each allocation-aware checker can finally behave without exceptions
      
       - Introduce oops_limit (default 10,000) and warn_limit (default off) to
         provide greater granularity of control for panic_on_oops and
         panic_on_warn (Jann Horn, Kees Cook)
      
       - Introduce overflows_type() and castable_to_type() helpers for cleaner
         overflow checking
      
       - Improve code generation for strscpy() and update str*() kern-doc
      
       - Convert strscpy and sigphash tests to KUnit, and expand memcpy tests
      
       - Always use a non-NULL argument for prepare_kernel_cred()
      
       - Disable structleak plugin in FORTIFY KUnit test (Anders Roxell)
      
       - Adjust orphan linker section checking to respect CONFIG_WERROR (Xin
         Li)
      
       - Make sure siginfo is cleared for forced SIGKILL (haifeng.xu)
      
       - Fix um vs FORTIFY warnings for always-NULL arguments
      
      * tag 'hardening-v6.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux: (31 commits)
        ksmbd: replace one-element arrays with flexible-array members
        hpet: Replace one-element array with flexible-array member
        um: virt-pci: Avoid GCC non-NULL warning
        signal: Initialize the info in ksignal
        lib: fortify_kunit: build without structleak plugin
        panic: Expose "warn_count" to sysfs
        panic: Introduce warn_limit
        panic: Consolidate open-coded panic_on_warn checks
        exit: Allow oops_limit to be disabled
        exit: Expose "oops_count" to sysfs
        exit: Put an upper limit on how often we can oops
        panic: Separate sysctl logic from CONFIG_SMP
        mm/pgtable: Fix multiple -Wstringop-overflow warnings
        mm: Make ksize() a reporting-only function
        kunit/fortify: Validate __alloc_size attribute results
        drm/sti: Fix return type of sti_{dvo,hda,hdmi}_connector_mode_valid()
        drm/fsl-dcu: Fix return type of fsl_dcu_drm_connector_mode_valid()
        driver core: Add __alloc_size hint to devm allocators
        overflow: Introduce overflows_type() and castable_to_type()
        coredump: Proactively round up to kmalloc bucket size
        ...
      48ea09cd
    • Linus Torvalds's avatar
      Merge tag 'memblock-v6.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock · ad76bf1f
      Linus Torvalds authored
      Pull memblock updates from Mike Rapoport:
       "Extend test coverage:
      
         - add tests that trigger reallocation of memblock structures from
           memblock itself via memblock_double_array()
      
         - add tests for memblock_alloc_exact_nid_raw() that verify that
           requested node and memory range constraints are respected"
      
      * tag 'memblock-v6.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock:
        memblock tests: remove completed TODO item
        memblock tests: add generic NUMA tests for memblock_alloc_exact_nid_raw
        memblock tests: add bottom-up NUMA tests for memblock_alloc_exact_nid_raw
        memblock tests: add top-down NUMA tests for memblock_alloc_exact_nid_raw
        memblock tests: introduce range tests for memblock_alloc_exact_nid_raw
        memblock test: Update TODO list
        memblock test: Add test to memblock_reserve() 129th region
        memblock test: Add test to memblock_add() 129th region
      ad76bf1f
    • Linus Torvalds's avatar
      Merge tag 'for-linus-6.2-ofs1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux · 6f1f5cae
      Linus Torvalds authored
      Pull orangefs updates from Mike Marshall:
      
       - fix problems with memory leaks on exit in sysfs and debufs (Zhang)
      
       - remove an unused variable and an unneeded assignment (Colin)
      
      * tag 'for-linus-6.2-ofs1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux:
        orangefs: Fix kmemleak in orangefs_{kernel,client}_debug_init()
        orangefs: Fix kmemleak in orangefs_sysfs_init()
        orangefs: Fix kmemleak in orangefs_prepare_debugfs_help_string()
        orangefs: Fix sysfs not cleanup when dev init failed
        orangefs: remove redundant assignment to variable buffer_index
        orangefs: remove variable i
      6f1f5cae
    • Linus Torvalds's avatar
      Merge tag 'ceph-for-6.2-rc1' of https://github.com/ceph/ceph-client · cfb31624
      Linus Torvalds authored
      Pull cph update from Ilya Dryomov:
       "A fix to facilitate prompt cap releases on async creates from Xiubo.
      
        This should address sporadic "client isn't responding to mclientcaps
        (revoke) ..." warnings and potential associated MDS hangs"
      
      * tag 'ceph-for-6.2-rc1' of https://github.com/ceph/ceph-client:
        ceph: try to check caps immediately after async creating finishes
        ceph: remove useless session parameter for check_caps()
      cfb31624
    • Linus Torvalds's avatar
      Merge tag 'xfs-6.2-merge-8' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · 87be9499
      Linus Torvalds authored
      Pull XFS updates from Darrick Wong:
       "The highlight of this is a batch of fixes for the online metadata
        checking code as we start the loooong march towards merging online
        repair. I aim to merge that in time for the 2023 LTS.
      
        There are also a large number of data corruption and race condition
        fixes in this patchset. Most notably fixed are write() calls to
        unwritten extents racing with writeback, which required some late(r
        than I prefer) code changes to iomap to support the necessary
        revalidations. I don't really like iomap changes going in past -rc4,
        but Dave and I have been working on it long enough that I chose to
        push it for 6.2 anyway.
      
        There are also a number of other subtle problems fixed, including the
        log racing with inode writeback to write inodes with incorrect link
        count to disk; file data mapping corruptions as a result of incorrect
        lock cycling when attaching dquots; refcount metadata corruption if
        one actually manages to share a block 2^32 times; and the log
        clobbering cow staging extents if they were formerly metadata blocks.
      
        Summary:
      
         - Fix a race condition w.r.t. percpu inode free counters
      
         - Fix a broken error return in xfs_remove
      
         - Print FS UUID at mount/unmount time
      
         - Numerous fixes to the online fsck code
      
         - Fix inode locking inconsistency problems when dealing with realtime
           metadata files
      
         - Actually merge pull requests so that we capture the cover letter
           contents
      
         - Fix a race between rebuilding VFS inode state and the AIL flushing
           inodes that could cause corrupt inodes to be written to the
           filesystem
      
         - Fix a data corruption problem resulting from a write() to an
           unwritten extent racing with writeback started on behalf of memory
           reclaim changing the extent state
      
         - Add debugging knobs so that we can test iomap invalidation
      
         - Fix the blockdev pagecache contents being stale after unmounting
           the filesystem, leading to spurious xfs_db errors and corrupt
           metadumps
      
         - Fix a file mapping corruption bug due to ilock cycling when
           attaching dquots to a file during delalloc reservation
      
         - Fix a refcount btree corruption problem due to the refcount
           adjustment code not handling MAXREFCOUNT correctly, resulting in
           unnecessary record splits
      
         - Fix COW staging extent alloctions not being classified as USERDATA,
           which results in filestreams being ignored and possible data
           corruption if the allocation was filled from the AGFL and the block
           buffer is still being tracked in the AIL
      
         - Fix new duplicated includes
      
         - Fix a race between the dquot shrinker and dquot freeing that could
           cause a UAF"
      
      * tag 'xfs-6.2-merge-8' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (50 commits)
        xfs: dquot shrinker doesn't check for XFS_DQFLAG_FREEING
        xfs: Remove duplicated include in xfs_iomap.c
        xfs: invalidate xfs_bufs when allocating cow extents
        xfs: get rid of assert from xfs_btree_islastblock
        xfs: estimate post-merge refcounts correctly
        xfs: hoist refcount record merge predicates
        xfs: fix super block buf log item UAF during force shutdown
        xfs: wait iclog complete before tearing down AIL
        xfs: attach dquots to inode before reading data/cow fork mappings
        xfs: shut up -Wuninitialized in xfsaild_push
        xfs: use memcpy, not strncpy, to format the attr prefix during listxattr
        xfs: invalidate block device page cache during unmount
        xfs: add debug knob to slow down write for fun
        xfs: add debug knob to slow down writeback for fun
        xfs: drop write error injection is unfixable, remove it
        xfs: use iomap_valid method to detect stale cached iomaps
        iomap: write iomap validity checks
        xfs: xfs_bmap_punch_delalloc_range() should take a byte range
        iomap: buffered write failure should not truncate the page cache
        xfs,iomap: move delalloc punching to iomap
        ...
      87be9499
    • Linus Torvalds's avatar
      Merge tag 'pci-v6.2-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · c7020e1b
      Linus Torvalds authored
      Pull PCI updates from Bjorn Helgaas:
       "Enumeration:
      
         - Squash portdrv_{core,pci}.c into portdrv.c to ease maintenance and
           make more things static.
      
         - Make portdrv bind to Switch Ports that have AER. Previously, if
           these Ports lacked MSI/MSI-X, portdrv failed to bind, which meant
           the Ports couldn't be suspended to low-power states. AER on these
           Ports doesn't use interrupts, and the AER driver doesn't need to
           claim them.
      
         - Assign PCI domain IDs using ida_alloc(), which makes host bridge
           add/remove work better.
      
        Resource management:
      
         - To work better with recent BIOSes that use EfiMemoryMappedIO for
           PCI host bridge apertures, remove those regions from the E820 map
           (E820 entries normally prevent us from allocating BARs). In v5.19,
           we added some quirks to disable E820 checking, but that's not very
           maintainable. EfiMemoryMappedIO means the OS needs to map the
           region for use by EFI runtime services; it shouldn't prevent OS
           from using it.
      
        PCIe native device hotplug:
      
         - Build pciehp by default if USB4 is enabled, since Thunderbolt/USB4
           PCIe tunneling depends on native PCIe hotplug.
      
         - Enable Command Completed Interrupt only if supported to avoid user
           confusion from lspci output that says this is enabled but not
           supported.
      
         - Prevent pciehp from binding to Switch Upstream Ports; this happened
           because of interaction with acpiphp and caused devices below the
           Upstream Port to disappear.
      
        Power management:
      
         - Convert AGP drivers to generic power management. We hope to remove
           legacy power management from the PCI core eventually.
      
        Virtualization:
      
         - Fix pci_device_is_present(), which previously always returned
           "false" for VFs, causing virtio hangs when unbinding the driver.
      
        Miscellaneous:
      
         - Convert drivers to gpiod API to prepare for dropping some legacy
           code.
      
         - Fix DOE fencepost error for the maximum data object length.
      
        Baikal-T1 PCIe controller driver:
      
         - Add driver and DT bindings.
      
        Broadcom STB PCIe controller driver:
      
         - Enable Multi-MSI.
      
         - Delay 100ms after PERST# deassert to allow power and clocks to
           stabilize.
      
         - Configure Read Completion Boundary to 64 bytes.
      
        Freescale i.MX6 PCIe controller driver:
      
         - Initialize PHY before deasserting core reset to fix a regression in
           v6.0 on boards where the PHY provides the reference.
      
         - Fix imx6sx and imx8mq clock names in DT schema.
      
        Intel VMD host bridge driver:
      
         - Fix Secondary Bus Reset on VMD bridges, which allows reset of NVMe
           SSDs in VT-d pass-through scenarios.
      
         - Disable MSI remapping, which gets re-enabled by firmware during
           suspend/resume.
      
        MediaTek PCIe Gen3 controller driver:
      
         - Add MT7986 and MT8195 support.
      
        Qualcomm PCIe controller driver:
      
         - Add SC8280XP/SA8540P basic interconnect support.
      
        Rockchip DesignWare PCIe controller driver:
      
         - Base DT schema on common Synopsys schema.
      
        Synopsys DesignWare PCIe core:
      
         - Collect DT items shared between Root Port and Endpoint (PERST GPIO,
           PHY info, clocks, resets, link speed, number of lanes, number of
           iATU windows, interrupt info, etc) to snps,dw-pcie-common.yaml.
      
         - Add dma-ranges support for Root Ports and Endpoints.
      
         - Consolidate DT resource retrieval for "dbi", "dbi2", "atu", etc. to
           reduce code duplication.
      
         - Add generic names for clocks and resets to encourage more
           consistent naming across drivers using DesignWare IP.
      
         - Stop advertising PTM Responder role for Endpoints, which aren't
           allowed to be responders.
      
        TI J721E PCIe driver:
      
         - Add j721s2 host mode ID to DT schema.
      
         - Add interrupt properties to DT schema.
      
        Toshiba Visconti PCIe controller driver:
      
         - Fix interrupts array max constraints in DT schema"
      
      * tag 'pci-v6.2-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (95 commits)
        x86/PCI: Use pr_info() when possible
        x86/PCI: Fix log message typo
        x86/PCI: Tidy E820 removal messages
        PCI: Skip allocate_resource() if too little space available
        efi/x86: Remove EfiMemoryMappedIO from E820 map
        PCI/portdrv: Allow AER service only for Root Ports & RCECs
        PCI: xilinx-nwl: Fix coding style violations
        PCI: mvebu: Switch to using gpiod API
        PCI: pciehp: Enable Command Completed Interrupt only if supported
        PCI: aardvark: Switch to using devm_gpiod_get_optional()
        dt-bindings: PCI: mediatek-gen3: add support for mt7986
        dt-bindings: PCI: mediatek-gen3: add SoC based clock config
        dt-bindings: PCI: qcom: Allow 'dma-coherent' property
        PCI: mt7621: Add sentinel to quirks table
        PCI: vmd: Fix secondary bus reset for Intel bridges
        PCI: endpoint: pci-epf-vntb: Fix sparse ntb->reg build warning
        PCI: endpoint: pci-epf-vntb: Fix sparse build warning for epf_db
        PCI: endpoint: pci-epf-vntb: Replace hardcoded 4 with sizeof(u32)
        PCI: endpoint: pci-epf-vntb: Remove unused epf_db_phy struct member
        PCI: endpoint: pci-epf-vntb: Fix call pci_epc_mem_free_addr() in error path
        ...
      c7020e1b
    • Linus Torvalds's avatar
      Merge tag 'i3c/for-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/i3c/linux · a0a6c76c
      Linus Torvalds authored
      Pull i3c updates from Alexandre Belloni:
       "A non-urgent fix and SETDASA is now exported to drivers"
      
      * tag 'i3c/for-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/i3c/linux:
        MAINTAINERS: mark I3C DRIVER FOR SYNOPSYS DESIGNWARE orphan
        i3c: export SETDASA method
        i3c: Correct the macro module_i3c_i2c_driver
      a0a6c76c
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma · ab425feb
      Linus Torvalds authored
      Pull rdma updates from Jason Gunthorpe:
       "Usual size of updates, a new driver, and most of the bulk focusing on
        rxe:
      
         - Usual typos, style, and language updates
      
         - Driver updates for mlx5, irdma, siw, rts, srp, hfi1, hns, erdma,
           mlx4, srp
      
         - Lots of RXE updates:
            * Improve reply error handling for bad MR operations
            * Code tidying
            * Debug printing uses common loggers
            * Remove half implemented RD related stuff
            * Support IBA's recently defined Atomic Write and Flush operations
      
         - erdma support for atomic operations
      
         - New driver 'mana' for Ethernet HW available in Azure VMs. This
           driver only supports DPDK"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma: (122 commits)
        IB/IPoIB: Fix queue count inconsistency for PKEY child interfaces
        RDMA: Add missed netdev_put() for the netdevice_tracker
        RDMA/rxe: Enable RDMA FLUSH capability for rxe device
        RDMA/cm: Make QP FLUSHABLE for supported device
        RDMA/rxe: Implement flush completion
        RDMA/rxe: Implement flush execution in responder side
        RDMA/rxe: Implement RC RDMA FLUSH service in requester side
        RDMA/rxe: Extend rxe packet format to support flush
        RDMA/rxe: Allow registering persistent flag for pmem MR only
        RDMA/rxe: Extend rxe user ABI to support flush
        RDMA: Extend RDMA kernel verbs ABI to support flush
        RDMA: Extend RDMA user ABI to support flush
        RDMA/rxe: Fix incorrect responder length checking
        RDMA/rxe: Fix oops with zero length reads
        RDMA/mlx5: Remove not-used IB_FLOW_SPEC_IB define
        RDMA/hns: Fix XRC caps on HIP08
        RDMA/hns: Fix error code of CMD
        RDMA/hns: Fix page size cap from firmware
        RDMA/hns: Fix PBL page MTR find
        RDMA/hns: Fix AH attr queried by query_qp
        ...
      ab425feb
    • Linus Torvalds's avatar
      Merge tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd · 08cdc215
      Linus Torvalds authored
      Pull iommufd implementation from Jason Gunthorpe:
       "iommufd is the user API to control the IOMMU subsystem as it relates
        to managing IO page tables that point at user space memory.
      
        It takes over from drivers/vfio/vfio_iommu_type1.c (aka the VFIO
        container) which is the VFIO specific interface for a similar idea.
      
        We see a broad need for extended features, some being highly IOMMU
        device specific:
         - Binding iommu_domain's to PASID/SSID
         - Userspace IO page tables, for ARM, x86 and S390
         - Kernel bypassed invalidation of user page tables
         - Re-use of the KVM page table in the IOMMU
         - Dirty page tracking in the IOMMU
         - Runtime Increase/Decrease of IOPTE size
         - PRI support with faults resolved in userspace
      
        Many of these HW features exist to support VM use cases - for instance
        the combination of PASID, PRI and Userspace IO Page Tables allows an
        implementation of DMA Shared Virtual Addressing (vSVA) within a guest.
        Dirty tracking enables VM live migration with SRIOV devices and PASID
        support allow creating "scalable IOV" devices, among other things.
      
        As these features are fundamental to a VM platform they need to be
        uniformly exposed to all the driver families that do DMA into VMs,
        which is currently VFIO and VDPA"
      
      For more background, see the extended explanations in Jason's pull request:
      
        https://lore.kernel.org/lkml/Y5dzTU8dlmXTbzoJ@nvidia.com/
      
      * tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd: (62 commits)
        iommufd: Change the order of MSI setup
        iommufd: Improve a few unclear bits of code
        iommufd: Fix comment typos
        vfio: Move vfio group specific code into group.c
        vfio: Refactor dma APIs for emulated devices
        vfio: Wrap vfio group module init/clean code into helpers
        vfio: Refactor vfio_device open and close
        vfio: Make vfio_device_open() truly device specific
        vfio: Swap order of vfio_device_container_register() and open_device()
        vfio: Set device->group in helper function
        vfio: Create wrappers for group register/unregister
        vfio: Move the sanity check of the group to vfio_create_group()
        vfio: Simplify vfio_create_group()
        iommufd: Allow iommufd to supply /dev/vfio/vfio
        vfio: Make vfio_container optionally compiled
        vfio: Move container related MODULE_ALIAS statements into container.c
        vfio-iommufd: Support iommufd for emulated VFIO devices
        vfio-iommufd: Support iommufd for physical VFIO devices
        vfio-iommufd: Allow iommufd to be used in place of a container fd
        vfio: Use IOMMU_CAP_ENFORCE_CACHE_COHERENCY for vfio_file_enforced_coherent()
        ...
      08cdc215
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · aa5ad10f
      Linus Torvalds authored
      Pull SCSI updates from James Bottomley:
       "Updates to the usual drivers (target, ufs, smartpqi, lpfc).
      
        There are some core changes, mostly around reworking some of our user
        context assumptions in device put and moving some code around.
      
        The remaining updates are bug fixes and minor changes"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (138 commits)
        scsi: sg: Fix get_user() in call sg_scsi_ioctl()
        scsi: megaraid_sas: Fix some spelling mistakes in comment
        scsi: core: Use SCSI_SCAN_INITIAL in do_scsi_scan_host()
        scsi: core: Use SCSI_SCAN_RESCAN in __scsi_add_device()
        scsi: ufs: ufs-mediatek: Remove unnecessary return code
        scsi: ufs: core: Fix the polling implementation
        scsi: libsas: Do not export sas_ata_wait_after_reset()
        scsi: hisi_sas: Fix SATA devices missing issue during I_T nexus reset
        scsi: libsas: Add smp_ata_check_ready_type()
        scsi: Revert "scsi: hisi_sas: Don't send bcast events from HW during nexus HA reset"
        scsi: Revert "scsi: hisi_sas: Drain bcast events in hisi_sas_rescan_topology()"
        scsi: ufs: ufs-mediatek: Modify the return value
        scsi: ufs: ufs-mediatek: Remove unneeded code
        scsi: device_handler: alua: Call scsi_device_put() from non-atomic context
        scsi: device_handler: alua: Revert "Move a scsi_device_put() call out of alua_check_vpd()"
        scsi: snic: Fix possible UAF in snic_tgt_create()
        scsi: qla2xxx: Initialize vha->unknown_atio_[list, work] for NPIV hosts
        scsi: qla2xxx: Remove duplicate of vha->iocb_work initialization
        scsi: fcoe: Fix transport not deattached when fcoe_if_init() fails
        scsi: sd: Use 16-byte SYNCHRONIZE CACHE on ZBC devices
        ...
      aa5ad10f
    • Linus Torvalds's avatar
      Merge tag 'mm-stable-2022-12-13' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm · e2ca6ba6
      Linus Torvalds authored
      Pull MM updates from Andrew Morton:
      
       - More userfaultfs work from Peter Xu
      
       - Several convert-to-folios series from Sidhartha Kumar and Huang Ying
      
       - Some filemap cleanups from Vishal Moola
      
       - David Hildenbrand added the ability to selftest anon memory COW
         handling
      
       - Some cpuset simplifications from Liu Shixin
      
       - Addition of vmalloc tracing support by Uladzislau Rezki
      
       - Some pagecache folioifications and simplifications from Matthew
         Wilcox
      
       - A pagemap cleanup from Kefeng Wang: we have VM_ACCESS_FLAGS, so use
         it
      
       - Miguel Ojeda contributed some cleanups for our use of the
         __no_sanitize_thread__ gcc keyword.
      
         This series should have been in the non-MM tree, my bad
      
       - Naoya Horiguchi improved the interaction between memory poisoning and
         memory section removal for huge pages
      
       - DAMON cleanups and tuneups from SeongJae Park
      
       - Tony Luck fixed the handling of COW faults against poisoned pages
      
       - Peter Xu utilized the PTE marker code for handling swapin errors
      
       - Hugh Dickins reworked compound page mapcount handling, simplifying it
         and making it more efficient
      
       - Removal of the autonuma savedwrite infrastructure from Nadav Amit and
         David Hildenbrand
      
       - zram support for multiple compression streams from Sergey Senozhatsky
      
       - David Hildenbrand reworked the GUP code's R/O long-term pinning so
         that drivers no longer need to use the FOLL_FORCE workaround which
         didn't work very well anyway
      
       - Mel Gorman altered the page allocator so that local IRQs can remnain
         enabled during per-cpu page allocations
      
       - Vishal Moola removed the try_to_release_page() wrapper
      
       - Stefan Roesch added some per-BDI sysfs tunables which are used to
         prevent network block devices from dirtying excessive amounts of
         pagecache
      
       - David Hildenbrand did some cleanup and repair work on KSM COW
         breaking
      
       - Nhat Pham and Johannes Weiner have implemented writeback in zswap's
         zsmalloc backend
      
       - Brian Foster has fixed a longstanding corner-case oddity in
         file[map]_write_and_wait_range()
      
       - sparse-vmemmap changes for MIPS, LoongArch and NIOS2 from Feiyang
         Chen
      
       - Shiyang Ruan has done some work on fsdax, to make its reflink mode
         work better under xfstests. Better, but still not perfect
      
       - Christoph Hellwig has removed the .writepage() method from several
         filesystems. They only need .writepages()
      
       - Yosry Ahmed wrote a series which fixes the memcg reclaim target
         beancounting
      
       - David Hildenbrand has fixed some of our MM selftests for 32-bit
         machines
      
       - Many singleton patches, as usual
      
      * tag 'mm-stable-2022-12-13' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (313 commits)
        mm/hugetlb: set head flag before setting compound_order in __prep_compound_gigantic_folio
        mm: mmu_gather: allow more than one batch of delayed rmaps
        mm: fix typo in struct pglist_data code comment
        kmsan: fix memcpy tests
        mm: add cond_resched() in swapin_walk_pmd_entry()
        mm: do not show fs mm pc for VM_LOCKONFAULT pages
        selftests/vm: ksm_functional_tests: fixes for 32bit
        selftests/vm: cow: fix compile warning on 32bit
        selftests/vm: madv_populate: fix missing MADV_POPULATE_(READ|WRITE) definitions
        mm/gup_test: fix PIN_LONGTERM_TEST_READ with highmem
        mm,thp,rmap: fix races between updates of subpages_mapcount
        mm: memcg: fix swapcached stat accounting
        mm: add nodes= arg to memory.reclaim
        mm: disable top-tier fallback to reclaim on proactive reclaim
        selftests: cgroup: make sure reclaim target memcg is unprotected
        selftests: cgroup: refactor proactive reclaim code to reclaim_until()
        mm: memcg: fix stale protection of reclaim target memcg
        mm/mmap: properly unaccount memory on mas_preallocate() failure
        omfs: remove ->writepage
        jfs: remove ->writepage
        ...
      e2ca6ba6
  2. 13 Dec, 2022 26 commits
    • Linus Torvalds's avatar
      Merge tag 'net-next-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next · 7e68dd7d
      Linus Torvalds authored
      Pull networking updates from Paolo Abeni:
       "Core:
      
         - Allow live renaming when an interface is up
      
         - Add retpoline wrappers for tc, improving considerably the
           performances of complex queue discipline configurations
      
         - Add inet drop monitor support
      
         - A few GRO performance improvements
      
         - Add infrastructure for atomic dev stats, addressing long standing
           data races
      
         - De-duplicate common code between OVS and conntrack offloading
           infrastructure
      
         - A bunch of UBSAN_BOUNDS/FORTIFY_SOURCE improvements
      
         - Netfilter: introduce packet parser for tunneled packets
      
         - Replace IPVS timer-based estimators with kthreads to scale up the
           workload with the number of available CPUs
      
         - Add the helper support for connection-tracking OVS offload
      
        BPF:
      
         - Support for user defined BPF objects: the use case is to allocate
           own objects, build own object hierarchies and use the building
           blocks to build own data structures flexibly, for example, linked
           lists in BPF
      
         - Make cgroup local storage available to non-cgroup attached BPF
           programs
      
         - Avoid unnecessary deadlock detection and failures wrt BPF task
           storage helpers
      
         - A relevant bunch of BPF verifier fixes and improvements
      
         - Veristat tool improvements to support custom filtering, sorting,
           and replay of results
      
         - Add LLVM disassembler as default library for dumping JITed code
      
         - Lots of new BPF documentation for various BPF maps
      
         - Add bpf_rcu_read_{,un}lock() support for sleepable programs
      
         - Add RCU grace period chaining to BPF to wait for the completion of
           access from both sleepable and non-sleepable BPF programs
      
         - Add support storing struct task_struct objects as kptrs in maps
      
         - Improve helper UAPI by explicitly defining BPF_FUNC_xxx integer
           values
      
         - Add libbpf *_opts API-variants for bpf_*_get_fd_by_id() functions
      
        Protocols:
      
         - TCP: implement Protective Load Balancing across switch links
      
         - TCP: allow dynamically disabling TCP-MD5 static key, reverting back
           to fast[er]-path
      
         - UDP: Introduce optional per-netns hash lookup table
      
         - IPv6: simplify and cleanup sockets disposal
      
         - Netlink: support different type policies for each generic netlink
           operation
      
         - MPTCP: add MSG_FASTOPEN and FastOpen listener side support
      
         - MPTCP: add netlink notification support for listener sockets events
      
         - SCTP: add VRF support, allowing sctp sockets binding to VRF devices
      
         - Add bridging MAC Authentication Bypass (MAB) support
      
         - Extensions for Ethernet VPN bridging implementation to better
           support multicast scenarios
      
         - More work for Wi-Fi 7 support, comprising conversion of all the
           existing drivers to internal TX queue usage
      
         - IPSec: introduce a new offload type (packet offload) allowing
           complete header processing and crypto offloading
      
         - IPSec: extended ack support for more descriptive XFRM error
           reporting
      
         - RXRPC: increase SACK table size and move processing into a
           per-local endpoint kernel thread, reducing considerably the
           required locking
      
         - IEEE 802154: synchronous send frame and extended filtering support,
           initial support for scanning available 15.4 networks
      
         - Tun: bump the link speed from 10Mbps to 10Gbps
      
         - Tun/VirtioNet: implement UDP segmentation offload support
      
        Driver API:
      
         - PHY/SFP: improve power level switching between standard level 1 and
           the higher power levels
      
         - New API for netdev <-> devlink_port linkage
      
         - PTP: convert existing drivers to new frequency adjustment
           implementation
      
         - DSA: add support for rx offloading
      
         - Autoload DSA tagging driver when dynamically changing protocol
      
         - Add new PCP and APPTRUST attributes to Data Center Bridging
      
         - Add configuration support for 800Gbps link speed
      
         - Add devlink port function attribute to enable/disable RoCE and
           migratable
      
         - Extend devlink-rate to support strict prioriry and weighted fair
           queuing
      
         - Add devlink support to directly reading from region memory
      
         - New device tree helper to fetch MAC address from nvmem
      
         - New big TCP helper to simplify temporary header stripping
      
        New hardware / drivers:
      
         - Ethernet:
            - Marvel Octeon CNF95N and CN10KB Ethernet Switches
            - Marvel Prestera AC5X Ethernet Switch
            - WangXun 10 Gigabit NIC
            - Motorcomm yt8521 Gigabit Ethernet
            - Microchip ksz9563 Gigabit Ethernet Switch
            - Microsoft Azure Network Adapter
            - Linux Automation 10Base-T1L adapter
      
         - PHY:
            - Aquantia AQR112 and AQR412
            - Motorcomm YT8531S
      
         - PTP:
            - Orolia ART-CARD
      
         - WiFi:
            - MediaTek Wi-Fi 7 (802.11be) devices
            - RealTek rtw8821cu, rtw8822bu, rtw8822cu and rtw8723du USB
              devices
      
         - Bluetooth:
            - Broadcom BCM4377/4378/4387 Bluetooth chipsets
            - Realtek RTL8852BE and RTL8723DS
            - Cypress.CYW4373A0 WiFi + Bluetooth combo device
      
        Drivers:
      
         - CAN:
            - gs_usb: bus error reporting support
            - kvaser_usb: listen only and bus error reporting support
      
         - Ethernet NICs:
            - Intel (100G):
               - extend action skbedit to RX queue mapping
               - implement devlink-rate support
               - support direct read from memory
            - nVidia/Mellanox (mlx5):
               - SW steering improvements, increasing rules update rate
               - Support for enhanced events compression
               - extend H/W offload packet manipulation capabilities
               - implement IPSec packet offload mode
            - nVidia/Mellanox (mlx4):
               - better big TCP support
            - Netronome Ethernet NICs (nfp):
               - IPsec offload support
               - add support for multicast filter
            - Broadcom:
               - RSS and PTP support improvements
            - AMD/SolarFlare:
               - netlink extened ack improvements
               - add basic flower matches to offload, and related stats
            - Virtual NICs:
               - ibmvnic: introduce affinity hint support
            - small / embedded:
               - FreeScale fec: add initial XDP support
               - Marvel mv643xx_eth: support MII/GMII/RGMII modes for Kirkwood
               - TI am65-cpsw: add suspend/resume support
               - Mediatek MT7986: add RX wireless wthernet dispatch support
               - Realtek 8169: enable GRO software interrupt coalescing per
                 default
      
         - Ethernet high-speed switches:
            - Microchip (sparx5):
               - add support for Sparx5 TC/flower H/W offload via VCAP
            - Mellanox mlxsw:
               - add 802.1X and MAC Authentication Bypass offload support
               - add ip6gre support
      
         - Embedded Ethernet switches:
            - Mediatek (mtk_eth_soc):
               - improve PCS implementation, add DSA untag support
               - enable flow offload support
            - Renesas:
               - add rswitch R-Car Gen4 gPTP support
            - Microchip (lan966x):
               - add full XDP support
               - add TC H/W offload via VCAP
               - enable PTP on bridge interfaces
            - Microchip (ksz8):
               - add MTU support for KSZ8 series
      
         - Qualcomm 802.11ax WiFi (ath11k):
            - support configuring channel dwell time during scan
      
         - MediaTek WiFi (mt76):
            - enable Wireless Ethernet Dispatch (WED) offload support
            - add ack signal support
            - enable coredump support
            - remain_on_channel support
      
         - Intel WiFi (iwlwifi):
            - enable Wi-Fi 7 Extremely High Throughput (EHT) PHY capabilities
            - 320 MHz channels support
      
         - RealTek WiFi (rtw89):
            - new dynamic header firmware format support
            - wake-over-WLAN support"
      
      * tag 'net-next-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (2002 commits)
        ipvs: fix type warning in do_div() on 32 bit
        net: lan966x: Remove a useless test in lan966x_ptp_add_trap()
        net: ipa: add IPA v4.7 support
        dt-bindings: net: qcom,ipa: Add SM6350 compatible
        bnxt: Use generic HBH removal helper in tx path
        IPv6/GRO: generic helper to remove temporary HBH/jumbo header in driver
        selftests: forwarding: Add bridge MDB test
        selftests: forwarding: Rename bridge_mdb test
        bridge: mcast: Support replacement of MDB port group entries
        bridge: mcast: Allow user space to specify MDB entry routing protocol
        bridge: mcast: Allow user space to add (*, G) with a source list and filter mode
        bridge: mcast: Add support for (*, G) with a source list and filter mode
        bridge: mcast: Avoid arming group timer when (S, G) corresponds to a source
        bridge: mcast: Add a flag for user installed source entries
        bridge: mcast: Expose __br_multicast_del_group_src()
        bridge: mcast: Expose br_multicast_new_group_src()
        bridge: mcast: Add a centralized error path
        bridge: mcast: Place netlink policy before validation functions
        bridge: mcast: Split (*, G) and (S, G) addition into different functions
        bridge: mcast: Do not derive entry type from its filter mode
        ...
      7e68dd7d
    • Linus Torvalds's avatar
      Merge tag 'xtensa-20221213' of https://github.com/jcmvbkbc/linux-xtensa · 1ca06f1c
      Linus Torvalds authored
      Pull Xtensa updates from Max Filippov:
      
       - fix kernel build with gcc-13
      
       - various minor fixes
      
      * tag 'xtensa-20221213' of https://github.com/jcmvbkbc/linux-xtensa:
        xtensa: add __umulsidi3 helper
        xtensa: update config files
        MAINTAINERS: update the 'T:' entry for xtensa
      1ca06f1c
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm · 4cb1fc6f
      Linus Torvalds authored
      Pull ARM updates from Russell King:
      
       - update unwinder to cope with module PLTs
      
       - enable UBSAN on ARM
      
       - improve kernel fault message
      
       - update UEFI runtime page tables dump
      
       - avoid clang's __aeabi_uldivmod generated in NWFPE code
      
       - disable FIQs on CPU shutdown paths
      
       - update XOR register usage
      
       - a number of build updates (using .arch, thread pointer, removal of
         lazy evaluation in Makefile)
      
       - conversion of stacktrace code to stackwalk
      
       - findbit assembly updates
      
       - hwcap feature updates for ARMv8 CPUs
      
       - instruction dump updates for big-endian platforms
      
       - support for function error injection
      
      * tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm: (31 commits)
        ARM: 9279/1: support function error injection
        ARM: 9277/1: Make the dumped instructions are consistent with the disassembled ones
        ARM: 9276/1: Refactor dump_instr()
        ARM: 9275/1: Drop '-mthumb' from AFLAGS_ISA
        ARM: 9274/1: Add hwcap for Speculative Store Bypassing Safe
        ARM: 9273/1: Add hwcap for Speculation Barrier(SB)
        ARM: 9272/1: vfp: Add hwcap for FEAT_AA32I8MM
        ARM: 9271/1: vfp: Add hwcap for FEAT_AA32BF16
        ARM: 9270/1: vfp: Add hwcap for FEAT_FHM
        ARM: 9269/1: vfp: Add hwcap for FEAT_DotProd
        ARM: 9268/1: vfp: Add hwcap FPHP and ASIMDHP for FEAT_FP16
        ARM: 9267/1: Define Armv8 registers in AArch32 state
        ARM: findbit: add unwinder information
        ARM: findbit: operate by words
        ARM: findbit: convert to macros
        ARM: findbit: provide more efficient ARMv7 implementation
        ARM: findbit: document ARMv5 bit offset calculation
        ARM: 9259/1: stacktrace: Convert stacktrace to generic ARCH_STACKWALK
        ARM: 9258/1: stacktrace: Make stack walk callback consistent with generic code
        ARM: 9265/1: pass -march= only to compiler
        ...
      4cb1fc6f
    • Linus Torvalds's avatar
      Merge tag 'x86_sev_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 740afa4d
      Linus Torvalds authored
      Pull x86 sev updates from Borislav Petkov:
      
       - Two minor fixes to the sev-guest driver
      
      * tag 'x86_sev_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        virt/sev-guest: Add a MODULE_ALIAS
        virt/sev-guest: Remove unnecessary free in init_crypto()
      740afa4d
    • Linus Torvalds's avatar
      Merge tag 'x86_paravirt_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 82c72902
      Linus Torvalds authored
      Pull x86 paravirt update from Borislav Petkov:
      
       - Simplify paravirt patching machinery by removing the now unused
         clobber mask
      
      * tag 'x86_paravirt_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/paravirt: Remove clobber bitmask from .parainstructions
      82c72902
    • Linus Torvalds's avatar
      Merge tag 'x86_microcode_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a70210f4
      Linus Torvalds authored
      Pull x86 microcode and IFS updates from Borislav Petkov:
       "The IFS (In-Field Scan) stuff goes through tip because the IFS driver
        uses the same structures and similar functionality as the microcode
        loader and it made sense to route it all through this branch so that
        there are no conflicts.
      
         - Add support for multiple testing sequences to the Intel In-Field
           Scan driver in order to be able to run multiple different test
           patterns. Rework things and remove the BROKEN dependency so that
           the driver can be enabled (Jithu Joseph)
      
         - Remove the subsys interface usage in the microcode loader because
           it is not really needed
      
         - A couple of smaller fixes and cleanups"
      
      * tag 'x86_microcode_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (24 commits)
        x86/microcode/intel: Do not retry microcode reloading on the APs
        x86/microcode/intel: Do not print microcode revision and processor flags
        platform/x86/intel/ifs: Add missing kernel-doc entry
        Revert "platform/x86/intel/ifs: Mark as BROKEN"
        Documentation/ABI: Update IFS ABI doc
        platform/x86/intel/ifs: Add current_batch sysfs entry
        platform/x86/intel/ifs: Remove reload sysfs entry
        platform/x86/intel/ifs: Add metadata validation
        platform/x86/intel/ifs: Use generic microcode headers and functions
        platform/x86/intel/ifs: Add metadata support
        x86/microcode/intel: Use a reserved field for metasize
        x86/microcode/intel: Add hdr_type to intel_microcode_sanity_check()
        x86/microcode/intel: Reuse microcode_sanity_check()
        x86/microcode/intel: Use appropriate type in microcode_sanity_check()
        x86/microcode/intel: Reuse find_matching_signature()
        platform/x86/intel/ifs: Remove memory allocation from load path
        platform/x86/intel/ifs: Remove image loading during init
        platform/x86/intel/ifs: Return a more appropriate error code
        platform/x86/intel/ifs: Remove unused selection
        x86/microcode: Drop struct ucode_cpu_info.valid
        ...
      a70210f4
    • Linus Torvalds's avatar
      Merge tag 'x86_cpu_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3ef3ace4
      Linus Torvalds authored
      Pull x86 cpu updates from Borislav Petkov:
      
       - Split MTRR and PAT init code to accomodate at least Xen PV and TDX
         guests which do not get MTRRs exposed but only PAT. (TDX guests do
         not support the cache disabling dance when setting up MTRRs so they
         fall under the same category)
      
         This is a cleanup work to remove all the ugly workarounds for such
         guests and init things separately (Juergen Gross)
      
       - Add two new Intel CPUs to the list of CPUs with "normal" Energy
         Performance Bias, leading to power savings
      
       - Do not do bus master arbitration in C3 (ARB_DISABLE) on modern
         Centaur CPUs
      
      * tag 'x86_cpu_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (26 commits)
        x86/mtrr: Make message for disabled MTRRs more descriptive
        x86/pat: Handle TDX guest PAT initialization
        x86/cpuid: Carve out all CPUID functionality
        x86/cpu: Switch to cpu_feature_enabled() for X86_FEATURE_XENPV
        x86/cpu: Remove X86_FEATURE_XENPV usage in setup_cpu_entry_area()
        x86/cpu: Drop 32-bit Xen PV guest code in update_task_stack()
        x86/cpu: Remove unneeded 64-bit dependency in arch_enter_from_user_mode()
        x86/cpufeatures: Add X86_FEATURE_XENPV to disabled-features.h
        x86/acpi/cstate: Optimize ARB_DISABLE on Centaur CPUs
        x86/mtrr: Simplify mtrr_ops initialization
        x86/cacheinfo: Switch cache_ap_init() to hotplug callback
        x86: Decouple PAT and MTRR handling
        x86/mtrr: Add a stop_machine() handler calling only cache_cpu_init()
        x86/mtrr: Let cache_aps_delayed_init replace mtrr_aps_delayed_init
        x86/mtrr: Get rid of __mtrr_enabled bool
        x86/mtrr: Simplify mtrr_bp_init()
        x86/mtrr: Remove set_all callback from struct mtrr_ops
        x86/mtrr: Disentangle MTRR init from PAT init
        x86/mtrr: Move cache control code to cacheinfo.c
        x86/mtrr: Split MTRR-specific handling from cache dis/enabling
        ...
      3ef3ace4
    • Linus Torvalds's avatar
      Merge tag 'x86_boot_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4eb77fa1
      Linus Torvalds authored
      Pull x86 boot updates from Borislav Petkov:
       "A  of early boot cleanups and fixes.
      
         - Do some spring cleaning to the compressed boot code by moving the
           EFI mixed-mode code to a separate compilation unit, the AMD memory
           encryption early code where it belongs and fixing up build
           dependencies. Make the deprecated EFI handover protocol optional
           with the goal of removing it at some point (Ard Biesheuvel)
      
         - Skip realmode init code on Xen PV guests as it is not needed there
      
         - Remove an old 32-bit PIC code compiler workaround"
      
      * tag 'x86_boot_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/boot: Remove x86_32 PIC using %ebx workaround
        x86/boot: Skip realmode init code when running as Xen PV guest
        x86/efi: Make the deprecated EFI handover protocol optional
        x86/boot/compressed: Only build mem_encrypt.S if AMD_MEM_ENCRYPT=y
        x86/boot/compressed: Adhere to calling convention in get_sev_encryption_bit()
        x86/boot/compressed: Move startup32_check_sev_cbit() out of head_64.S
        x86/boot/compressed: Move startup32_check_sev_cbit() into .text
        x86/boot/compressed: Move startup32_load_idt() out of head_64.S
        x86/boot/compressed: Move startup32_load_idt() into .text section
        x86/boot/compressed: Pull global variable reference into startup32_load_idt()
        x86/boot/compressed: Avoid touching ECX in startup32_set_idt_entry()
        x86/boot/compressed: Simplify IDT/GDT preserve/restore in the EFI thunk
        x86/boot/compressed, efi: Merge multiple definitions of image_offset into one
        x86/boot/compressed: Move efi32_pe_entry() out of head_64.S
        x86/boot/compressed: Move efi32_entry out of head_64.S
        x86/boot/compressed: Move efi32_pe_entry into .text section
        x86/boot/compressed: Move bootargs parsing out of 32-bit startup code
        x86/boot/compressed: Move 32-bit entrypoint code into .text section
        x86/boot/compressed: Rename efi_thunk_64.S to efi-mixed.S
      4eb77fa1
    • Linus Torvalds's avatar
      Merge tag 'x86_asm_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8b9ed79c
      Linus Torvalds authored
      Pull x86 asm updates from Borislav Petkov:
      
       - Move the 32-bit memmove() asm implementation out-of-line in order to
         fix a 32-bit full LTO build failure with clang where it would fail at
         register allocation.
      
         Move it to an asm file and clean it up while at it, similar to what
         has been already done on 64-bit
      
      * tag 'x86_asm_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mem: Move memmove to out of line assembler
      8b9ed79c
    • Linus Torvalds's avatar
      Merge tag 'efi-next-for-v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi · fc4c9f45
      Linus Torvalds authored
      Pull EFI updates from Ard Biesheuvel:
       "Another fairly sizable pull request, by EFI subsystem standards.
      
        Most of the work was done by me, some of it in collaboration with the
        distro and bootloader folks (GRUB, systemd-boot), where the main focus
        has been on removing pointless per-arch differences in the way EFI
        boots a Linux kernel.
      
         - Refactor the zboot code so that it incorporates all the EFI stub
           logic, rather than calling the decompressed kernel as a EFI app.
      
         - Add support for initrd= command line option to x86 mixed mode.
      
         - Allow initrd= to be used with arbitrary EFI accessible file systems
           instead of just the one the kernel itself was loaded from.
      
         - Move some x86-only handling and manipulation of the EFI memory map
           into arch/x86, as it is not used anywhere else.
      
         - More flexible handling of any random seeds provided by the boot
           environment (i.e., systemd-boot) so that it becomes available much
           earlier during the boot.
      
         - Allow improved arch-agnostic EFI support in loaders, by setting a
           uniform baseline of supported features, and adding a generic magic
           number to the DOS/PE header. This should allow loaders such as GRUB
           or systemd-boot to reduce the amount of arch-specific handling
           substantially.
      
         - (arm64) Run EFI runtime services from a dedicated stack, and use it
           to recover from synchronous exceptions that might occur in the
           firmware code.
      
         - (arm64) Ensure that we don't allocate memory outside of the 48-bit
           addressable physical range.
      
         - Make EFI pstore record size configurable
      
         - Add support for decoding CXL specific CPER records"
      
      * tag 'efi-next-for-v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi: (43 commits)
        arm64: efi: Recover from synchronous exceptions occurring in firmware
        arm64: efi: Execute runtime services from a dedicated stack
        arm64: efi: Limit allocations to 48-bit addressable physical region
        efi: Put Linux specific magic number in the DOS header
        efi: libstub: Always enable initrd command line loader and bump version
        efi: stub: use random seed from EFI variable
        efi: vars: prohibit reading random seed variables
        efi: random: combine bootloader provided RNG seed with RNG protocol output
        efi/cper, cxl: Decode CXL Error Log
        efi/cper, cxl: Decode CXL Protocol Error Section
        efi: libstub: fix efi_load_initrd_dev_path() kernel-doc comment
        efi: x86: Move EFI runtime map sysfs code to arch/x86
        efi: runtime-maps: Clarify purpose and enable by default for kexec
        efi: pstore: Add module parameter for setting the record size
        efi: xen: Set EFI_PARAVIRT for Xen dom0 boot on all architectures
        efi: memmap: Move manipulation routines into x86 arch tree
        efi: memmap: Move EFI fake memmap support into x86 arch tree
        efi: libstub: Undeprecate the command line initrd loader
        efi: libstub: Add mixed mode support to command line initrd loader
        efi: libstub: Permit mixed mode return types other than efi_status_t
        ...
      fc4c9f45
    • Linus Torvalds's avatar
      Merge tag 'integrity-v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity · 717e6eb4
      Linus Torvalds authored
      Pull integrity updates from Mimi Zohar:
       "Aside from the one cleanup, the other changes are bug fixes:
      
        Cleanup:
      
         - Include missing iMac Pro 2017 in list of Macs with T2 security chip
      
        Bug fixes:
      
         - Improper instantiation of "encrypted" keys with user provided data
      
         - Not handling delay in updating LSM label based IMA policy rules
           (-ESTALE)
      
         - IMA and integrity memory leaks on error paths
      
         - CONFIG_IMA_DEFAULT_HASH_SM3 hash algorithm renamed"
      
      * tag 'integrity-v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity:
        ima: Fix hash dependency to correct algorithm
        ima: Fix misuse of dereference of pointer in template_desc_init_fields()
        integrity: Fix memory leakage in keyring allocation error path
        ima: Fix memory leak in __ima_inode_hash()
        ima: Handle -ESTALE returned by ima_filter_rule_match()
        ima: Simplify ima_lsm_copy_rule
        ima: Fix a potential NULL pointer access in ima_restore_measurement_list
        efi: Add iMac Pro 2017 to uefi skip cert quirk
        KEYS: encrypted: fix key instantiation with user-provided data
      717e6eb4
    • Linus Torvalds's avatar
      Merge tag 'sysctl-6.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux · 8fa37a68
      Linus Torvalds authored
      Pull sysctl updates from Luis Chamberlain:
       "Only a small step forward on the sysctl cleanups for this cycle"
      
      * tag 'sysctl-6.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux:
        sched: Move numa_balancing sysctls to its own file
      8fa37a68
    • Linus Torvalds's avatar
      Merge tag 'modules-6.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux · 3ba2c3ff
      Linus Torvalds authored
      Pull modules updates from Luis Chamberlain:
       "Tux gets for xmas an improvement to the average lookup performance of
        kallsyms_lookup_name() by 715x thanks to the work by Zhen Lei, which
        upgraded our old implementation from being O(n) to O(log(n)), while
        also retaining the old implementation support on /proc/kallsyms.
      
        The only penalty was increasing the memory footprint by 3 *
        kallsyms_num_syms. Folks who want to improve this further now also
        have a dedicated selftest facility through KALLSYMS_SELFTEST.
      
        Stephen Boyd added zstd in-kernel decompression support, but the only
        users of this would be folks using the load-pin LSM because otherwise
        we do module decompression in userspace.
      
        The only other thing with mentioning is a minor boot time optimization
        by Rasmus Villemoes which deferes param_sysfs_init() to late init. The
        rest is cleanups and minor fixes"
      
      * tag 'modules-6.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux:
        livepatch: Call klp_match_callback() in klp_find_callback() to avoid code duplication
        module/decompress: Support zstd in-kernel decompression
        kallsyms: Remove unneeded semicolon
        kallsyms: Add self-test facility
        livepatch: Use kallsyms_on_each_match_symbol() to improve performance
        kallsyms: Add helper kallsyms_on_each_match_symbol()
        kallsyms: Reduce the memory occupied by kallsyms_seqs_of_names[]
        kallsyms: Correctly sequence symbols when CONFIG_LTO_CLANG=y
        kallsyms: Improve the performance of kallsyms_lookup_name()
        scripts/kallsyms: rename build_initial_tok_table()
        module: Fix NULL vs IS_ERR checking for module_get_next_page
        kernel/params.c: defer most of param_sysfs_init() to late_initcall time
        module: Remove unused macros module_addr_min/max
        module: remove redundant module_sysfs_initialized variable
      3ba2c3ff
    • Linus Torvalds's avatar
      Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · 0015edd6
      Linus Torvalds authored
      Pull clk driver updates from Stephen Boyd:
       "A pile of clk driver updates with a small tracepoint patch to the clk
        core this time around.
      
        The core framework is effectively unchanged, with the majority of the
        diff going to the Qualcomm clk driver directory because they added two
        3k line files that are almost all clk data (Abel Vesa from Linaro
        tried to shrink the number of lines down, but it doesn't seem to be
        possible without sacrificing readability).
      
        The second big driver this time around is the Rockchip rk3588 clk and
        reset unit, at _only_ 2.5k lines.
      
        Ignoring the big clk drivers from the familiar SoC vendors, there's
        just a bunch of little clk driver updates and fixes throughout here.
      
        It's the usual set of clk data fixups to describe proper parents, or
        add frequencies to frequency tables, or plug memory leaks when
        function calls fail. Also, some drivers are converted to use modern
        clk_hw APIs, which is always nice to see. And data is deduplicated,
        leading to a smaller kernel Image.
      
        Overall this batch has a larger collection of cleanups than it
        typically does. Maybe that means there are less new SoCs right now
        that need supporting, and the focus has shifted to quality and
        reliability. I can dream.
      
        New Drivers:
         - Frequency hopping controller hardware on MediaTek MT8186
         - Global clock controller for Qualcomm SM8550
         - Display clock controller for Qualcomm SC8280XP
         - RPMh clock controller for Qualcomm QDU1000 and QRU1000 SoCs
         - CPU PLL on MStar/SigmaStar SoCs
         - Support for the clock and reset unit of the Rockchip rk3588
      
        Updates:
         - Tracepoints for clk_rate_request structures
         - Debugfs support for fractional divider clk
         - Make MxL's CGU driver secure compatible
         - Ingenic JZ4755 SoC clk support
         - Support audio clks on X1000 SoCs
         - Remove flags from univ/main/syspll child fixed factor clocks across
           MediaTek platforms
         - Fix clock dependency for ADC on MediaTek MT7986
         - Fix parent for FlexSPI clock for i.MX93
         - Add USB suspend clock on i.MX8MP
         - Unmap anatop base on error for i.MX93 driver
         - Change enet clock parent to wakeup_axi_root for i.MX93
         - Drop LPIT1, LPIT2, TPM1 and TPM3 clocks for i.MX93
         - Mark HSIO bus clock and SYS_CNT clock as critical on i.MX93
         - Add 320MHz and 640MHz entries to PLL146x
         - Add audio shared gate and SAI clocks for i.MX8MP
         - Fix a possible memory leak in the error path of rockchip PLL
           creation
         - Fix header guard for V3S clocks
         - Add IR module clock for f1c100s
         - Correct the parent clocks for the (High Speed) Serial Communication
           Interfaces with FIFO ((H)SCIF) modules and the mixed-up Ethernet
           Switch clocks on Renesas R-Car S4-8
         - Add timer (TMU, CMT) and Cortex-A76 CPU core (Z0) clocks on Renesas
           R-Car V4H
         - Two PLL driver fixups for the Amlogic clk driver
         - Round SD clock rate to improve parent clock selection
         - Add Ethernet Switch and internal SASYNCPER clocks on Renesas R-Car
           S4-8
         - Add DMA (SYS-DMAC), SPI (MSIOF), external interrupt (INTC-EX)
           serial (SCIF), PWM (PWM and TPU), SDHI, and HyperFLASH/QSPI
           (RPC-IF) clocks on Renesas R-Car V4H
         - Add Multi-Function Timer Pulse Unit (MTU3a) clock and reset on
           Renesas RZ/G2L
         - Fix endless loop on Renesas RZ/N1
         - Correct the parent clocks for the High Speed Serial Communication
           Interfaces with FIFO (HSCIF) modules on the Renesas R-Car V4H SoC
           Note: HSCIF0 is used for the serial console on the White-Hawk
           development board
         - Various clk DT binding improvements and conversions to YAML
         - Qualcomm SM8150/SM8250 display clock controller cleaned up
         - Some missing clocks for Qualcomm SM8350 added
         - Qualcomm MSM8974 Global and Multimedia clock controllers
           transitioned to parent_data and parent_hws
         - Use parent_data and add network resets for Qualcomm IPQ8074
         - Qualcomm Krait clock controller modernized
         - Fix pm_runtime usage in Qualcomm SC7180 and SC7280 LPASS clock
           controllers
         - Enable retention mode on Qualcomm SM8250 USB GDSCs
         - Cleanup Qualcomm RPM and RPMh clock drivers to avoid duplicating
           clocks which definition could be shared between platforms
         - Various NULL pointer checks added for allocations"
      
      * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (188 commits)
        clk: nomadik: correct struct name kernel-doc warning
        clk: lmk04832: fix kernel-doc warnings
        clk: lmk04832: drop superfluous #include
        clk: lmk04832: drop unnecessary semicolons
        clk: lmk04832: declare variables as const when possible
        clk: socfpga: Fix memory leak in socfpga_gate_init()
        clk: microchip: enable the MPFS clk driver by default if SOC_MICROCHIP_POLARFIRE
        clk: st: Fix memory leak in st_of_quadfs_setup()
        clk: samsung: Fix memory leak in _samsung_clk_register_pll()
        clk: Add trace events for rate requests
        clk: Store clk_core for clk_rate_request
        clk: qcom: rpmh: add support for SM6350 rpmh IPA clock
        clk: qcom: mmcc-msm8974: use parent_hws/_data instead of parent_names
        clk: qcom: mmcc-msm8974: move clock parent tables down
        clk: qcom: mmcc-msm8974: use ARRAY_SIZE instead of specifying num_parents
        clk: qcom: gcc-msm8974: use parent_hws/_data instead of parent_names
        clk: qcom: gcc-msm8974: move clock parent tables down
        clk: qcom: gcc-msm8974: use ARRAY_SIZE instead of specifying num_parents
        dt-bindings: clocks: qcom,mmcc: define clocks/clock-names for MSM8974
        dt-bindings: clock: split qcom,gcc-msm8974,-msm8226 to the separate file
        ...
      0015edd6
    • Linus Torvalds's avatar
      Merge tag 'mmc-v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · 71946a25
      Linus Torvalds authored
      Pull MMC and MEMSTICK updates from Ulf Hansson:
       "MMC core:
         - A few minor improvements and cleanups
      
        MMC host:
         - Remove some redundant calls to local_irq_{save,restore}()
         - Replace kmap_atomic() with kmap_local_page()
         - Take return values from mmc_add_host() into account
         - dw_mmc-pltfm: Add support to configure clk-phase for socfpga
         - hsq: Minimize latency by using a fifo to dispatch requests
         - litex_mmc: Fixup corner case for polling mode
         - mtk-sd: Add inline crypto engine clock control
         - mtk-sd: Add support for the mediatek MT7986 variant
         - renesas_sdhi: Improve reset from HS400 mode
         - renesas_sdhi: Take DMA end interrupts into account
         - sdhci: Avoid unnecessary update of clock
         - sdhci: Fix an SD tuning issue
         - sdhci-brcmst: Add Kamal Dasu as maintainer for the Broadcom driver
         - sdhci-esdhc-imx: Improve tuning logic
         - sdhci-esdhc-imx: Improve support for the imxrt1050 variant
         - sdhci_f_sdh30: Add support for non-removable media
         - sdhci_f_sdh30: Add support for the Socionext F_SDH30_E51 variant
         - sdhci_f_sdh30: Add reset control support
         - sdhci-msm: Add support for the Qcom SM8550/SM8350/SM6375 variants
         - sdhci-msm: Add support for the Qcom MSM8976 variant
         - sdhci-of-arasan: Add support for dynamic configuration
         - sdhci-of-esdhc: Limit the clock frequency to confirm to spec
         - sdhci-pci: Enable asynchronous probe
         - sdhci-sprd: Improve card detection
         - sdhci-tegra: Improve reset support
         - sdhci-tegra: Add support to program MC stream ID
         - sunplus-mmc: Add new mmc driver for the Sunplus SP7021 controller
         - vub300: Fix warning splat for SDIO irq
      
        MEMSTICK core:
         - memstick: A few minor improvements and cleanups
      
        CLK/IOMMU:
         - clk: socfpga: Drop redundant support for clk-phase for the SD/MMC clk
         - iommu: Add tegra specific helper to get stream_id"
      
      * tag 'mmc-v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc: (108 commits)
        mmc: sdhci-sprd: Disable CLK_AUTO when the clock is less than 400K
        mmc: sdhci-of-esdhc: Modify mismatched function name
        memstick/mspro_block: Convert to use sysfs_emit()/sysfs_emit_at() APIs
        mmc: sdhci-tegra: Issue CMD and DAT resets together
        mmc: sdhci-tegra: Add support to program MC stream ID
        mmc: sdhci-tegra: Separate Tegra194 and Tegra234 SoC data
        mmc: sdhci-tegra: Sort includes alphabetically
        iommu/tegra: Add tegra_dev_iommu_get_stream_id() helper
        iommu: Add note about struct iommu_fwspec usage
        mmc: sdhci-brcmstb: Resolve "unused" warnings with CONFIG_OF=n
        dt-bindings: mmc: sdhci-msm: allow dma-coherent
        dt-bindings: mmc: sdhci-msm: drop properties mentioned in common MMC
        dt-bindings: mmc: sdhci-msm: cleanup style
        dt-bindings: mmc: sdhci-am654: cleanup style
        dt-bindings: mmc: sdhci: document sdhci-caps and sdhci-caps-mask
        mmc: vub300: fix warning - do not call blocking ops when !TASK_RUNNING
        MAINTAINERS: Update maintainer for SDHCI Broadcom BRCMSTB driver
        mmc: sdhci-of-esdhc: limit the SDHC clock frequency
        mmc: sdhci: Remove unneeded semicolon
        mmc: core: Normalize the error handling branch in sd_read_ext_regs()
        ...
      71946a25
    • Linus Torvalds's avatar
      Merge tag 'for-linus-6.2-1' of https://github.com/cminyard/linux-ipmi · 90b12f42
      Linus Torvalds authored
      Pull IPMI updates from Corey Minyard:
       "This includes a number of small fixes, as usual.
      
        It also includes a new driver for doing the i2c (SSIF) interface
        BMC-side, pretty much completing the BMC side interfaces"
      
      * tag 'for-linus-6.2-1' of https://github.com/cminyard/linux-ipmi:
        ipmi/watchdog: use strscpy() to instead of strncpy()
        ipmi: ssif_bmc: Convert to i2c's .probe_new()
        ipmi: fix use after free in _ipmi_destroy_user()
        ipmi/watchdog: Include <linux/kstrtox.h> when appropriate
        ipmi:ssif: Increase the message retry time
        ipmi: Fix some kernel-doc warnings
        ipmi: ssif_bmc: Use EPOLLIN instead of POLLIN
        ipmi: fix msg stack when IPMI is disconnected
        ipmi: fix memleak when unload ipmi driver
        ipmi: fix long wait in unload when IPMI disconnect
        ipmi: kcs: Poll OBF briefly to reduce OBE latency
        bindings: ipmi: Add binding for SSIF BMC driver
        ipmi: ssif_bmc: Add SSIF BMC driver
      90b12f42
    • Linus Torvalds's avatar
      Merge tag 'for-linus-2022121301' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid · 2043f9a3
      Linus Torvalds authored
      Pull HID updates from Jiri Kosina:
      
       - iio support for the MCP2221 HID driver (Matt Ranostay)
      
       - support for more than one hinge sensor in hid-sensor-custom (Yauhen
         Kharuzhy)
      
       - PS DualShock 4 controller support (Roderick Colenbrander)
      
       - XP-PEN Deco LW support (José Expósito)
      
       - other assorted code cleanups and device ID/quirk addtions
      
      * tag 'for-linus-2022121301' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid: (51 commits)
        HID: logitech HID++: Send SwID in GetProtocolVersion
        HID: hid-elan: use default remove for hid device
        HID: hid-alps: use default remove for hid device
        HID: hid-sensor-custom: set fixed size for custom attributes
        HID: i2c: let RMI devices decide what constitutes wakeup event
        HID: playstation: fix DualShock4 bluetooth CRC endian issue.
        HID: playstation: fix DualShock4 bluetooth memory corruption bug.
        HID: apple: Swap Control and Command keys on Apple keyboards
        HID: intel-ish-hid: ishtp: remove variable rb_count
        HID: uclogic: Standardize test name prefix
        HID: hid-sensor-custom: Allow more than one hinge angle sensor
        HID: ft260: fix 'cast to restricted' kernel CI bot warnings
        HID: ft260: missed NACK from busy device
        HID: ft260: fix a NULL pointer dereference in ft260_i2c_write
        HID: ft260: wake up device from power saving mode
        HID: ft260: missed NACK from big i2c read
        HID: ft260: remove SMBus Quick command support
        HID: ft260: skip unexpected HID input reports
        HID: ft260: do not populate /dev/hidraw device
        HID: ft260: improve i2c large reads performance
        ...
      2043f9a3
    • Linus Torvalds's avatar
      Merge tag 'input-for-v6.2-rc0' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 86a0b425
      Linus Torvalds authored
      Pull input updates from Dmitry Torokhov:
      
       - a new driver for Cypress Generation 5 touchscreens
      
       - a new driver for Hynitron cstxxx touchscreens
      
       - a new driver for Himax hx83112b touchscreen
      
       - I2C input devices have been converted to use i2c's probe_new()
      
       - a large number of input devices are now using
         DEFINE_SIMPLE_DEV_PM_OPS and pm_sleep_ptr() and no longer use
         __maybe_unused annotations
      
       - improvements to msg2638 touchscreen driver to also support msg2138
      
       - conversion of several input deevine bindings to yaml/DT schema
      
       - changes to select touch drivers to move handling of wake irqs to the
         PM core
      
       - other assorted fixes and improvements.
      
      * tag 'input-for-v6.2-rc0' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (165 commits)
        Input: elants_i2c - delay longer with reset asserted
        dt-bindings: input: Convert ti,drv260x to DT schema
        dt-bindings: input: gpio-beeper: Convert to yaml schema
        Input: pxspad - fix unused data warning when force feedback not enabled
        Input: lpc32xx - allow building with COMPILE_TEST
        Input: nomadik-ske-keypad - allow building with COMPILE_TEST
        Input: pxa27xx-keypad - allow build with COMPILE_TEST
        Input: spear-keyboard - improve build coverage using COMPILE_TEST
        Input: tegra-kbc - allow build with COMPILE_TEST
        Input: tegra-kbc - switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
        Input: tca6416-keypad - switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
        Input: tc3589x - switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
        Input: st-keyscan - switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
        Input: sh-keysc - switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
        Input: qt1070 - switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
        Input: pxa27x_keypad - switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
        Input: pmic8xxx-keypad - switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
        Input: nomadik-ske-keypad - switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
        Input: mcs-touchkey - switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
        Input: max7359-keypad - switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
        ...
      86a0b425
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · 531d2644
      Linus Torvalds authored
      Pull devicetree updates from Rob Herring:
       "DT Bindings:
      
         - Various LED binding conversions and clean-ups. Convert the
           ir-spi-led, pwm-ir-tx, and gpio-ir-tx LED bindings to schemas.
           Consistently reference LED common.yaml or multi-led schemas and
           disallow undefined properties.
      
         - Convert IDT 89HPESx, pwm-clock, st,stmipid02, Xilinx PCIe hosts,
           and fsl,imx-fb bindings to schema
      
         - Add ata-generic, Broadcom u-boot environment, and dynamic MTD
           sub-partitions bindings.
      
         - Make all SPI based displays reference spi-peripheral-props.yaml
      
         - Fix some schema property regex's which should be fixed strings or
           were missing start/end anchors
      
         - Remove 'status' in examples, again...
      
        DT Core:
      
         - Fix a possible NULL dereference in overlay functions
      
         - Fix kexec reading 32-bit "linux,initrd-{start,end}" values (which
           never worked)
      
         - Add of_address_count() helper to count number of 'reg' entries
      
         - Support .dtso extension for DT overlay source files. Rename staging
           and unittest overlay files.
      
         - Update dtc to upstream v1.6.1-63-g55778a03df61"
      
      * tag 'devicetree-for-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (42 commits)
        dt-bindings: leds: Add missing references to common LED schema
        dt-bindings: leds: intel,lgm: Add missing 'led-gpios' property
        of: overlay: fix null pointer dereferencing in find_dup_cset_node_entry() and find_dup_cset_prop()
        dt-bindings: lcdif: Fix constraints for imx8mp
        media: dt-bindings: atmel,isc: Drop unneeded unevaluatedProperties
        dt-bindings: Drop Jee Heng Sia
        dt-bindings: thermal: cooling-devices: Add missing cache related properties
        dt-bindings: leds: irled: ir-spi-led: convert to DT schema
        dt-bindings: leds: irled: pwm-ir-tx: convert to DT schema
        dt-bindings: leds: irled: gpio-ir-tx: convert to DT schema
        dt-bindings: leds: mt6360: rework to match multi-led
        dt-bindings: leds: lp55xx: rework to match multi-led
        dt-bindings: leds: lp55xx: switch to preferred 'gpios' suffix
        dt-bindings: leds: lp55xx: allow label
        dt-bindings: leds: use unevaluatedProperties for common.yaml
        dt-bindings: thermal: tsens: Add SM6115 compatible
        of/kexec: Fix reading 32-bit "linux,initrd-{start,end}" values
        dt-bindings: display: Convert fsl,imx-fb.txt to dt-schema
        dt-bindings: Add missing start and/or end of line regex anchors
        dt-bindings: qcom,pdc: Add missing compatibles
        ...
      531d2644
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-v6.2-rc1' of... · 4d03390b
      Linus Torvalds authored
      Merge tag 'hwmon-for-v6.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
      
      Pull hwmon updates from Guenter Roeck:
       "New drivers:
      
         - Driver for OneXPlayer mini AMD sensors
      
         - Ampere's Altra smpro-hwmon driver
      
        New chip and attribute support in existing drivers:
      
         - nct6775: Support for ASUS CROSSHAIR VIII/TUF/ProArt B550M
      
         - pmbus/ltc2978: Support for LTC7132
      
         - aquacomputer_d5next: Support for temperature sensor offsets and
           flow sensor pulses
      
         - coretemp: Support for dynamic ttarget and tjmax
      
        Improvements:
      
         - Use devm_regulator_get_enable() where appropriate
      
         - Use sysfs_emit() instead of scnprintf()
      
         - Remove some useless #include <linux/hwmon-vid.h>
      
         - Include <linux/kstrtox.h> when appropriate
      
         - Use simple i2c probe
      
         - it87: Check for a valid chip before using force_id, and new new
           module parameter to ignore ACPI resource conflicts
      
         - jc42: Use regmap, and restore min/max/critical temperatures on
           resume
      
         - Add reporting power good and status to PMBus based regulators
      
        Last minute fixes:
      
         - emc2305: Fix probing of emc2301/2/3, and fix setting pwm values
           manually if THERMAL is enabled
      
        And various other minor fixes and improvements"
      
      * tag 'hwmon-for-v6.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (37 commits)
        hwmon: (emc2305) fix pwm never being able to set lower
        hwmon: (emc2305) fix unable to probe emc2301/2/3
        hwmon: (dell-smm) Move error message to make probing silent
        hwmon: use sysfs_emit() to instead of scnprintf()
        hwmon: (oxp-sensors) Fix pwm reading
        hwmon: (aquacomputer_d5next) Add support for Quadro flow sensor pulses
        hwmon: (pmbus/core) Implement regulator get_status
        hwmon: (oxp-sensors) Add AOK ZOE and Mini PRO
        hwmon: (gsc-hwmon) Switch to flexible array to simplify code
        hwmon: (pmbus) Add power good support
        hwmon: (nct6775) add ASUS CROSSHAIR VIII/TUF/ProArt B550M
        hwmon: (coretemp) Add support for dynamic ttarget
        hwmon: (coretemp) Add support for dynamic tjmax
        hwmon: (coretemp) rearrange tjmax handing code
        hwmon: Remove some useless #include <linux/hwmon-vid.h>
        hwmon: (coretemp) Remove obsolete temp_data->valid
        hwmon: add OneXPlayer mini AMD sensors driver
        hwmon: (aquacomputer_d5next) Clear up macros and comments
        hwmon: (it87) Add DMI table for future extensions
        hwmon: Include <linux/kstrtox.h> when appropriate
        ...
      4d03390b
    • Linus Torvalds's avatar
      Merge tag 'pinctrl-v6.2-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · 361c89a0
      Linus Torvalds authored
      Pull pin control updates from Linus Walleij:
       "The two large chunks is the header clean-up from Andy and the Qualcomm
        DT bindings clean-up from Krzysztof. Each which could give rise to
        conflicts, but I haven't seen any.
      
        The YAML conversions happening around the device tree is the biggest
        item in the series and is the result of Rob Herrings ambition to
        autovalidate these trees against strict schemas and it is paying off
        in lots of bugs found and ever prettier device trees. Sooner or later
        the transition will be complete, Krzysztof is fixing up all of the
        Qualcomm stuff, which is pretty voluminous.
      
        Core changes:
      
         - minor but nice and important documentation clean-ups
      
        New drivers:
      
         - subdriver for the Qualcomm SDM670 SoC
      
         - subdriver for the Intel Moorefield SoC
      
         - trivial support for the NXP Freescale i.MXRT1170 SoC
      
        Other changes and improvements
      
         - major clean-up of the Qualcomm pin control device tree bindings by
           Krzysztof
      
         - major header clean-up by Andy
      
         - some immutable irqchip clean-up for the Actions Semiconductor and
           Nuvoton drivers
      
         - GPIO helpers for The Cypress cy8c95x0 driver
      
         - bias handling in the Mediatek MT7986 driver
      
         - remove the unused pins-are-numbered concept that never flew"
      
      * tag 'pinctrl-v6.2-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (231 commits)
        pinctrl: thunderbay: fix possible memory leak in thunderbay_build_functions()
        dt-bindings: pinctrl: st,stm32: Deprecate pins-are-numbered
        dt-bindings: pinctrl: mediatek,mt65xx: Deprecate pins-are-numbered
        pinctrl: stm32: Remove check for pins-are-numbered
        pinctrl: mediatek: common: Remove check for pins-are-numbered
        pinctrl: qcom: remove duplicate included header files
        pinctrl: sunxi: d1: Add CAN bus pinmuxes
        pinctrl: loongson2: Fix some const correctness
        pinctrl: pinconf-generic: add missing of_node_put()
        pinctrl: intel: Enumerate PWM device when community has a capability
        pwm: lpss: Rename pwm_lpss_probe() --> devm_pwm_lpss_probe()
        pwm: lpss: Allow other drivers to enable PWM LPSS
        pwm: lpss: Include headers we are the direct user of
        pwm: lpss: Rename MAX_PWMS --> LPSS_MAX_PWMS
        pwm: Add a stub for devm_pwmchip_add()
        pinctrl: k210: call of_node_put()
        pinctrl: starfive: Use existing variable gpio
        dt-bindings: pinctrl: semtech,sx150xq: fix match patterns for 16 GPIOs matching
        pinconf-generic: fix style issues in pin_config_param doc
        pinctrl: pinctrl-loongson2: fix Kconfig dependency
        ...
      361c89a0
    • Linus Torvalds's avatar
      Merge tag 'spi-v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · d0f3ad23
      Linus Torvalds authored
      Pull spi updates from Mark Brown:
       "A busy enough release, but not for the core which has only seen very
        small updates. The biggest addition is the readdition of support for
        detailed configuration of the timings around chip selects. That had
        been removed for lack of use but there's been applications found for
        it on Atmel systems. Otherwise the updates are mostly feature
        additions and cleanups to existing drivers.
      
        Summary:
      
         - Provide a helper for getting device match data in a way that
           abstracts away which firmware interface is being used.
      
         - Re-add the spi_set_cs_timing() API for detailed configuration of
           the timing around chip select and support it on Atmel.
      
         - Support for MediaTek MT7986, Microchip PCI1xxxx, Nuvoton WPCM450
           FIU and Socionext F_OSPI"
      
      * tag 'spi-v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (66 commits)
        spi: dt-bindings: Convert Synquacer SPI to DT schema
        spi: spi-gpio: Don't set MOSI as an input if not 3WIRE mode
        spi: spi-mtk-nor: Add recovery mechanism for dma read timeout
        spi: spi-fsl-lpspi: add num-cs binding for lpspi
        spi: spi-fsl-lpspi: support multiple cs for lpspi
        spi: mtk-snfi: Add snfi support for MT7986 IC
        spi: spidev: mask SPI_CS_HIGH in SPI_IOC_RD_MODE
        spi: cadence-quadspi: Add minimum operable clock rate warning to baudrate divisor calculation
        spi: microchip: pci1xxxx: Add suspend and resume support for PCI1XXXX SPI driver
        spi: dt-bindings: nuvoton,wpcm450-fiu: Fix warning in example (missing reg property)
        spi: dt-bindings: nuvoton,wpcm450-fiu: Fix error in example (bogus include)
        spi: mediatek: Enable irq when pdata is ready
        spi: spi-mtk-nor: Unify write buffer on/off
        spi: intel: Add support for SFDP opcode
        spi: intel: Take possible chip address into account in intel_spi_read/write_reg()
        spi: intel: Implement adjust_op_size()
        spi: intel: Use ->replacement_op in intel_spi_hw_cycle()
        spi: cadence: Drop obsolete dependency on COMPILE_TEST
        spi: Add Nuvoton WPCM450 Flash Interface Unit (FIU) bindings
        spi: wpcm-fiu: Add direct map support
        ...
      d0f3ad23
    • Linus Torvalds's avatar
      Merge tag 'regulator-v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · c5589c43
      Linus Torvalds authored
      Pull regulator updates from Mark Brown:
       "Quite a quiet release for regulator, the diffstat is dominated by the
        I2C migration to probe_new() and the newly added MT6357 driver. We've
        just one framework addition and the rest is all new device support,
        fixes and cleanups.
      
        The framework addition is an API for requesting all regulators defined
        in DT, this isn't great practice but has reasonable applications when
        there is generic code handling devices on buses where the bus
        specification doesn't include power. The immediate application is MDIO
        but I believe there's others, it's another API that'll need an eye
        keeping on it for undesirable usage.
      
        Summary:
      
          - An API for requesting all regulators defined in DT
      
          - Conversion of lots of drivers to the I2C probe_new() API
      
          - Support for Mediatek MT6357, Qualcomm PM8550, PMR735a and Richtek
            RT6190"
      
      * tag 'regulator-v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (56 commits)
        regulator: core: Use different devices for resource allocation and DT lookup
        dt-bindings: Add missing 'unevaluatedProperties' to regulator nodes
        regulator: qcom-labibb: Fix missing of_node_put() in qcom_labibb_regulator_probe()
        regulator: add mt6357 regulator
        regulator: dt-bindings: Add binding schema for mt6357 regulators
        regulator: core: fix resource leak in regulator_register()
        regulator: core: fix module refcount leak in set_supply()
        regulator: core: fix use_count leakage when handling boot-on
        regulator: rk808: Use dev_err_probe
        regulator: rk808: reduce 'struct rk808' usage
        regulator: Drop obsolete dependencies on COMPILE_TEST
        regulator: pv88080-regulator: Convert to i2c's .probe_new()
        regulator: pfuze100-regulator: Convert to i2c's .probe_new()
        regulator: isl6271a-regulator: Convert to i2c's .probe_new()
        regulator: fan53555: Convert to i2c's .probe_new()
        regulator: act8865-regulator: Convert to i2c's .probe_new()
        regulator: qcom-rpmh: Add support for PM8550 regulators
        regulator: dt-bindings: qcom,rpmh: Add compatible for PM8550
        regulator: tps65023-regulator: Convert to i2c's .probe_new()
        regulator: tps62360-regulator: Convert to i2c's .probe_new()
        ...
      c5589c43
    • Linus Torvalds's avatar
      Merge tag 'regmap-v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · b8cc9174
      Linus Torvalds authored
      Pull regmap updates from Mark Brown:
       "A few new APIs here, support for the FSI bus (which is used in some
        PowerPC systems) plus a couple of new APIs, one allowing abstractions
        built on top of regmap to tell if the regmap can be used in an atomic
        context and one providing a callback for an in flight device which
        can't do interrupt masking very well.
      
        There's also a fix that I never got round to sending because it really
        should be fixed better but that's not happened yet and it does avoid
        the problem, the fix was in -next for a long time"
      
      * tag 'regmap-v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
        regmap-irq: Add handle_mask_sync() callback
        regmap: Add FSI bus support
        regmap: add regmap_might_sleep()
        regmap-irq: Use the new num_config_regs property in regmap_add_irq_chip_fwnode
      b8cc9174
    • Linus Torvalds's avatar
      Merge tag 'mtd/for-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux · 1e4fa020
      Linus Torvalds authored
      Pull mtd updates from Miquel Raynal:
       "MTD core changes:
         - Fix refcount error in del_mtd_device()
         - Fix possible resource leak in init_mtd()
         - Set ROOT_DEV for partitions marked as rootfs in DT
         - Describe marking rootfs partitions in the bindings
         - Fix device name leak when register device fails in add_mtd_device()
         - Try to find OF node for every MTD partition
         - simplify (a bit) code find partition-matching dynamic OF node
      
        MTD driver changes:
         - pxa2xx-flash maps: fix memory leak in probe
         - BCM parser: refer to ARCH_BCMBCA instead of ARCH_BCM4908
         - lpddr2_nvm: Fix possible null-ptr-deref
         - inftlcore: fix repeated words in comments
         - lart: remove driver
         - tplink:
            - Add TP-Link SafeLoader partitions table parser and bindings
            - Describe TP-Link SafeLoader parser
            - Describe TP-Link SafeLoader dynamic subpartitions
         - mtdoops:
            - Panic caused mtdoops to call mtdoops_erase function immediately
            - Add mtdoops_erase function and move mtdoops_inc_counter after it
            - Change printk() to counterpart pr_ functions
      
        MTD binding cleanup:
         - Fixed-partitions: Fix 'sercomm,scpart-id' schema
         - Standardize the style in the examples
         - Drop object types when referencing other files
         - Argue in favor of keeping additionalProperties set to true
         - NVMEM-cells:
            - Inherit from MTD partitions
            - Drop range property from example
         - Partitions:
            - Change qcom,smem-part partition type
            - Constrain the list of parsers
         - Physmap: Reuse the generic definitions
         - SPI-NOR: Drop common properties
         - Sunxi-nand: Add an example to validate the bindings
         - Onenand: Mention the expected node name
         - Ingenic: Mark partitions in the controller node as deprecated
         - NAND:
            - Standardize the child node name
            - Drop common properties already defined in generic files
            - nand-chip.yaml should reference mtd.yaml
         - Remove useless file about partitions
         - Clarify all partition subnodes
      
        SPI NOR core changes:
         - Add support for flash reset using the dt reset-gpios property.
         - Update hwcaps.mask to include 8D-8D-8D read and page program ops
           when xSPI profile 1.0 table is defined.
         - Bypass zero erase size in spi_nor_find_best_erase_type().
         - Fix select_uniform_erase to skip 0 erase size
         - Add generic flash driver. If a flash is not found in the flash_info
           array, fall back to the generic flash driver which is described
           solely by the flash's SFDP tables.
         - Fix the number of bytes for the dummy cycles in
           spi_nor_spimem_check_readop().
         - Introduce SPI_NOR_QUAD_PP flag, as PP_1_1_4 is not SFDP
           discoverable.
      
        SPI NOR manufacturer drivers changes:
         - Spansion:
            - use PARSE_SFDP for s28hs512t,
            - add support for s28hl512t, s28hl01gt, and s28hs01gt.
         - Gigadevice: Replace default_init() with post_bfpt() for gd25q256.
         - Micron - ST: Enable locking for mt25qu256a.
         - Winbond: Add support for W25Q512NW-IQ.
         - ISSI: Use PARSE_SFDP and SPI_NOR_QUAD_PP.
      
        Raw NAND core changes:
         - Drop obsolete dependencies on COMPILE_TEST
         - MAINTAINERS: rectify entry for MESON NAND controller bindings
         - Drop EXPORT_SYMBOL_GPL for nanddev_erase()
      
        Raw NAND driver changes:
         - marvell: Enable NFC/DEVBUS arbiter
         - gpmi: Use pm_runtime_resume_and_get instead of pm_runtime_get_sync
         - mpc5121: Replace NO_IRQ by 0
         - lpc32xx_{slc,mlc}:
            - Switch to using pm_ptr()
            - Switch to using gpiod API
         - lpc32xx_mlc: Switch to using pm_ptr()
         - cadence: Support 64-bit slave dma interface
         - rockchip: Describe rk3128-nfc in the bindings
         - brcmnand: Update interrupts description in the bindings
      
        SPI-NAND driver changes:
         - winbond:
            - Add Winbond W25N02KV flash support
            - Fix flash identification"
      
      * tag 'mtd/for-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux: (76 commits)
        mtd: rawnand: Drop obsolete dependencies on COMPILE_TEST
        mtd: maps: pxa2xx-flash: fix memory leak in probe
        mtd: core: Fix refcount error in del_mtd_device()
        mtd: spi-nor: add SFDP fixups for Quad Page Program
        mtd: spi-nor: issi: is25wp256: Init flash based on SFDP
        mtd: spi-nor: winbond: add support for W25Q512NW-IQ
        mtd: spi-nor: micron-st: Enable locking for mt25qu256a
        mtd: spi-nor: Fix the number of bytes for the dummy cycles
        mtd: spi-nor: gigadevice: gd25q256: replace gd25q256_default_init with gd25q256_post_bfpt
        mtd: spi-nor: Fix formatting in spi_nor_read_raw() kerneldoc comment
        mtd: spi-nor: sysfs: print JEDEC ID for generic flash driver
        mtd: spi-nor: add generic flash driver
        mtd: spi-nor: fix select_uniform_erase to skip 0 erase size
        mtd: spi-nor: move function declaration out of sfdp.h
        mtd: spi-nor: remember full JEDEC flash ID
        mtd: spi-nor: sysfs: hide manufacturer if it is not set
        mtd: spi-nor: hide jedec_id sysfs attribute if not present
        mtd: spi-nor: Check for zero erase size in spi_nor_find_best_erase_type()
        mtd: rawnand: marvell: Enable NFC/DEVBUS arbiter
        mtd: parsers: refer to ARCH_BCMBCA instead of ARCH_BCM4908
        ...
      1e4fa020
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2022-12-13' of git://anongit.freedesktop.org/drm/drm · a594533d
      Linus Torvalds authored
      Pull drm updates from Dave Airlie:
       "The biggest highlight is that the accel subsystem framework is merged.
        Hopefully for 6.3 we will be able to line up a driver to use it.
      
        In drivers land, i915 enables DG2 support by default now, and nouveau
        has a big stability refactoring and initial ampere support, AMD
        includes new hw IP support and should build on ARM again. There is
        also an ofdrm driver to take over offb on platforms it's used.
      
        Stuff outside my tree, the dma-buf patches hit a few places, the vc4
        firmware changes also do, and i915 has some interactions with MEI for
        discrete GPUs. I think all of those should have been acked/reviewed by
        relevant parties.
      
        New driver:
         - ofdrm - replacement for offb
      
        fbdev:
         - add support for nomodeset
      
        fourcc:
         - add Vivante tiled modifier
      
        core:
         - atomic-helpers: CRTC primary plane test fixes, fb access hooks
         - connector: TV API consistency, cmdline parser improvements
         - send connector hotplug on cleanup
         - sort makefile objects
      
        tests:
         - sort kunit tests
         - improve DP-MST tests
         - add kunit helpers to create a device
      
        sched:
         - module param for scheduling policy
         - refcounting fix
      
        buddy:
         - add back random seed log
      
        ttm:
         - convert ttm_resource to size_t
         - optimize pool allocations
      
        edid:
         - HFVSDB parsing support fixes
         - logging/debug improvements
         - DSC quirks
      
        dma-buf:
         - Add unlocked vmap and attachment mapping
         - move drivers to common locking convention
         - locking improvements
      
        firmware:
         - new API for rPI firmware and vc4
      
        xilinx:
         - zynqmp: displayport bridge support
         - dpsub fix
      
        bridge:
         - adv7533: Remove dynamic lane switching
         - it6505: Runtime PM support, sync improvements
         - ps8640: Handle AUX defer messages
         - tc358775: Drop soft-reset over I2C
      
        panel:
         - panel-edp: Add INX N116BGE-EA2 C2 and C4 support.
         - Jadard JD9365DA-H3
         - NewVision NV3051D
      
        amdgpu:
         - DCN support on ARM
         - DCN 2.1 secure display
         - Sienna Cichlid mode2 reset fixes
         - new GC 11.x firmware versions
         - drop AMD specific DSC workarounds in favour of drm code
         - clang warning fixes
         - scheduler rework
         - SR-IOV fixes
         - GPUVM locking fixes
         - fix memory leak in CS IOCTL error path
         - flexible array updates
         - enable new GC/PSP/SMU/NBIO IP
         - GFX preemption support for gfx9
      
        amdkfd:
         - cache size fixes
         - userptr fixes
         - enable cooperative launch on gfx 10.3
         - enable GC 11.0.4 KFD support
      
        radeon:
         - replace kmap with kmap_local_page
         - ACPI ref count fix
         - HDA audio notifier support
      
        i915:
         - DG2 enabled by default
         - MTL enablement work
         - hotplug refactoring
         - VBT improvements
         - Display and watermark refactoring
         - ADL-P workaround
         - temp disable runtime_pm for discrete-
         - fix for A380 as a secondary GPU
         - Wa_18017747507 for DG2
         - CS timestamp support fixes for gen5 and earlier
         - never purge busy TTM objects
         - use i915_sg_dma_sizes for all backends
         - demote GuC kernel contexts to normal priority
         - gvt: refactor for new MDEV interface
         - enable DC power states on eDP ports
         - fix gen 2/3 workarounds
      
        nouveau:
         - fix page fault handling
         - Ampere acceleration support
         - driver stability improvements
         - nva3 backlight support
      
        msm:
         - MSM_INFO_GET_FLAGS support
         - DPU: XR30 and P010 image formats
         - Qualcomm SM6115 support
         - DSI PHY support for QCM2290
         - HDMI: refactored dev init path
         - remove exclusive-fence hack
         - fix speed-bin detection
         - enable clamp to idle on 7c3
         - improved hangcheck detection
      
        vmwgfx:
         - fb and cursor refactoring
         - convert to generic hashtable
         - cursor improvements
      
        etnaviv:
         - hw workarounds
         - softpin MMU fixes
      
        ast:
         - atomic gamma LUT support
         - convert to SHMEM
      
        lcdif:
         - support YUV planes
         - Increase DMA burst size
         - FIFO threshold tuning
      
        meson:
         - fix return type of cvbs mode_valid
      
        mgag200:
         - fix PLL setup on some revisions
      
        sun4i:
         - A100 and D1 support
      
        udl:
         - modesetting improvements
         - hot unplug support
      
        vc4:
         - support PAL-M
         - fix regression preventing 4K @ 60Hz
         - fix NULL ptr deref
      
        v3d:
         - switch to drm managed resources
      
        renesas:
         - RZ/G2L DSI support
         - DU Kconfig cleanup
      
        mediatek:
         - fixup dpi and hdmi
         - MT8188 dpi support
         - MT8195 AFBC support
      
        tegra:
         - NVDEC hardware on Tegra234 SoC
      
        hdlcd:
         - switch to drm managed resources
      
        ingenic:
         - fix registration error path
      
        hisilicon:
         - convert to drm_mode_init
      
        maildp:
         - use managed resources
      
        mtk:
         - use drm_mode_init
      
        rockchip:
         - use drm_mode_copy"
      
      * tag 'drm-next-2022-12-13' of git://anongit.freedesktop.org/drm/drm: (1397 commits)
        drm/amdgpu: fix mmhub register base coding error
        drm/amdgpu: add tmz support for GC IP v11.0.4
        drm/amdgpu: enable GFX Clock Gating control for GC IP v11.0.4
        drm/amdgpu: enable GFX Power Gating for GC IP v11.0.4
        drm/amdgpu: enable GFX IP v11.0.4 CG support
        drm/amdgpu: Make amdgpu_ring_mux functions as static
        drm/amdgpu: generally allow over-commit during BO allocation
        drm/amd/display: fix array index out of bound error in DCN32 DML
        drm/amd/display: 3.2.215
        drm/amd/display: set optimized required for comp buf changes
        drm/amd/display: Add debug option to skip PSR CRTC disable
        drm/amd/display: correct DML calc error of UrgentLatency
        drm/amd/display: correct static_screen_event_mask
        drm/amd/display: Ensure commit_streams returns the DC return code
        drm/amd/display: read invalid ddc pin status cause engine busy
        drm/amd/display: Bypass DET swath fill check for max clocks
        drm/amd/display: Disable uclk pstate for subvp pipes
        drm/amd/display: Fix DCN2.1 default DSC clocks
        drm/amd/display: Enable dp_hdmi21_pcon support
        drm/amd/display: prevent seamless boot on displays that don't have the preferred dig
        ...
      a594533d