1. 16 May, 2024 5 commits
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2024-05-16' of https://gitlab.freedesktop.org/drm/kernel · 972a2543
      Linus Torvalds authored
      Pull drm fix from Dave Airlie:
      
       - fix breakage in buddy allocator
      
      * tag 'drm-next-2024-05-16' of https://gitlab.freedesktop.org/drm/kernel:
        drm/tests: Add a unit test for range bias allocation
        drm/buddy: Fix the range bias clear memory allocation issue
      972a2543
    • Arunpravin Paneer Selvam's avatar
      drm/tests: Add a unit test for range bias allocation · 431c590c
      Arunpravin Paneer Selvam authored
      Allocate cleared blocks in the bias range when the DRM
      buddy's clear avail is zero. This will validate the bias
      range allocation in scenarios like system boot when no
      cleared blocks are available and exercise the fallback
      path too. The resulting blocks should always be dirty.
      
      v1:(Matthew)
        - move the size to the variable declaration section.
        - move the mm.clear_avail init to allocator init.
      Signed-off-by: default avatarArunpravin Paneer Selvam <Arunpravin.PaneerSelvam@amd.com>
      Reviewed-by: default avatarMatthew Auld <matthew.auld@intel.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20240514145636.16253-2-Arunpravin.PaneerSelvam@amd.com
      431c590c
    • Arunpravin Paneer Selvam's avatar
      drm/buddy: Fix the range bias clear memory allocation issue · bb21700b
      Arunpravin Paneer Selvam authored
      Problem statement: During the system boot time, an application request
      for the bulk volume of cleared range bias memory when the clear_avail
      is zero, we dont fallback into normal allocation method as we had an
      unnecessary clear_avail check which prevents the fallback method leads
      to fb allocation failure following system goes into unresponsive state.
      
      Solution: Remove the unnecessary clear_avail check in the range bias
      allocation function.
      
      v2: add a kunit for this corner case (Daniel Vetter)
      Signed-off-by: default avatarArunpravin Paneer Selvam <Arunpravin.PaneerSelvam@amd.com>
      Fixes: 96950929 ("drm/buddy: Implement tracking clear page feature")
      Reviewed-by: default avatarMatthew Auld <matthew.auld@intel.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20240514145636.16253-1-Arunpravin.PaneerSelvam@amd.com
      bb21700b
    • Linus Torvalds's avatar
      Merge tag 'wq-for-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · 3c999d1a
      Linus Torvalds authored
      Pull workqueue updates from Tejun Heo:
      
       - Work items can now be disabled and enabled, and cancel_work_sync()
         and disable_work() can be called form atomic contexts for BH work
         items.
      
         This closes feature gap with tasklet and should allow converting all
         existing tasklet users to BH workqueues.
      
       - Improve pool sharing for unbound workqueues with strict affinity.
      
       - Misc changes including doc updates, improved debug annotations and
         cleanups.
      
      * tag 'wq-for-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue: Use "@..." in function comment to describe variable length argument
        workqueue: Add destroy_work_on_stack() in workqueue_softirq_dead()
        workqueue: remove unnecessary import and function in wq_monitor.py
        workqueue: Introduce enable_and_queue_work() convenience function
        workqueue: add function in event of workqueue_activate_work
        workqueue: Cleanup subsys attribute registration
        workqueue: Use list_last_entry() to get the last idle worker
        workqueue: Move attrs->cpumask out of worker_pool's properties when attrs->affn_strict
        workqueue: Use INIT_WORK_ONSTACK in workqueue_softirq_dead()
        workqueue: Allow cancel_work_sync() and disable_work() from atomic contexts on BH work items
        workqueue: Remember whether a work item was on a BH workqueue
        workqueue: Remove WORK_OFFQ_CANCELING
        workqueue: Implement disable/enable for (delayed) work items
        workqueue: Preserve OFFQ bits in cancel[_sync] paths
      3c999d1a
    • Linus Torvalds's avatar
      Merge tag 'cgroup-for-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · de6fef50
      Linus Torvalds authored
      Pull cgroup updates from Tejun Heo:
      
       - The locking around cpuset hotplug processing has always been a bit of
         mess which was worked around by making hotplug processing
         asynchronous. The asynchronity isn't great and led to other issues.
      
         We tried to make the behavior synchronous a while ago but that led to
         lockdep splats. Waiman took another stab at cleaning up and making it
         synchronous. The patch has been in -next for well over a month and
         there haven't been any complaints, so fingers crossed.
      
       - Tracepoints added to help understanding rstat lock contentions.
      
       - A bunch of minor changes - doc updates, code cleanups and selftests.
      
      * tag 'cgroup-for-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup: (24 commits)
        cgroup/rstat: add cgroup_rstat_cpu_lock helpers and tracepoints
        selftests/cgroup: Drop define _GNU_SOURCE
        docs: cgroup-v1: Update page cache removal functions
        selftests/cgroup: fix uninitialized variables in test_zswap.c
        selftests/cgroup: cpu_hogger init: use {} instead of {NULL}
        selftests/cgroup: fix clang warnings: uninitialized fd variable
        selftests/cgroup: fix clang build failures for abs() calls
        cgroup/cpuset: Remove outdated comment in sched_partition_write()
        cgroup/cpuset: Fix incorrect top_cpuset flags
        cgroup/cpuset: Avoid clearing CS_SCHED_LOAD_BALANCE twice
        cgroup/cpuset: Statically initialize more members of top_cpuset
        cgroup: Avoid unnecessary looping in cgroup_no_v1()
        cgroup, legacy_freezer: update comment for freezer_css_offline()
        docs, cgroup: add entries for pids to cgroup-v2.rst
        cgroup: don't call cgroup1_pidlist_destroy_all() for v2
        cgroup_freezer: update comment for freezer_css_online()
        cgroup/rstat: desc member cgrp in cgroup_rstat_flush_release
        cgroup/rstat: add cgroup_rstat_lock helpers and tracepoints
        cgroup/pids: Remove superfluous zeroing
        docs: cgroup-v1: Fix description for css_online
        ...
      de6fef50
  2. 15 May, 2024 29 commits
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · f4b0c4b5
      Linus Torvalds authored
      Pull KVM updates from Paolo Bonzini:
       "ARM:
      
         - Move a lot of state that was previously stored on a per vcpu basis
           into a per-CPU area, because it is only pertinent to the host while
           the vcpu is loaded. This results in better state tracking, and a
           smaller vcpu structure.
      
         - Add full handling of the ERET/ERETAA/ERETAB instructions in nested
           virtualisation. The last two instructions also require emulating
           part of the pointer authentication extension. As a result, the trap
           handling of pointer authentication has been greatly simplified.
      
         - Turn the global (and not very scalable) LPI translation cache into
           a per-ITS, scalable cache, making non directly injected LPIs much
           cheaper to make visible to the vcpu.
      
         - A batch of pKVM patches, mostly fixes and cleanups, as the
           upstreaming process seems to be resuming. Fingers crossed!
      
         - Allocate PPIs and SGIs outside of the vcpu structure, allowing for
           smaller EL2 mapping and some flexibility in implementing more or
           less than 32 private IRQs.
      
         - Purge stale mpidr_data if a vcpu is created after the MPIDR map has
           been created.
      
         - Preserve vcpu-specific ID registers across a vcpu reset.
      
         - Various minor cleanups and improvements.
      
        LoongArch:
      
         - Add ParaVirt IPI support
      
         - Add software breakpoint support
      
         - Add mmio trace events support
      
        RISC-V:
      
         - Support guest breakpoints using ebreak
      
         - Introduce per-VCPU mp_state_lock and reset_cntx_lock
      
         - Virtualize SBI PMU snapshot and counter overflow interrupts
      
         - New selftests for SBI PMU and Guest ebreak
      
         - Some preparatory work for both TDX and SNP page fault handling.
      
           This also cleans up the page fault path, so that the priorities of
           various kinds of fauls (private page, no memory, write to read-only
           slot, etc.) are easier to follow.
      
        x86:
      
         - Minimize amount of time that shadow PTEs remain in the special
           REMOVED_SPTE state.
      
           This is a state where the mmu_lock is held for reading but
           concurrent accesses to the PTE have to spin; shortening its use
           allows other vCPUs to repopulate the zapped region while the zapper
           finishes tearing down the old, defunct page tables.
      
         - Advertise the max mappable GPA in the "guest MAXPHYADDR" CPUID
           field, which is defined by hardware but left for software use.
      
           This lets KVM communicate its inability to map GPAs that set bits
           51:48 on hosts without 5-level nested page tables. Guest firmware
           is expected to use the information when mapping BARs; this avoids
           that they end up at a legal, but unmappable, GPA.
      
         - Fixed a bug where KVM would not reject accesses to MSR that aren't
           supposed to exist given the vCPU model and/or KVM configuration.
      
         - As usual, a bunch of code cleanups.
      
        x86 (AMD):
      
         - Implement a new and improved API to initialize SEV and SEV-ES VMs,
           which will also be extendable to SEV-SNP.
      
           The new API specifies the desired encryption in KVM_CREATE_VM and
           then separately initializes the VM. The new API also allows
           customizing the desired set of VMSA features; the features affect
           the measurement of the VM's initial state, and therefore enabling
           them cannot be done tout court by the hypervisor.
      
           While at it, the new API includes two bugfixes that couldn't be
           applied to the old one without a flag day in userspace or without
           affecting the initial measurement. When a SEV-ES VM is created with
           the new VM type, KVM_GET_REGS/KVM_SET_REGS and friends are rejected
           once the VMSA has been encrypted. Also, the FPU and AVX state will
           be synchronized and encrypted too.
      
         - Support for GHCB version 2 as applicable to SEV-ES guests.
      
           This, once more, is only accessible when using the new
           KVM_SEV_INIT2 flow for initialization of SEV-ES VMs.
      
        x86 (Intel):
      
         - An initial bunch of prerequisite patches for Intel TDX were merged.
      
           They generally don't do anything interesting. The only somewhat
           user visible change is a new debugging mode that checks that KVM's
           MMU never triggers a #VE virtualization exception in the guest.
      
         - Clear vmcs.EXIT_QUALIFICATION when synthesizing an EPT Misconfig
           VM-Exit to L1, as per the SDM.
      
        Generic:
      
         - Use vfree() instead of kvfree() for allocations that always use
           vcalloc() or __vcalloc().
      
         - Remove .change_pte() MMU notifier - the changes to non-KVM code are
           small and Andrew Morton asked that I also take those through the
           KVM tree.
      
           The callback was only ever implemented by KVM (which was also the
           original user of MMU notifiers) but it had been nonfunctional ever
           since calls to set_pte_at_notify were wrapped with
           invalidate_range_start and invalidate_range_end... in 2012.
      
        Selftests:
      
         - Enhance the demand paging test to allow for better reporting and
           stressing of UFFD performance.
      
         - Convert the steal time test to generate TAP-friendly output.
      
         - Fix a flaky false positive in the xen_shinfo_test due to comparing
           elapsed time across two different clock domains.
      
         - Skip the MONITOR/MWAIT test if the host doesn't actually support
           MWAIT.
      
         - Avoid unnecessary use of "sudo" in the NX hugepage test wrapper
           shell script, to play nice with running in a minimal userspace
           environment.
      
         - Allow skipping the RSEQ test's sanity check that the vCPU was able
           to complete a reasonable number of KVM_RUNs, as the assert can fail
           on a completely valid setup.
      
           If the test is run on a large-ish system that is otherwise idle,
           and the test isn't affined to a low-ish number of CPUs, the vCPU
           task can be repeatedly migrated to CPUs that are in deep sleep
           states, which results in the vCPU having very little net runtime
           before the next migration due to high wakeup latencies.
      
         - Define _GNU_SOURCE for all selftests to fix a warning that was
           introduced by a change to kselftest_harness.h late in the 6.9
           cycle, and because forcing every test to #define _GNU_SOURCE is
           painful.
      
         - Provide a global pseudo-RNG instance for all tests, so that library
           code can generate random, but determinstic numbers.
      
         - Use the global pRNG to randomly force emulation of select writes
           from guest code on x86, e.g. to help validate KVM's emulation of
           locked accesses.
      
         - Allocate and initialize x86's GDT, IDT, TSS, segments, and default
           exception handlers at VM creation, instead of forcing tests to
           manually trigger the related setup.
      
        Documentation:
      
         - Fix a goof in the KVM_CREATE_GUEST_MEMFD documentation"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (225 commits)
        selftests/kvm: remove dead file
        KVM: selftests: arm64: Test vCPU-scoped feature ID registers
        KVM: selftests: arm64: Test that feature ID regs survive a reset
        KVM: selftests: arm64: Store expected register value in set_id_regs
        KVM: selftests: arm64: Rename helper in set_id_regs to imply VM scope
        KVM: arm64: Only reset vCPU-scoped feature ID regs once
        KVM: arm64: Reset VM feature ID regs from kvm_reset_sys_regs()
        KVM: arm64: Rename is_id_reg() to imply VM scope
        KVM: arm64: Destroy mpidr_data for 'late' vCPU creation
        KVM: arm64: Use hVHE in pKVM by default on CPUs with VHE support
        KVM: arm64: Fix hvhe/nvhe early alias parsing
        KVM: SEV: Allow per-guest configuration of GHCB protocol version
        KVM: SEV: Add GHCB handling for termination requests
        KVM: SEV: Add GHCB handling for Hypervisor Feature Support requests
        KVM: SEV: Add support to handle AP reset MSR protocol
        KVM: x86: Explicitly zero kvm_caps during vendor module load
        KVM: x86: Fully re-initialize supported_mce_cap on vendor module load
        KVM: x86: Fully re-initialize supported_vm_types on vendor module load
        KVM: x86/mmu: Sanity check that __kvm_faultin_pfn() doesn't create noslot pfns
        KVM: x86/mmu: Initialize kvm_page_fault's pfn and hva to error values
        ...
      f4b0c4b5
    • Tejun Heo's avatar
      a2a58909
    • Linus Torvalds's avatar
      Merge tag 'cxl-for-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl · 2e925002
      Linus Torvalds authored
      Pull CXL updates from Dave Jiang:
      
       - Three CXL mailbox passthrough commands are added to support the
         populating and clearing of vendor debug logs:
           - Get Log Capabilities
           - Get Supported Log Sub-List Commands
           - Clear Log
      
       - Add support of Device Phyiscal Address (DPA) to Host Physical Address
         (HPA) translation for CXL events of cxl_dram and cxl_general media.
      
         This allows user space to figure out which CXL region the event
         occured via trace event.
      
       - Connect CXL to CPER reporting.
      
         If a device is configured for firmware first, CXL event records are
         not sent directly to the host. Those records are reported through EFI
         Common Platform Error Records (CPER). Add support to route the CPER
         records through the CXL sub-system in order to provide DPA to HPA
         translation and also event decoding and tracing. This is useful for
         users to determine which system issues may correspond to specific
         hardware events.
      
       - A number of misc cleanups and fixes:
           - Fix for compile warning of cxl_security_ops
           - Add debug message for invalid interleave granularity
           - Enhancement to cxl-test event testing
           - Add dev_warn() on unsupported mixed mode decoder
           - Fix use of phys_to_target_node() for x86
           - Use helper function for decoder enum instead of open coding
           - Include missing headers for cxl-event
           - Fix MAINTAINERS file entry
           - Fix cxlr_pmem memory leak
           - Cleanup __cxl_parse_cfmws via scope-based resource menagement
           - Convert cxl_pmem_region_alloc() to scope-based resource management
      
      * tag 'cxl-for-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl: (21 commits)
        cxl/cper: Remove duplicated GUID defines
        cxl/cper: Fix non-ACPI-APEI-GHES build
        cxl/pci: Process CPER events
        acpi/ghes: Process CXL Component Events
        cxl/region: Convert cxl_pmem_region_alloc to scope-based resource management
        cxl/acpi: Cleanup __cxl_parse_cfmws()
        cxl/region: Fix cxlr_pmem leaks
        cxl/core: Add region info to cxl_general_media and cxl_dram events
        cxl/region: Move cxl_trace_hpa() work to the region driver
        cxl/region: Move cxl_dpa_to_region() work to the region driver
        cxl/trace: Correct DPA field masks for general_media & dram events
        MAINTAINERS: repair file entry in COMPUTE EXPRESS LINK
        cxl/cxl-event: include missing <linux/types.h> and <linux/uuid.h>
        cxl/hdm: Debug, use decoder name function
        cxl: Fix use of phys_to_target_node() for x86
        cxl/hdm: dev_warn() on unsupported mixed mode decoder
        cxl/test: Enhance event testing
        cxl/hdm: Add debug message for invalid interleave granularity
        cxl: Fix compile warning for cxl_security_ops extern
        cxl/mbox: Add Clear Log mailbox command
        ...
      2e925002
    • Linus Torvalds's avatar
      Merge tag 'libnvdimm-for-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · c405aa3e
      Linus Torvalds authored
      Pull nvdimm updates from Ira Weiny:
       "The changes include removing duplicate code and updating the nvdimm
        tree to the current kernel interfaces such as using const for struct
        device_type and changing the platform remove callback signature"
      
      * tag 'libnvdimm-for-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
        dax: remove redundant assignment to variable rc
        ndtest: Convert to platform remove callback returning void
        nvdimm/btt: always set max_integrity_segments
        nvdimm: remove nd_integrity_init
        dax: constify the struct device_type usage
        powerpc/papr_scm: Move duplicate definitions to common header files
      c405aa3e
    • Linus Torvalds's avatar
      Merge tag 'modules-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux · a4946824
      Linus Torvalds authored
      Pull modules updates from Luis Chamberlain:
       "Finally something fun. Mike Rapoport does some cleanup to allow us to
        take out module_alloc() out of modules into a new paint shedded
        execmem_alloc() and execmem_free() so to make emphasis these helpers
        are actually used outside of modules.
      
        It starts with a non-functional changes API rename / placeholders to
        then allow architectures to define their requirements into a new shiny
        struct execmem_info with ranges, and requirements for those ranges.
      
        Archs now can intitialize this execmem_info as the last part of
        mm_core_init() if they have to diverge from the norm. Each range is a
        known type clearly articulated and spelled out in enum execmem_type.
      
        Although a lot of this is major cleanup and prep work for future
        enhancements an immediate clear gain is we get to enable KPROBES
        without MODULES now. That is ultimately what motiviated to pick this
        work up again, now with smaller goal as concrete stepping stone"
      
      * tag 'modules-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux:
        bpf: remove CONFIG_BPF_JIT dependency on CONFIG_MODULES of
        kprobes: remove dependency on CONFIG_MODULES
        powerpc: use CONFIG_EXECMEM instead of CONFIG_MODULES where appropriate
        x86/ftrace: enable dynamic ftrace without CONFIG_MODULES
        arch: make execmem setup available regardless of CONFIG_MODULES
        powerpc: extend execmem_params for kprobes allocations
        arm64: extend execmem_info for generated code allocations
        riscv: extend execmem_params for generated code allocations
        mm/execmem, arch: convert remaining overrides of module_alloc to execmem
        mm/execmem, arch: convert simple overrides of module_alloc to execmem
        mm: introduce execmem_alloc() and execmem_free()
        module: make module_memory_{alloc,free} more self-contained
        sparc: simplify module_alloc()
        nios2: define virtual address space for modules
        mips: module: rename MODULE_START to MODULES_VADDR
        arm64: module: remove unneeded call to kasan_alloc_module_shadow()
        kallsyms: replace deprecated strncpy with strscpy
        module: allow UNUSED_KSYMS_WHITELIST to be relative against objtree.
      a4946824
    • Linus Torvalds's avatar
      Merge tag 'livepatching-for-6.10' of... · 8c06da67
      Linus Torvalds authored
      Merge tag 'livepatching-for-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching
      
      Pull livepatching update from Petr Mladek:
      
       - Use more informative names for the livepatch transition states
      
      * tag 'livepatching-for-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching:
        livepatch: Rename KLP_* to KLP_TRANSITION_*
      8c06da67
    • Linus Torvalds's avatar
      Merge tag 'printk-for-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux · a19264d0
      Linus Torvalds authored
      Pull printk updates from Petr Mladek:
      
       - Use no_printk() instead of "if (0) printk()" constructs to avoid
         generating printk index for messages disabled at compile time
      
       - Remove deprecated strncpy/strcpy from printk.c
      
       - Remove redundant CONFIG_BASE_FULL in favor of CONFIG_BASE_SMALL
      
      * tag 'printk-for-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux:
        printk: cleanup deprecated uses of strncpy/strcpy
        printk: Remove redundant CONFIG_BASE_FULL
        printk: Change type of CONFIG_BASE_SMALL to bool
        printk: Fix LOG_CPU_MAX_BUF_SHIFT when BASE_SMALL is enabled
        ceph: Use no_printk() helper
        dyndbg: Use *no_printk() helpers
        dev_printk: Add and use dev_no_printk()
        printk: Let no_printk() use _printk()
      a19264d0
    • Linus Torvalds's avatar
      Merge tag '6.10-rc-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6 · 1ab1bd2f
      Linus Torvalds authored
      Pull smb client updates from Steve French:
      
       - three important fixes to recent netfs conversion to fix various
         xfstest failures, and rmmod oops
      
       - cleanup patch to fix various GCC-14 warnings
      
      * tag '6.10-rc-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6:
        smb3: fix perf regression with cached writes with netfs conversion
        cifs: Fix locking in cifs_strict_readv()
        cifs: Change from mempool_destroy to mempool_exit for request pools
        smb: smb2pdu.h: Avoid -Wflex-array-member-not-at-end warnings
      1ab1bd2f
    • Paolo Bonzini's avatar
      selftests/kvm: remove dead file · cba23f33
      Paolo Bonzini authored
      This file was supposed to be removed in commit 2b7deea3 ("Revert
      "kvm: selftests: move base kvm_util.h declarations to kvm_util_base.h""),
      but it survived.  Remove it now.
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      cba23f33
    • Linus Torvalds's avatar
      Merge tag 'sound-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 33e02dc6
      Linus Torvalds authored
      Pull sound updates from Takashi Iwai:
       "This one became bigger than usual, not in the total size but rather
        containing lots of small changes all over the places.
      
        The majority of changes are about ASoC, especially SOF / Intel stuff,
        and we see an interesting work for ASoC DAPM graph visualization,
        while there are many other code cleanup and refactoring, too.
      
        Core:
         - A deadlock fix at device disconnection
         - A new tool dapm-graph for visualising the DAPM state
      
        ASoC:
         - Large updates throughout the Intel audio drivers
         - Fixes and clarifications for the DAPM documentation
         - Cleanups of accessors for driver data, module labelling, and for
           constification
         - Modernsation and cleanup work in the Mediatek drivers
         - Several fixes and features for the DaVinci I2S driver
         - New drivers for several AMD and Intel platforms, Nuvoton NAU8325,
           Rockchip RK3308 and Texas Instruments PCM6240
      
        HD-audio:
         - Cleanup for CONFIG_PM dependencies
         - Cirrus HD-audio codec fixes and quirks
      
        Others:
         - Series of tree-wide fixes in Makefiles to use *-y
         - Additions of missing module descriptions
         - Scarlett2 USB mixer enhancements
         - A series of legacy emu10k1 fixes and improvements"
      
      * tag 'sound-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (603 commits)
        ALSA: hda/realtek: Drop doubly quirk entry for 103c:8a2e
        ALSA: hda/realtek - fixed headset Mic not show
        ASoC: SOF: amd: Fix build error with built-in config
        ALSA: scarlett2: Increase mixer range to +12dB
        ALSA: scarlett2: Add S/PDIF source selection controls
        ALSA: core: Remove superfluous CONFIG_PM
        ALSA: Fix deadlocks with kctl removals at disconnection
        ASoC: audio-graph-card2: call of_node_get() before of_get_next_child()
        ASoC: SOF: amd: Correct spaces in Makefile
        ASoC: rt715-sdca-sdw: Fix wrong complete waiting in rt715_dev_resume()
        ASoC: Intel: sof_sdw_rt_amp: use dai parameter
        ASoC: Intel: sof_sdw: add dai parameter to rtd_init callback
        ASoC: Intel: sof_sdw: use .controls/.widgets to add controls/widgets
        ASoC: Intel: sof_sdw: add controls and dapm widgets in codec_info
        ASoC: Intel: sof_sdw: use generic name for controls/widgets
        ASoC: Intel: sof_sdw_cs_amp: rename Speakers to Speaker
        ASoC: Intel: maxim-common: change max98373 data to static
        ASoC: Intel: sof_sdw: add max98373 dapm routes
        ASoC: Intel: sof_rt5682: use max_98373_dai_link function
        ASoC: Intel: sof_nau8825: use max_98373_dai_link function
        ...
      33e02dc6
    • Linus Torvalds's avatar
      Merge tag 'fbdev-for-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/linux-fbdev · d3467277
      Linus Torvalds authored
      Pull fbdev updates from Helge Deller:
       "Code cleanups for offb, shmobile, sisfb, savage, au1200fb, uvesafb,
        omap2 and sh7760fb, as well as the addition of some HAS_IOPORT
        dependencies and adjustment of generated logo file to make build
        reproducible"
      
      * tag 'fbdev-for-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/linux-fbdev:
        fbdev: offb: replace of_node_put with __free(device_node)
        fbdev: savage: Handle err return when savagefb_check_var failed
        video: hdmi: prefer length specifier in format over string copying
        fbdev: uvesafb: replace deprecated strncpy with strscpy_pad
        fbdev: au1200fb: replace deprecated strncpy with strscpy
        fbdev: fsl-diu-fb: replace deprecated strncpy with strscpy_pad
        video: logo: Drop full path of the input filename in generated file
        fbdev: add HAS_IOPORT dependencies
        fbdev: sh7760fb: allow modular build
        fbdev: sisfb: hide unused variables
        fbdev: shmobile: fix snprintf truncation
        fbdev: omap2: replace of_graph_get_next_endpoint()
      d3467277
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2024-05-15' of https://gitlab.freedesktop.org/drm/kernel · db5d28c0
      Linus Torvalds authored
      Pull drm updates from Dave Airlie:
       "This is the main pull request for the drm subsystems for 6.10.
      
        In drivers the main thing is a new driver for ARM Mali firmware based
        GPUs, otherwise there are a lot of changes to amdgpu/xe/i915/msm and
        scattered changes to everything else.
      
        In the core a bunch of headers and Kconfig was refactored, along with
        the addition of a new panic handler which is meant to provide a user
        friendly message when a panic happens and graphical display is
        enabled.
      
        New drivers:
         - panthor: ARM Mali/Immortalis CSF-based GPU driver
      
        Core:
         - add a CONFIG_DRM_WERROR option
         - make more headers self-contained
         - grab resv lock in pin/unpin
         - fix vmap resv locking
         - EDID/eDP panel matching
         - Kconfig cleanups
         - DT sound bindings
         - Add SIZE_HINTS property for cursor planes
         - Add struct drm_edid_product_id and helpers.
         - Use drm device based logging in more drm functions.
         - drop seq_file.h from a bunch of places
         - use drm_edid driver conversions
      
        dp:
         - DP Tunnel documentation
         - MST read sideband cap
         - Adaptive sync SDP prep work
      
        ttm:
         - improve placement for TTM BOs in idle/busy handling
      
        panic:
         - Fixes for drm-panic, and option to test it.
         - Add drm panic to simpledrm, mgag200, imx, ast
      
        bridge:
         - improve init ordering
         - adv7511: allow GPIO pin sharing
         - tc358775: add tc358675 support
      
        panel:
         - AUO B120XAN01.0
         - Samsung s6e3fa7
         - BOE NT116WHM-N44
         - CMN N116BCA-EA1,
         - CrystalClear CMT430B19N00
         - Startek KD050HDFIA020-C020A
         - powertip PH128800T006-ZHC01
         - Innolux G121X1-L03
         - LG sw43408
         - Khadas TS050 V2
         - EDO RM69380 OLED
         - CSOT MNB601LS1-1
      
        amdgpu:
         - HDCP/ODM/RAS fixes
         - Devcoredump improvements
         - Expose VCN activity via sysfs
         - SMY 13.0.x updates
         - Enable fast updates on DCN 3.1.4
         - Add dclk and vclk reporting on additional devices
         - Add ACA RAS infrastructure
         - Implement TLB flush fence
         - EEPROM handling fixes
         - SMUIO 14.0.2 support
         - SMU 14.0.1 Updates
         - SMU 14.0.2 support
         - Sync page table freeing with TLB flushes
         - DML2 refactor
         - DC debug improvements
         - DCN 3.5.x Updates
         - GPU reset fixes
         - HDP fix for second GFX pipe on GC 10.x
         - Enable secondary GFX pipe on GC 10.3
         - Refactor and clean up BACO/BOCO/BAMACO handling
         - Remove invalid TTM resource start check
         - UAF fix in VA IOCTL
         - GPUVM page fault redirection to secondary IH rings for IH 6.x
         - Initial support for mapping kernel queues via MES
         - Fix VRAM memory accounting
      
        amdkfd:
         - MQD handling cleanup
         - Preemption handling fixes for XCDs
         - TLB flush fix for GC 9.4.2
         - Properly clean up workqueue during module unload
         - Fix memory leak process create failure
         - Range check CP bad op exception targets to avoid reporting invalid exceptions to userspace
         - Fix eviction fence handling
         - Fix leak in GPU memory allocation failure case
         - DMABuf import handling fix
         - Enable SQ watchpoint for gfx10
      
        i915:
         - Adding new DG2 PCI ID
         - add context hints for GT frequency
         - enable only one CCS for compute workloads
         - new workarounds
         - Fix UAF on destroy against retire race and remove two earlier partial fixes
         - Limit the reserved VM space to only the platforms that need it
         - Fix gt reset with GuC submission is disable
         - Add and use gt_to_guc() wrapper
      
        i915/xe display:
         - Lunar Lake display enabling, including cdclk and other refactors
         - BIOS/VBT/opregion related refactor
         - Digital port related refactor/clean-up
         - Fix 2s boot time regression on DP panel replay init
         - Remove duplication on audio enable/disable on SDVO and g4x+ DP
         - Disable AuxCCS framebuffers if built for Xe
         - Make crtc disable more atomic
         - Increase DP idle pattern wait timeout to 2ms
         - Start using container_of_const() for some extra const safety
         - Fix Jasper Lake boot freeze
         - Enable MST mode for 128b/132b single-stream sideband
         - Enable Adaptive Sync SDP Support for DP
         - Fix MTL supported DP rates - removal of UHBR13.5
         - PLL refactoring
         - Limit eDP MSO pipe only for display version 20
         - More display refactor towards independence from i915 dev_priv
         - Convert i915/xe fbdev to DRM client
         - More initial work to make display code more independent from i915
      
        xe:
         - improved error capture
         - clean up some uAPI leftovers
         - devcoredump update
         - Add BMG mocs table
         - Handle GSCCS ER interrupt
         - Implement xe2- and GuC workarounds
         - struct xe_device cleanup
         - Hwmon updates
         - Add LRC parsing for more GPU instruction
         - Increase VM_BIND number of per-ioctl Ops
         - drm/xe: Add XE_BO_GGTT_INVALIDATE flag
         - Initial development for SR-IOV support
         - Add new PCI IDs to DG2 platform
         - Move userptr over to start using hmm_range_fault
      
        msm:
         - Switched to generating register header files during build process
           instead of shipping pre-generated headers
         - Merged DPU and MDP4 format databases.
         - DP:
           - Stop using compat string to distinguish DP and eDP cases
           - Added support for X Elite platform (X1E80100)
           - Reworked DP aux/audio support
           - Added SM6350 DP to the bindings
         - GPU:
           - a7xx perfcntr reg fixes
           - MAINTAINERS updates
           - a750 devcoredump support
      
        radeon:
         - Silence UBSAN warnings related to flexible arrays
      
        nouveau:
         - move some uAPI objects to uapi headers
      
        omapdrm:
         - console fix
      
        ast:
         - add i2c polling
      
        qaic:
         - add debugfs entries
      
        exynos:
         - fix platform_driver .owner
         - drop cleanup code
      
        mediatek:
         - Use devm_platform_get_and_ioremap_resource() in mtk_hdmi_ddc_probe()
         - Add GAMMA 12-bit LUT support for MT8188
         - Rename mtk_drm_* to mtk_*
         - Drop driver owner initialization
         - Correct calculation formula of PHY Timing"
      
      * tag 'drm-next-2024-05-15' of https://gitlab.freedesktop.org/drm/kernel: (1477 commits)
        drm/xe/ads: Use flexible-array
        drm/xe: Use ordered WQ for G2H handler
        drm/msm/gen_header: allow skipping the validation
        drm/msm/a6xx: Cleanup indexed regs const'ness
        drm/msm: Add devcoredump support for a750
        drm/msm: Adjust a7xx GBIF debugbus dumping
        drm/msm: Update a6xx registers XML
        drm/msm: Fix imported a750 snapshot header for upstream
        drm/msm: Import a750 snapshot registers from kgsl
        MAINTAINERS: Add Konrad Dybcio as a reviewer for the Adreno driver
        MAINTAINERS: Add a separate entry for Qualcomm Adreno GPU drivers
        drm/msm/a6xx: Avoid a nullptr dereference when speedbin setting fails
        drm/msm/adreno: fix CP cycles stat retrieval on a7xx
        drm/msm/a7xx: allow writing to CP_BV counter selection registers
        drm: zynqmp_dpsub: Always register bridge
        Revert "drm/bridge: ti-sn65dsi83: Fix enable error path"
        drm/fb_dma: Add checks in drm_fb_dma_get_scanout_buffer()
        drm/fbdev-generic: Do not set physical framebuffer address
        drm/panthor: Fix the FW reset logic
        drm/panthor: Make sure we handle 'unknown group state' case properly
        ...
      db5d28c0
    • Linus Torvalds's avatar
      Merge tag 'asymmetric-keys-next-6.10-rc1' of... · 46c6d2b1
      Linus Torvalds authored
      Merge tag 'asymmetric-keys-next-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd
      
      Pull asymmetric keys update from Jarkko Sakkinen:
       "Add a self-test testing PCKS#7 signed data against ECDSA key and
        couple of bug fixes for missing deps"
      
      * tag 'asymmetric-keys-next-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd:
        certs: Add ECDSA signature verification self-test
        certs: Move RSA self-test data to separate file
        KEYS: asymmetric: Add missing dependencies of FIPS_SIGNATURE_SELFTEST
        KEYS: asymmetric: Add missing dependency on CRYPTO_SIG
      46c6d2b1
    • Linus Torvalds's avatar
      Merge tag 'integrity-v6.10' of ssh://ra.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity · 353ad6c0
      Linus Torvalds authored
      Pull integrity updates from Mimi Zohar:
       "Two IMA changes, one EVM change, a use after free bug fix, and a code
        cleanup to address "-Wflex-array-member-not-at-end" warnings:
      
         - The existing IMA {ascii, binary}_runtime_measurements lists include
           a hard coded SHA1 hash. To address this limitation, define per TPM
           enabled hash algorithm {ascii, binary}_runtime_measurements lists
      
         - Close an IMA integrity init_module syscall measurement gap by
           defining a new critical-data record
      
         - Enable (partial) EVM support on stacked filesystems (overlayfs).
           Only EVM portable & immutable file signatures are copied up, since
           they do not contain filesystem specific metadata"
      
      * tag 'integrity-v6.10' of ssh://ra.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity:
        ima: add crypto agility support for template-hash algorithm
        evm: Rename is_unsupported_fs to is_unsupported_hmac_fs
        fs: Rename SB_I_EVM_UNSUPPORTED to SB_I_EVM_HMAC_UNSUPPORTED
        evm: Enforce signatures on unsupported filesystem for EVM_INIT_X509
        ima: re-evaluate file integrity on file metadata change
        evm: Store and detect metadata inode attributes changes
        ima: Move file-change detection variables into new structure
        evm: Use the metadata inode to calculate metadata hash
        evm: Implement per signature type decision in security_inode_copy_up_xattr
        security: allow finer granularity in permitting copy-up of security xattrs
        ima: Rename backing_inode to real_inode
        integrity: Avoid -Wflex-array-member-not-at-end warnings
        ima: define an init_module critical data record
        ima: Fix use-after-free on a dentry's dname.name
      353ad6c0
    • Linus Torvalds's avatar
      Merge tag 'selinux-pr-20240513' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux · ccae19c6
      Linus Torvalds authored
      Pull selinux updates from Paul Moore:
      
       - Attempt to pre-allocate the SELinux status page so it doesn't appear
         to userspace that we are skipping SELinux policy sequence numbers
      
       - Reject invalid SELinux policy bitmaps with an error at policy load
         time
      
       - Consistently use the same type, u32, for ebitmap offsets
      
       - Improve the "symhash" hash function for better distribution on common
         policies
      
       - Correct a number of printk format specifiers in the ebitmap code
      
       - Improved error checking in sel_write_load()
      
       - Ensure we have a proper return code in the
         filename_trans_read_helper_compat() function
      
       - Make better use of the current_sid() helper function
      
       - Allow for more hash table statistics when debugging is enabled
      
       - Migrate from printk_ratelimit() to pr_warn_ratelimited()
      
       - Miscellaneous cleanups and tweaks to selinux_lsm_getattr()
      
       - More consitification work in the conditional policy space
      
      * tag 'selinux-pr-20240513' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux:
        selinux: constify source policy in cond_policydb_dup()
        selinux: avoid printk_ratelimit()
        selinux: pre-allocate the status page
        selinux: clarify return code in filename_trans_read_helper_compat()
        selinux: use u32 as bit position type in ebitmap code
        selinux: improve symtab string hashing
        selinux: dump statistics for more hash tables
        selinux: make more use of current_sid()
        selinux: update numeric format specifiers for ebitmaps
        selinux: improve error checking in sel_write_load()
        selinux: cleanup selinux_lsm_getattr()
        selinux: reject invalid ebitmaps
      ccae19c6
    • Linus Torvalds's avatar
      Merge tag 'lsm-pr-20240513' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/lsm · 4cd4e4b8
      Linus Torvalds authored
      Pull lsm updates from Paul Moore:
      
       - The security/* portion of the effort to remove the empty sentinel
         elements at the end of the ctl_table arrays
      
       - Update the file list associated with the LSM / "SECURITY SUBSYSTEM"
         entry in the MAINTAINERS file (and then fix a typo in then update)
      
      * tag 'lsm-pr-20240513' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/lsm:
        MAINTAINERS: repair file entry in SECURITY SUBSYSTEM
        MAINTAINERS: update the LSM file list
        lsm: remove the now superfluous sentinel element from ctl_table array
      4cd4e4b8
    • Petr Mladek's avatar
      dafc2d0f
    • Linus Torvalds's avatar
      Merge tag 'net-next-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next · 1b294a1f
      Linus Torvalds authored
      Pull networking updates from Jakub Kicinski:
       "Core & protocols:
      
         - Complete rework of garbage collection of AF_UNIX sockets.
      
           AF_UNIX is prone to forming reference count cycles due to fd
           passing functionality. New method based on Tarjan's Strongly
           Connected Components algorithm should be both faster and remove a
           lot of workarounds we accumulated over the years.
      
         - Add TCP fraglist GRO support, allowing chaining multiple TCP
           packets and forwarding them together. Useful for small switches /
           routers which lack basic checksum offload in some scenarios (e.g.
           PPPoE).
      
         - Support using SMP threads for handling packet backlog i.e. packet
           processing from software interfaces and old drivers which don't use
           NAPI. This helps move the processing out of the softirq jumble.
      
         - Continue work of converting from rtnl lock to RCU protection.
      
           Don't require rtnl lock when reading: IPv6 routing FIB, IPv6
           address labels, netdev threaded NAPI sysfs files, bonding driver's
           sysfs files, MPLS devconf, IPv4 FIB rules, netns IDs, tcp metrics,
           TC Qdiscs, neighbor entries, ARP entries via ioctl(SIOCGARP), a lot
           of the link information available via rtnetlink.
      
         - Small optimizations from Eric to UDP wake up handling, memory
           accounting, RPS/RFS implementation, TCP packet sizing etc.
      
         - Allow direct page recycling in the bulk API used by XDP, for +2%
           PPS.
      
         - Support peek with an offset on TCP sockets.
      
         - Add MPTCP APIs for querying last time packets were received/sent/acked
           and whether MPTCP "upgrade" succeeded on a TCP socket.
      
         - Add intra-node communication shortcut to improve SMC performance.
      
         - Add IPv6 (and IPv{4,6}-over-IPv{4,6}) support to the GTP protocol
           driver.
      
         - Add HSR-SAN (RedBOX) mode of operation to the HSR protocol driver.
      
         - Add reset reasons for tracing what caused a TCP reset to be sent.
      
         - Introduce direction attribute for xfrm (IPSec) states. State can be
           used either for input or output packet processing.
      
        Things we sprinkled into general kernel code:
      
         - Add bitmap_{read,write}(), bitmap_size(), expose BYTES_TO_BITS().
      
           This required touch-ups and renaming of a few existing users.
      
         - Add Endian-dependent __counted_by_{le,be} annotations.
      
         - Make building selftests "quieter" by printing summaries like
           "CC object.o" rather than full commands with all the arguments.
      
        Netfilter:
      
         - Use GFP_KERNEL to clone elements, to deal better with OOM
           situations and avoid failures in the .commit step.
      
        BPF:
      
         - Add eBPF JIT for ARCv2 CPUs.
      
         - Support attaching kprobe BPF programs through kprobe_multi link in
           a session mode, meaning, a BPF program is attached to both function
           entry and return, the entry program can decide if the return
           program gets executed and the entry program can share u64 cookie
           value with return program. "Session mode" is a common use-case for
           tetragon and bpftrace.
      
         - Add the ability to specify and retrieve BPF cookie for raw
           tracepoint programs in order to ease migration from classic to raw
           tracepoints.
      
         - Add an internal-only BPF per-CPU instruction for resolving per-CPU
           memory addresses and implement support in x86, ARM64 and RISC-V
           JITs. This allows inlining functions which need to access per-CPU
           state.
      
         - Optimize x86 BPF JIT's emit_mov_imm64, and add support for various
           atomics in bpf_arena which can be JITed as a single x86
           instruction. Support BPF arena on ARM64.
      
         - Add a new bpf_wq API for deferring events and refactor
           process-context bpf_timer code to keep common code where possible.
      
         - Harden the BPF verifier's and/or/xor value tracking.
      
         - Introduce crypto kfuncs to let BPF programs call kernel crypto
           APIs.
      
         - Support bpf_tail_call_static() helper for BPF programs with GCC 13.
      
         - Add bpf_preempt_{disable,enable}() kfuncs in order to allow a BPF
           program to have code sections where preemption is disabled.
      
        Driver API:
      
         - Skip software TC processing completely if all installed rules are
           marked as HW-only, instead of checking the HW-only flag rule by
           rule.
      
         - Add support for configuring PoE (Power over Ethernet), similar to
           the already existing support for PoDL (Power over Data Line)
           config.
      
         - Initial bits of a queue control API, for now allowing a single
           queue to be reset without disturbing packet flow to other queues.
      
         - Common (ethtool) statistics for hardware timestamping.
      
        Tests and tooling:
      
         - Remove the need to create a config file to run the net forwarding
           tests so that a naive "make run_tests" can exercise them.
      
         - Define a method of writing tests which require an external endpoint
           to communicate with (to send/receive data towards the test
           machine). Add a few such tests.
      
         - Create a shared code library for writing Python tests. Expose the
           YAML Netlink library from tools/ to the tests for easy Netlink
           access.
      
         - Move netfilter tests under net/, extend them, separate performance
           tests from correctness tests, and iron out issues found by running
           them "on every commit".
      
         - Refactor BPF selftests to use common network helpers.
      
         - Further work filling in YAML definitions of Netlink messages for:
           nftables, team driver, bonding interfaces, vlan interfaces, VF
           info, TC u32 mark, TC police action.
      
         - Teach Python YAML Netlink to decode attribute policies.
      
         - Extend the definition of the "indexed array" construct in the specs
           to cover arrays of scalars rather than just nests.
      
         - Add hyperlinks between definitions in generated Netlink docs.
      
        Drivers:
      
         - Make sure unsupported flower control flags are rejected by drivers,
           and make more drivers report errors directly to the application
           rather than dmesg (large number of driver changes from Asbjørn
           Sloth Tønnesen).
      
         - Ethernet high-speed NICs:
            - Broadcom (bnxt):
               - support multiple RSS contexts and steering traffic to them
               - support XDP metadata
               - make page pool allocations more NUMA aware
            - Intel (100G, ice, idpf):
               - extract datapath code common among Intel drivers into a library
               - use fewer resources in switchdev by sharing queues with the PF
               - add PFCP filter support
               - add Ethernet filter support
               - use a spinlock instead of HW lock in PTP clock ops
               - support 5 layer Tx scheduler topology
            - nVidia/Mellanox:
               - 800G link modes and 100G SerDes speeds
               - per-queue IRQ coalescing configuration
            - Marvell Octeon:
               - support offloading TC packet mark action
      
         - Ethernet NICs consumer, embedded and virtual:
            - stop lying about skb->truesize in USB Ethernet drivers, it
              messes up TCP memory calculations
            - Google cloud vNIC:
               - support changing ring size via ethtool
               - support ring reset using the queue control API
            - VirtIO net:
               - expose flow hash from RSS to XDP
               - per-queue statistics
               - add selftests
            - Synopsys (stmmac):
               - support controllers which require an RX clock signal from the
                 MII bus to perform their hardware initialization
            - TI:
               - icssg_prueth: support ICSSG-based Ethernet on AM65x SR1.0 devices
               - icssg_prueth: add SW TX / RX Coalescing based on hrtimers
               - cpsw: minimal XDP support
            - Renesas (ravb):
               - support describing the MDIO bus
            - Realtek (r8169):
               - add support for RTL8168M
            - Microchip Sparx5:
               - matchall and flower actions mirred and redirect
      
         - Ethernet switches:
            - nVidia/Mellanox:
               - improve events processing performance
            - Marvell:
               - add support for MV88E6250 family internal PHYs
            - Microchip:
               - add DCB and DSCP mapping support for KSZ switches
               - vsc73xx: convert to PHYLINK
            - Realtek:
               - rtl8226b/rtl8221b: add C45 instances and SerDes switching
      
         - Many driver changes related to PHYLIB and PHYLINK deprecated API
           cleanup
      
         - Ethernet PHYs:
            - Add a new driver for Airoha EN8811H 2.5 Gigabit PHY.
            - micrel: lan8814: add support for PPS out and external timestamp trigger
      
         - WiFi:
            - Disable Wireless Extensions (WEXT) in all Wi-Fi 7 devices
              drivers. Modern devices can only be configured using nl80211.
            - mac80211/cfg80211
               - handle color change per link for WiFi 7 Multi-Link Operation
            - Intel (iwlwifi):
               - don't support puncturing in 5 GHz
               - support monitor mode on passive channels
               - BZ-W device support
               - P2P with HE/EHT support
               - re-add support for firmware API 90
               - provide channel survey information for Automatic Channel Selection
            - MediaTek (mt76):
               - mt7921 LED control
               - mt7925 EHT radiotap support
               - mt7920e PCI support
            - Qualcomm (ath11k):
               - P2P support for QCA6390, WCN6855 and QCA2066
               - support hibernation
               - ieee80211-freq-limit Device Tree property support
            - Qualcomm (ath12k):
               - refactoring in preparation of multi-link support
               - suspend and hibernation support
               - ACPI support
               - debugfs support, including dfs_simulate_radar support
            - RealTek:
               - rtw88: RTL8723CS SDIO device support
               - rtw89: RTL8922AE Wi-Fi 7 PCI device support
               - rtw89: complete features of new WiFi 7 chip 8922AE including
                 BT-coexistence and Wake-on-WLAN
               - rtw89: use BIOS ACPI settings to set TX power and channels
               - rtl8xxxu: enable Management Frame Protection (MFP) support
      
         - Bluetooth:
            - support for Intel BlazarI and Filmore Peak2 (BE201)
            - support for MediaTek MT7921S SDIO
            - initial support for Intel PCIe BT driver
            - remove HCI_AMP support"
      
      * tag 'net-next-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (1827 commits)
        selftests: netfilter: fix packetdrill conntrack testcase
        net: gro: fix napi_gro_cb zeroed alignment
        Bluetooth: btintel_pcie: Refactor and code cleanup
        Bluetooth: btintel_pcie: Fix warning reported by sparse
        Bluetooth: hci_core: Fix not handling hdev->le_num_of_adv_sets=1
        Bluetooth: btintel: Fix compiler warning for multi_v7_defconfig config
        Bluetooth: btintel_pcie: Fix compiler warnings
        Bluetooth: btintel_pcie: Add *setup* function to download firmware
        Bluetooth: btintel_pcie: Add support for PCIe transport
        Bluetooth: btintel: Export few static functions
        Bluetooth: HCI: Remove HCI_AMP support
        Bluetooth: L2CAP: Fix div-by-zero in l2cap_le_flowctl_init()
        Bluetooth: qca: Fix error code in qca_read_fw_build_info()
        Bluetooth: hci_conn: Use __counted_by() and avoid -Wfamnae warning
        Bluetooth: btintel: Add support for Filmore Peak2 (BE201)
        Bluetooth: btintel: Add support for BlazarI
        LE Create Connection command timeout increased to 20 secs
        dt-bindings: net: bluetooth: Add MediaTek MT7921S SDIO Bluetooth
        Bluetooth: compute LE flow credits based on recvbuf space
        Bluetooth: hci_sync: Use cmd->num_cis instead of magic number
        ...
      1b294a1f
    • Linus Torvalds's avatar
      Merge tag 'firewire-updates-6.10' of... · b850dc20
      Linus Torvalds authored
      Merge tag 'firewire-updates-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394
      
      Pull firewire updates from Takashi Sakamoto:
       "During the development period of v6.8 kernel, it became evident that
        there was a lack of helper utilities to trace the initial state of
        bus, while investigating certain PHYs compliant with different
        versions of IEEE 1394 specification.
      
        This series of changes includes the addition of tracepoints events,
        provided by 'firewire' subsystem. These events enable tracing of how
        firewire core functions during bus reset and asynchronous
        communication over IEEE 1394 bus.
      
        When implementing the tracepoints events, it was found that the
        existing serialization and deserialization helpers for several types
        of asynchronous packets are scattered across both firewire-core and
        firewire-ohci kernel modules. A set of inline functions is newly added
        to address it, along with some KUnit tests, serving as the foundation
        for the tracepoints events. This renders the dispersed code obsolete.
      
        The remaining changes constitute the final steps in phasing out the
        usage of deprecated PCI MSI APIs, in continuation from the previous
        version"
      
      * tag 'firewire-updates-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394: (29 commits)
        firewire: obsolete usage of *-objs in Makefile for KUnit test
        firewire: core: remove flag and width from u64 formats of tracepoints events
        firewire: core: fix type of timestamp for async_inbound_template tracepoints events
        firewire: core: add tracepoint event for handling bus reset
        Revert "firewire: core: option to log bus reset initiation"
        firewire: core: add tracepoints events for initiating bus reset
        firewire: ohci: obsolete OHCI_PARAM_DEBUG_BUSRESETS from debug module parameter
        firewire: ohci: add bus-reset event for initial set of handled irq
        firewire: core: add tracepoints event for asynchronous inbound phy packet
        firewire: core/cdev: add tracepoints events for asynchronous phy packet
        firewire: core: add tracepoints events for asynchronous outbound response
        firewire: core: add tracepoint event for asynchronous inbound request
        firewire: core: add tracepoints event for asynchronous inbound response
        firewire: core: add tracepoints events for asynchronous outbound request
        firewire: core: add support for Linux kernel tracepoints
        firewire: core: replace local macros with common inline functions for isochronous packet header
        firewire: core: add common macro to serialize/deserialize isochronous packet header
        firewire: core: obsolete tcode check macros with inline functions
        firewire: ohci: replace hard-coded values with common macros
        firewire: ohci: replace hard-coded values with inline functions for asynchronous packet header
        ...
      b850dc20
    • Linus Torvalds's avatar
      Merge tag 'for-6.10/dm-changes' of... · 4f8b6f25
      Linus Torvalds authored
      Merge tag 'for-6.10/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
      
      Pull device mapper updates from Mike Snitzer:
      
       - Add a dm-crypt optional "high_priority" flag that enables the crypt
         workqueues to use WQ_HIGHPRI.
      
       - Export dm-crypt workqueues via sysfs (by enabling WQ_SYSFS) to allow
         for improved visibility and controls over IO and crypt workqueues.
      
       - Fix dm-crypt to no longer constrain max_segment_size to PAGE_SIZE.
         This limit isn't needed given that the block core provides late bio
         splitting if bio exceeds underlying limits (e.g. max_segment_size).
      
       - Fix dm-crypt crypt_queue's use of WQ_UNBOUND to not use
         WQ_CPU_INTENSIVE because it is meaningless with WQ_UNBOUND.
      
       - Fix various issues with dm-delay target (ranging from a resource
         teardown fix, a fix for hung task when using kthread mode, and other
         improvements that followed from code inspection).
      
      * tag 'for-6.10/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
        dm-delay: remove timer_lock
        dm-delay: change locking to avoid contention
        dm-delay: fix max_delay calculations
        dm-delay: fix hung task introduced by kthread mode
        dm-delay: fix workqueue delay_timer race
        dm-crypt: don't set WQ_CPU_INTENSIVE for WQ_UNBOUND crypt_queue
        dm: use queue_limits_set
        dm-crypt: stop constraining max_segment_size to PAGE_SIZE
        dm-crypt: export sysfs of all workqueues
        dm-crypt: add the optional "high_priority" flag
      4f8b6f25
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 113d1dd9
      Linus Torvalds authored
      Pull SCSI updates from James Bottomley:
       "Updates to the usual drivers (ufs, lpfc, qla2xxx, mpi3mr, libsas).
      
        The major update (which causes a conflict with block, see below) is
        Christoph removing the queue limits and their associated block
        helpers.
      
        The remaining patches are assorted minor fixes and deprecated function
        updates plus a bit of constification"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (141 commits)
        scsi: mpi3mr: Sanitise num_phys
        scsi: lpfc: Copyright updates for 14.4.0.2 patches
        scsi: lpfc: Update lpfc version to 14.4.0.2
        scsi: lpfc: Add support for 32 byte CDBs
        scsi: lpfc: Change lpfc_hba hba_flag member into a bitmask
        scsi: lpfc: Introduce rrq_list_lock to protect active_rrq_list
        scsi: lpfc: Clear deferred RSCN processing flag when driver is unloading
        scsi: lpfc: Update logging of protection type for T10 DIF I/O
        scsi: lpfc: Change default logging level for unsolicited CT MIB commands
        scsi: target: Remove unused list 'device_list'
        scsi: iscsi: Remove unused list 'connlist_err'
        scsi: ufs: exynos: Add support for Tensor gs101 SoC
        scsi: ufs: exynos: Add some pa_dbg_ register offsets into drvdata
        scsi: ufs: exynos: Allow max frequencies up to 267Mhz
        scsi: ufs: exynos: Add EXYNOS_UFS_OPT_TIMER_TICK_SELECT option
        scsi: ufs: exynos: Add EXYNOS_UFS_OPT_UFSPR_SECURE option
        scsi: ufs: dt-bindings: exynos: Add gs101 compatible
        scsi: qla2xxx: Fix debugfs output for fw_resource_count
        scsi: qedf: Ensure the copied buf is NUL terminated
        scsi: bfa: Ensure the copied buf is NUL terminated
        ...
      113d1dd9
    • Linus Torvalds's avatar
      Merge tag 'ata-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/libata/linux · b2665fe6
      Linus Torvalds authored
      Pull ata updates from Damien Le Moal:
      
       - Convert the bindings for the imx-pata and ahci-da850 drivers to DT
         schemas (from Animesh)
      
       - Correct the code to handle HAS_IOPORT dependencies and conditionally
         compile drivers as needed (from Niklas)
      
       - Correct the legacy_exit() function in the pata_legacy driver to
         properly handle cleanups on driver exit (from Sergey)
      
       - Small code simplification removing the ata_exec_internal_sg()
         function and folding it into its only caller (from me)
      
      * tag 'ata-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/libata/linux:
        ata: pata_legacy: make legacy_exit() work again
        ata: libata-core: Remove ata_exec_internal_sg()
        ata: add HAS_IOPORT dependencies
        dt-bindings: ata: ahci-da850: Convert to dtschema
        dt-bindings: ata: imx-pata: Convert to dtschema
      b2665fe6
    • Linus Torvalds's avatar
      Merge tag 'fsverity-for-linus' of git://git.kernel.org/pub/scm/fs/fsverity/linux · b47c1823
      Linus Torvalds authored
      Pull fsverity update from Eric Biggers:
       "Fix a false positive kmemleak warning"
      
      * tag 'fsverity-for-linus' of git://git.kernel.org/pub/scm/fs/fsverity/linux:
        fsverity: use register_sysctl_init() to avoid kmemleak warning
      b47c1823
    • Linus Torvalds's avatar
      Merge tag 'fscrypt-for-linus' of git://git.kernel.org/pub/scm/fs/fscrypt/linux · fc883e7a
      Linus Torvalds authored
      Pull fscrypt update from Eric Biggers:
       "Improve the performance of opening unencrypted files on filesystems
        that support fscrypt"
      
      * tag 'fscrypt-for-linus' of git://git.kernel.org/pub/scm/fs/fscrypt/linux:
        fscrypt: try to avoid refing parent dentry in fscrypt_file_open
      fc883e7a
    • Linus Torvalds's avatar
      Merge tag 'for-linus-6.10-ofs1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux · eafb55a3
      Linus Torvalds authored
      Pull orangefs update from Mike Marshall:
       "Fix out-of-bounds fsid access.
      
        Small fix to quiet warnings from string fortification helpers,
        suggested by Arnd Bergmann"
      
      * tag 'for-linus-6.10-ofs1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux:
        orangefs: fix out-of-bounds fsid access
      eafb55a3
    • Linus Torvalds's avatar
      Merge tag 'gfs2-for-v6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2 · 9518ae6e
      Linus Torvalds authored
      Pull gfs2 updates from Andreas Gruenbacher:
      
       - Properly fix the glock shrinker this time: it broke in commit "gfs2:
         Make glock lru list scanning safer" and commit "gfs2: fix glock
         shrinker ref issues" wasn't actually enough to fix it
      
       - On unmount, keep glocks around long enough that no more dlm callbacks
         can occur on them
      
       - Some more folio conversion patches from Matthew Wilcox
      
       - Lots of other smaller fixes and cleanups
      
      * tag 'gfs2-for-v6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2: (27 commits)
        gfs2: make timeout values more explicit
        gfs2: Convert gfs2_aspace_writepage() to use a folio
        gfs2: Add a migrate_folio operation for journalled files
        gfs2: Simplify gfs2_read_super
        gfs2: Convert gfs2_page_mkwrite() to use a folio
        gfs2: gfs2_freeze_unlock cleanup
        gfs2: Remove and replace gfs2_glock_queue_work
        gfs2: do_xmote fixes
        gfs2: finish_xmote cleanup
        gfs2: Unlock fewer glocks on unmount
        gfs2: Fix potential glock use-after-free on unmount
        gfs2: Remove ill-placed consistency check
        gfs2: Fix lru_count accounting
        gfs2: Fix "Make glock lru list scanning safer"
        Revert "gfs2: fix glock shrinker ref issues"
        gfs2: Fix "ignore unlock failures after withdraw"
        gfs2: Get rid of unnecessary test_and_set_bit
        gfs2: Don't set GLF_LOCK in gfs2_dispose_glock_lru
        gfs2: Replace gfs2_glock_queue_put with gfs2_glock_put_async
        gfs2: Get rid of gfs2_glock_queue_put in signal_our_withdraw
        ...
      9518ae6e
    • Linus Torvalds's avatar
      Merge tag 'dlm-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm · 6fffab66
      Linus Torvalds authored
      Pull dlm updates from David Teigland:
       "This set includes some small fixes, and some big internal changes:
      
         - Fix a long standing race between the unlock callback for the last
           lkb struct, and removing the rsb that became unused after the final
           unlock. This could lead different nodes to inconsistent info about
           the rsb master node.
      
         - Remove unnecessary refcounting on callback structs, returning to
           the way things were done in the past.
      
         - Do message processing in softirq context. This allows dlm messages
           to be cleared more quickly and efficiently, reducing long lists of
           incomplete requests. A future change to run callbacks directly from
           this context will make this more effective.
      
         - The softirq message processing involved a number of patches
           changing mutexes to spinlocks and rwlocks, and a fair amount of
           code re-org in preparation.
      
         - Use an rhashtable for rsb structs, rather than our old internal
           hash table implementation. This also required some re-org of lists
           and locks preparation for the change.
      
         - Drop the dlm_scand kthread, and use timers to clear unused rsb
           structs. Scanning all rsb's periodically was a lot of wasted work.
      
         - Fix recent regression in logic for copying LVB data in user space
           lock requests"
      
      * tag 'dlm-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm: (34 commits)
        dlm: return -ENOMEM if ls_recover_buf fails
        dlm: fix sleep in atomic context
        dlm: use rwlock for lkbidr
        dlm: use rwlock for rsb hash table
        dlm: drop dlm_scand kthread and use timers
        dlm: do not use ref counts for rsb in the toss state
        dlm: switch to use rhashtable for rsbs
        dlm: add rsb lists for iteration
        dlm: merge toss and keep hash table lists into one list
        dlm: change to single hashtable lock
        dlm: increment ls_count for dlm_scand
        dlm: do message processing in softirq context
        dlm: use spin_lock_bh for message processing
        dlm: remove schedule in receive path
        dlm: convert ls_recv_active from rw_semaphore to rwlock
        dlm: avoid blocking receive at the end of recovery
        dlm: convert res_lock to spinlock
        dlm: convert ls_waiters_mutex to spinlock
        dlm: drop mutex use in waiters recovery
        dlm: add new struct to save position in dlm_copy_master_names
        ...
      6fffab66
    • Linus Torvalds's avatar
      Merge tag 'for-6.10-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · a3d1f54d
      Linus Torvalds authored
      Pull btrfs updates from David Sterba:
       "This update brings a few minor performance improvements, otherwise
        there's a lot of refactoring, cleanups and other sort of not user
        visible changes.
      
        Performance improvements:
      
         - inline b-tree locking functions, improvement in metadata-heavy
           changes
      
         - relax locking on a range that's being reflinked, allows read
           operations to run in parallel
      
         - speed up NOCOW write checks (throughput +9% on a sample test)
      
         - extent locking ranges have been reduced in several places, namely
           around delayed ref processing
      
        Core:
      
         - more page to folio conversions:
            - relocation
            - send
            - compression
            - inline extent handling
            - super block write and wait
      
         - extent_map structure optimizations:
            - reduced structure size
            - code simplifications
            - add shrinker for allocated objects, the numbers can go high and
              could exhaust memory on smaller systems (reported) as they may
              not get an opportunity to be freed fast enough
      
         - extent locking optimizations:
            - reduce locking ranges where it does not seem to be necessary and
              are safe due to other means of synchronization
            - potential improvements due to lower contention,
              allocation/freeing and state management operations of extent
              state tracking structures
      
         - delayed ref cleanups and simplifications
      
         - updated trace points
      
         - improved error handling, warnings and assertions
      
         - cleanups and refactoring, unification of error handling paths"
      
      * tag 'for-6.10-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux: (122 commits)
        btrfs: qgroup: fix initialization of auto inherit array
        btrfs: count super block write errors in device instead of tracking folio error state
        btrfs: use the folio iterator in btrfs_end_super_write()
        btrfs: convert super block writes to folio in write_dev_supers()
        btrfs: convert super block writes to folio in wait_dev_supers()
        bio: Export bio_add_folio_nofail to modules
        btrfs: remove duplicate included header from fs.h
        btrfs: add a cached state to extent_clear_unlock_delalloc
        btrfs: push extent lock down in submit_one_async_extent
        btrfs: push lock_extent down in cow_file_range()
        btrfs: move can_cow_file_range_inline() outside of the extent lock
        btrfs: push lock_extent into cow_file_range_inline
        btrfs: push extent lock into cow_file_range
        btrfs: push extent lock into run_delalloc_cow
        btrfs: remove unlock_extent from run_delalloc_compressed
        btrfs: push extent lock down in run_delalloc_nocow
        btrfs: adjust while loop condition in run_delalloc_nocow
        btrfs: push extent lock into run_delalloc_nocow
        btrfs: push the extent lock into btrfs_run_delalloc_range
        btrfs: lock extent when doing inline extent in compression
        ...
      a3d1f54d
    • Linus Torvalds's avatar
      Merge tag 'erofs-for-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs · 47e9bff7
      Linus Torvalds authored
      Pull erofs updates from Gao Xiang:
       "The LZ4 global buffer count is now configurable instead of the
        previous per-CPU buffers, which is useful for bare metals with
        hundreds of CPUs. A reserved buffer pool for LZ4 decompression can
        also be enabled to minimize the tail allocation latencies under the
        low memory scenarios with heavy memory pressure.
      
        In addition, Zstandard algorithm is now supported as an alternative
        since it has been requested by users for a while.
      
        There are some random cleanups as usual.
      
        Summary:
      
         - Make LZ4 global buffers configurable instead of per-CPU buffers
      
         - Add a reserved buffer pool for LZ4 decompression for lower latencies
      
         - Support Zstandard compression algorithm as an alternative
      
         - Derive fsid from on-disk UUID for .statfs() if possible
      
         - Minor cleanups"
      
      * tag 'erofs-for-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs:
        erofs: Zstandard compression support
        erofs: clean up z_erofs_load_full_lcluster()
        erofs: derive fsid from on-disk UUID for .statfs() if possible
        erofs: add a reserved buffer pool for lz4 decompression
        erofs: do not use pagepool in z_erofs_gbuf_growsize()
        erofs: rename per-CPU buffers to global buffer pool and make it configurable
        erofs: rename utils.c to zutil.c
      47e9bff7
  3. 14 May, 2024 6 commits
    • Steve French's avatar
      smb3: fix perf regression with cached writes with netfs conversion · edfc6481
      Steve French authored
      Write through mode is for cache=none, not for default (when
      caching is allowed if we have a lease). Some tests were running
      much, much more slowly as a result of disabling caching of
      writes by default.
      Reviewed-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarEnzo Matsumiya <ematsumiya@suse.de>
      Fixes: 3ee1a1fc ("cifs: Cut over to using netfslib")
      Signed-off-by: default avatarSteve French <stfrench@microsoft.com>
      edfc6481
    • Linus Torvalds's avatar
      Merge tag 'efi-next-for-v6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi · 1b10b390
      Linus Torvalds authored
      Pull EFI updates from Ard Biesheuvel:
       "Only a handful of changes this cycle, consisting of cleanup work and a
        low-prio bugfix:
      
         - Additional cleanup by Tim for the efivarfs variable name length
           confusion
      
         - Avoid freeing a bogus pointer when virtual remapping is omitted in
           the EFI boot stub"
      
      * tag 'efi-next-for-v6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi:
        efi: libstub: only free priv.runtime_map when allocated
        efi: Clear up misconceptions about a maximum variable name size
        efivarfs: Remove unused internal struct members
        Documentation: Mark the 'efivars' sysfs interface as removed
        efi: pstore: Request at most 512 bytes for variable names
      1b10b390
    • Linus Torvalds's avatar
      Merge tag 'hid-for-linus-2024051401' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid · 614da38e
      Linus Torvalds authored
      Pull HID updates from Jiri Kosina:
      
       - Firmware loading from host support in intel-ish driver, needed to
         support Lunar Lake and later (Zhang Lixu)
      
       - updates to HID-BPF infrastructure, with some of the specific fixes
         (e.g. rdesc fixups) abstracted into separate BPF programs for
         consumption from libevdev/udev-hid-bpf (Benjamin Tissoires)
      
       - support for Deck IMU in hid-steam (Max Maisel)
      
       - fixes for better support of 3rd party playstation DS4 controllers
         (Max Staudt)
      
       - support for missing mappings and codes from HUT 1.5 in hid-debug
         (Thomas Kuehne)
      
       - initial support for ROG Ally and ROG X13 devices (Luke D. Jones)
      
       - full support for WinWing Orion2 (Ivan Gorinov)
      
      * tag 'hid-for-linus-2024051401' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid: (74 commits)
        selftests/hid: skip tests with HID-BPF if udev-hid-bpf is not installed
        selftests/hid: add tests for the Raptor Mach 2 joystick
        selftests/hid: move the gamepads definitions in the test file
        selftests/hid: import base_gamepad.py from hid-tools
        selftests/hid: add Huion Kamvas Pro 19 tests
        selftests/hid: tablets: also check for XP-Pen offset correction
        selftests/hid: tablets: add a couple of XP-PEN tablets
        selftests/hid: tablets: reduce the number of pen state
        selftests/hid: add support for HID-BPF pre-loading before starting a test
        selftests/hid: import base_device.py from hid-tools
        HID: bpf: add in-tree HID-BPF fix for the Raptor Mach 2
        HID: bpf: add in-tree HID-BPF fix for the Huion Kamvas Pro 19
        HID: bpf: add in-tree HID-BPF fix for the XBox Elite 2 over Bluetooth
        HID: bpf: add in-tree HID-BPF fix for the Wacom ArtPen
        HID: bpf: add in-tree HID-BPF fix for the IOGear Kaliber Gaming MMOmentum mouse
        HID: bpf: add in-tree HID-BPF fix for the HP Elite Presenter Mouse
        HID: bpf: add in-tree HID-BPF fix for the XPPen Artist 16
        HID: bpf: add first in-tree HID-BPF fix for the XPPen Artist 24
        HID: do not assume HAT Switch logical max < 8
        HID: amd_sfh: Use amd_get_c2p_val() to read C2P register
        ...
      614da38e
    • Linus Torvalds's avatar
      Merge tag 'gpio-updates-for-v6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux · ce952d8f
      Linus Torvalds authored
      Pull gpio updates from Bartosz Golaszewski
       "This was a quiet release cycle for the GPIO tree and so this
        pull-request is relatively small.
      
        We have one new driver, some minor improvements to the GPIO core code
        and across several drivers, some DT and documentation updates but in
        general nothing stands out or is controversial. All changes have spent
        time in next with no reported issues (or ones that were quickly
        fixed).
      
        GPIO core:
         - remove more unused legacy interfaces (after converting the last
           remaining users to better alternatives)
         - update kerneldocs
         - improve error handling and log messages in GPIO ACPI code
         - remove dead code (always true checks) from GPIOLIB
      
        New drivers:
         - add a driver for Intel Granite Rapids-D vGPIO
      
        Driver improvements:
         - use -ENOTSUPP consistently in gpio-regmap and gpio-pcie-idio-24
         - provide an ID table for gpio-cros-ec to avoid a driver name
           fallback check
         - add support for gpio-ranges for GPIO drivers supporting multiple
           GPIO banks
         - switch to using dynamic GPIO base in gpio-brcmstb
         - fix irq handling in gpio-npcm-sgpio
         - switch to memory mapped IO accessors in gpio-sch
      
        DT bindings:
         - add support for gpio-ranges to gpio-brcmstb
         - add support for a new model and the gpio-line-names property to
           gpio-mpfs
      
        Documentation:
         - replace leading tabs with spaces in code blocks
         - fix typos"
      
      * tag 'gpio-updates-for-v6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux: (30 commits)
        gpio: nuvoton: Fix sgpio irq handle error
        gpiolib: Discourage to use formatting strings in line names
        gpio: brcmstb: add support for gpio-ranges
        gpio: of: support gpio-ranges for multiple gpiochip devices
        dt-bindings: gpio: brcmstb: add gpio-ranges
        gpio: Add Intel Granite Rapids-D vGPIO driver
        gpio: brcmstb: Use dynamic GPIO base numbers
        gpiolib: acpi: Set label for IRQ only lines
        gpiolib: acpi: Add fwnode name to the GPIO interrupt label
        gpiolib: Get rid of never false gpio_is_valid() calls
        gpiolib: acpi: Pass con_id instead of property into acpi_dev_gpio_irq_get_by()
        gpiolib: acpi: Move acpi_can_fallback_to_crs() out of __acpi_find_gpio()
        gpiolib: acpi: Simplify error handling in __acpi_find_gpio()
        gpiolib: acpi: Extract __acpi_find_gpio() helper
        gpio: sch: Utilise temporary variable for struct device
        gpio: sch: Switch to memory mapped IO accessors
        gpio: regmap: Use -ENOTSUPP consistently
        gpio: pcie-idio-24: Use -ENOTSUPP consistently
        Documentation: gpio: Replace leading TABs by spaces in code blocks
        gpiolib: acpi: Check for errors first in acpi_find_gpio()
        ...
      ce952d8f
    • Linus Torvalds's avatar
      Merge tag 'pwm/for-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/ukleinek/linux · 9d81e2d5
      Linus Torvalds authored
      Pull pwm updates from Uwe Kleine-König:
       "Apart for the normal updates for dt bindings, cleanups and support for
        new device variants to existing drivers this completes the conversion
        to pwmchip_alloc() which was started in the v6.9 development cycle.
      
        Using pwmchip_alloc() is a precondition to the character device
        support which allows easier and faster access to PWM devices. However
        there are some issues I want to clean up before including it in
        mainline, so this isn't contained here despite it was in next for some
        time.
      
        Thanks to Alexandre Mergnat, Binbin Zhou, Dmitry Rokosov, George
        Stark, Jerome Brunet and Varshini Rajendran for their contributions.
        Further thanks go to AngeloGioacchino Del Regno, Conor Dooley, David
        Lechner, Fabrice Gasnier, Florian Fainelli, Guenter Roeck, Gustavo A.
        R. Silva, Krzysztof Kozlowski and Rob Herring for valuable patch
        review"
      
      * tag 'pwm/for-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/ukleinek/linux: (34 commits)
        pwm: pca9685: Drop explicit initialization of struct i2c_device_id::driver_data to 0
        dt-bindings: pwm: snps,dw-apb-timers: Do not require pwm-cells twice
        dt-bindings: pwm: mediatek,pwm-disp: Do not require pwm-cells twice
        dt-bindings: pwm: mediatek,mt2712: Do not require pwm-cells twice
        dt-bindings: pwm: marvell,pxa: Do not require pwm-cells twice
        dt-bindings: pwm: google,cros-ec: Do not require pwm-cells twice
        dt-bindings: pwm: bcm2835: Do not require pwm-cells twice
        pwm: meson: Use mul_u64_u64_div_u64() for frequency calculating
        pwm: meson: Add check for error from clk_round_rate()
        pwm: meson: Drop unneeded check in .get_state()
        dt-bindings: pwm: mediatek,pwm-disp: add compatible for mt8365 SoC
        pwm: meson: Add generic compatible for meson8 to sm1
        pwm: bcm2835: Drop open coded variant of devm_clk_rate_exclusive_get()
        pwm: bcm2835: Introduce a local variable for &pdev->dev
        pwm: stm32: Calculate prescaler with a division instead of a loop
        pwm: stm32: Fix for settings using period > UINT32_MAX
        pwm: stm32: Improve precision of calculation in .apply()
        pwm: stm32: Add error messages in .probe()'s error paths
        pwm: Make pwmchip_[sg]et_drvdata() a wrapper around dev_set_drvdata()
        pwm: Don't check pointer for being non-NULL after use
        ...
      9d81e2d5
    • Linus Torvalds's avatar
      Merge tag 'for-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/pateldipen1984/linux · 00fddaf5
      Linus Torvalds authored
      Pull hte/timestamp update from Dipen Patel:
      
       - Improve hte-test driver platform remove callback by replacing it with
         the remove_new which returns void instead
      
      * tag 'for-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/pateldipen1984/linux:
        hte: tegra-194: Convert to platform remove callback returning void
      00fddaf5