1. 01 Nov, 2023 26 commits
    • Linus Torvalds's avatar
      Merge tag 'for-6.7/dm-changes' of... · 0364249d
      Linus Torvalds authored
      Merge tag 'for-6.7/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
      
      Pull device mapper updates from Mike Snitzer:
      
       - Update DM core to directly call the map function for both the linear
         and stripe targets; which are provided by DM core
      
       - Various updates to use new safer string functions
      
       - Update DM core to respect REQ_NOWAIT flag in normal bios so that
         memory allocations are always attempted with GFP_NOWAIT
      
       - Add Mikulas Patocka to MAINTAINERS as a DM maintainer!
      
       - Improve DM delay target's handling of short delays (< 50ms) by using
         a kthread to check expiration of IOs rather than timers and a wq
      
       - Update the DM error target so that it works with zoned storage. This
         helps xfstests to provide proper IO error handling coverage when
         testing a filesystem with native zoned storage support
      
       - Update both DM crypt and integrity targets to improve performance by
         using crypto_shash_digest() rather than init+update+final sequence
      
       - Fix DM crypt target by backfilling missing memory allocation
         accounting for compound pages
      
      * tag 'for-6.7/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
        dm crypt: account large pages in cc->n_allocated_pages
        dm integrity: use crypto_shash_digest() in sb_mac()
        dm crypt: use crypto_shash_digest() in crypt_iv_tcw_whitening()
        dm error: Add support for zoned block devices
        dm delay: for short delays, use kthread instead of timers and wq
        MAINTAINERS: add Mikulas Patocka as a DM maintainer
        dm: respect REQ_NOWAIT flag in normal bios issued to DM
        dm: enhance alloc_multiple_bios() to be more versatile
        dm: make __send_duplicate_bios return unsigned int
        dm log userspace: replace deprecated strncpy with strscpy
        dm ioctl: replace deprecated strncpy with strscpy_pad
        dm crypt: replace open-coded kmemdup_nul
        dm cache metadata: replace deprecated strncpy with strscpy
        dm: shortcut the calls to linear_map and stripe_map
      0364249d
    • Linus Torvalds's avatar
      Merge tag 'ata-6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata · 39714efc
      Linus Torvalds authored
      Pull ATA updates from Damien Le Moal:
      
       - Modify the AHCI driver to print the link power management policy used
         on scan, to help with debugging issues (Niklas)
      
       - Add support for the ASM2116 series adapters to the AHCI driver
         (Szuying)
      
       - Prepare libata for the coming gcc and Clang __counted_by attribute
         (Kees)
      
       - Following the recent estensive fixing of libata suspend/resume
         handling, several patches further cleanup and improve disk power
         state management (me)
      
       - Reduce the verbosity of some error messages for non-fatal temporary
         errors, e.g. slow response to device reset when scanning a port, and
         warning messages that are in fact normal, e.g. disabling a device on
         suspend or when removing it (me)
      
       - Cleanup DMA helper functions (me)
      
       - Fix sata_mv drive handling of potential errors durring probe (Ma)
      
       - Cleanup the xgene and imx drivers using the functions
         of_device_get_match_data() and device_get_match_data() (Rob)
      
       - Improve the tegra driver device tree (Rob)
      
      * tag 'ata-6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata: (22 commits)
        dt-bindings: ata: tegra: Disallow undefined properties
        ata: libata-core: Improve ata_dev_power_set_active()
        ata: libata-eh: Spinup disk on resume after revalidation
        ata: imx: Use device_get_match_data()
        ata: xgene: Use of_device_get_match_data()
        ata: sata_mv: aspeed: fix value check in mv_platform_probe()
        ata: ahci: Add Intel Alder Lake-P AHCI controller to low power chipsets list
        ata: libata: Cleanup inline DMA helper functions
        ata: libata-eh: Reduce "disable device" message verbosity
        ata: libata-eh: Improve reset error messages
        ata: libata-sata: Improve ata_sas_slave_configure()
        ata: libata-core: Do not resume runtime suspended ports
        ata: libata-core: Do not poweroff runtime suspended ports
        ata: libata-core: Remove ata_port_resume_async()
        ata: libata-core: Remove ata_port_suspend_async()
        ata: libata-core: Detach a port devices on shutdown
        ata: libata-core: Synchronize ata_port_detach() with hotplug
        ata: libata-scsi: Cleanup ata_scsi_start_stop_xlat()
        scsi: Remove scsi device no_start_on_resume flag
        ata: libata: Annotate struct ata_cpr_log with __counted_by
        ...
      39714efc
    • Linus Torvalds's avatar
      Merge tag 'for-6.7/block-2023-10-30' of git://git.kernel.dk/linux · 90d624af
      Linus Torvalds authored
      Pull block updates from Jens Axboe:
      
       - Improvements to the queue_rqs() support, and adding null_blk support
         for that as well (Chengming)
      
       - Series improving badblocks support (Coly)
      
       - Key store support for sed-opal (Greg)
      
       - IBM partition string handling improvements (Jan)
      
       - Make number of ublk devices supported configurable (Mike)
      
       - Cancelation improvements for ublk (Ming)
      
       - MD pull requests via Song:
           - Handle timeout in md-cluster, by Denis Plotnikov
           - Cleanup pers->prepare_suspend, by Yu Kuai
           - Rewrite mddev_suspend(), by Yu Kuai
           - Simplify md_seq_ops, by Yu Kuai
           - Reduce unnecessary locking array_state_store(), by Mariusz
             Tkaczyk
           - Make rdev add/remove independent from daemon thread, by Yu Kuai
           - Refactor code around quiesce() and mddev_suspend(), by Yu Kuai
      
       - NVMe pull request via Keith:
           - nvme-auth updates (Mark)
           - nvme-tcp tls (Hannes)
           - nvme-fc annotaions (Kees)
      
       - Misc cleanups and improvements (Jiapeng, Joel)
      
      * tag 'for-6.7/block-2023-10-30' of git://git.kernel.dk/linux: (95 commits)
        block: ublk_drv: Remove unused function
        md: cleanup pers->prepare_suspend()
        nvme-auth: allow mixing of secret and hash lengths
        nvme-auth: use transformed key size to create resp
        nvme-auth: alloc nvme_dhchap_key as single buffer
        nvmet-tcp: use 'spin_lock_bh' for state_lock()
        powerpc/pseries: PLPKS SED Opal keystore support
        block: sed-opal: keystore access for SED Opal keys
        block:sed-opal: SED Opal keystore
        ublk: simplify aborting request
        ublk: replace monitor with cancelable uring_cmd
        ublk: quiesce request queue when aborting queue
        ublk: rename mm_lock as lock
        ublk: move ublk_cancel_dev() out of ub->mutex
        ublk: make sure io cmd handled in submitter task context
        ublk: don't get ublk device reference in ublk_abort_queue()
        ublk: Make ublks_max configurable
        ublk: Limit dev_id/ub_number values
        md-cluster: check for timeout while a new disk adding
        nvme: rework NVME_AUTH Kconfig selection
        ...
      90d624af
    • Linus Torvalds's avatar
      Merge tag 'io_uring-futex-2023-10-30' of git://git.kernel.dk/linux · 4de520f1
      Linus Torvalds authored
      Pull io_uring futex support from Jens Axboe:
       "This adds support for using futexes through io_uring - first futex
        wake and wait, and then the vectored variant of waiting, futex waitv.
      
        For both wait/wake/waitv, we support the bitset variant, as the
        'normal' variants can be easily implemented on top of that.
      
        PI and requeue are not supported through io_uring, just the above
        mentioned parts. This may change in the future, but in the spirit of
        keeping this small (and based on what people have been asking for),
        this is what we currently have.
      
        Wake support is pretty straight forward, most of the thought has gone
        into the wait side to avoid needing to offload wait operations to a
        blocking context. Instead, we rely on the usual callbacks to retry and
        post a completion event, when appropriate.
      
        As far as I can recall, the first request for futex support with
        io_uring came from Andres Freund, working on postgres. His aio rework
        of postgres was one of the early adopters of io_uring, and futex
        support was a natural extension for that. This is relevant from both a
        usability point of view, as well as for effiency and performance. In
        Andres's words, for the former:
      
           Futex wait support in io_uring makes it a lot easier to avoid
           deadlocks in concurrent programs that have their own buffer pool:
           Obviously pages in the application buffer pool have to be locked
           during IO. If the initiator of IO A needs to wait for a held lock
           B, the holder of lock B might wait for the IO A to complete. The
           ability to wait for a lock and IO completions at the same time
           provides an efficient way to avoid such deadlocks
      
        and in terms of effiency, even without unlocking the full potential
        yet, Andres says:
      
           Futex wake support in io_uring is useful because it allows for more
           efficient directed wakeups. For some "locks" postgres has queues
           implemented in userspace, with wakeup logic that cannot easily be
           implemented with FUTEX_WAKE_BITSET on a single "futex word"
           (imagine waiting for journal flushes to have completed up to a
           certain point).
      
           Thus a "lock release" sometimes need to wake up many processes in a
           row. A quick-and-dirty conversion to doing these wakeups via
           io_uring lead to a 3% throughput increase, with 12% fewer context
           switches, albeit in a fairly extreme workload"
      
      * tag 'io_uring-futex-2023-10-30' of git://git.kernel.dk/linux:
        io_uring: add support for vectored futex waits
        futex: make the vectored futex operations available
        futex: make futex_parse_waitv() available as a helper
        futex: add wake_data to struct futex_q
        io_uring: add support for futex wake and wait
        futex: abstract out a __futex_wake_mark() helper
        futex: factor out the futex wake handling
        futex: move FUTEX2_VALID_MASK to futex.h
      4de520f1
    • Linus Torvalds's avatar
      Merge tag 'for-6.7/io_uring-sockopt-2023-10-30' of git://git.kernel.dk/linux · f5277ad1
      Linus Torvalds authored
      Pull io_uring {get,set}sockopt support from Jens Axboe:
       "This adds support for using getsockopt and setsockopt via io_uring.
      
        The main use cases for this is to enable use of direct descriptors,
        rather than first instantiating a normal file descriptor, doing the
        option tweaking needed, then turning it into a direct descriptor. With
        this support, we can avoid needing a regular file descriptor
        completely.
      
        The net and bpf bits have been signed off on their side"
      
      * tag 'for-6.7/io_uring-sockopt-2023-10-30' of git://git.kernel.dk/linux:
        selftests/bpf/sockopt: Add io_uring support
        io_uring/cmd: Introduce SOCKET_URING_OP_SETSOCKOPT
        io_uring/cmd: Introduce SOCKET_URING_OP_GETSOCKOPT
        io_uring/cmd: return -EOPNOTSUPP if net is disabled
        selftests/net: Extract uring helpers to be reusable
        tools headers: Grab copy of io_uring.h
        io_uring/cmd: Pass compat mode in issue_flags
        net/socket: Break down __sys_getsockopt
        net/socket: Break down __sys_setsockopt
        bpf: Add sockptr support for setsockopt
        bpf: Add sockptr support for getsockopt
      f5277ad1
    • Linus Torvalds's avatar
      Merge tag 'for-6.7/io_uring-2023-10-30' of git://git.kernel.dk/linux · ffa059b2
      Linus Torvalds authored
      Pull io_uring updates from Jens Axboe:
       "This contains the core io_uring updates, of which there are not many,
        and adds support for using WAITID through io_uring and hence not
        needing to block on these kinds of events.
      
        Outside of that, tweaks to the legacy provided buffer handling and
        some cleanups related to cancelations for uring_cmd support"
      
      * tag 'for-6.7/io_uring-2023-10-30' of git://git.kernel.dk/linux:
        io_uring/poll: use IOU_F_TWQ_LAZY_WAKE for wakeups
        io_uring/kbuf: Use slab for struct io_buffer objects
        io_uring/kbuf: Allow the full buffer id space for provided buffers
        io_uring/kbuf: Fix check of BID wrapping in provided buffers
        io_uring/rsrc: cleanup io_pin_pages()
        io_uring: cancelable uring_cmd
        io_uring: retain top 8bits of uring_cmd flags for kernel internal use
        io_uring: add IORING_OP_WAITID support
        exit: add internal include file with helpers
        exit: add kernel_waitid_prepare() helper
        exit: move core of do_wait() into helper
        exit: abstract out should_wake helper for child_wait_callback()
        io_uring/rw: add support for IORING_OP_READ_MULTISHOT
        io_uring/rw: mark readv/writev as vectored in the opcode definition
        io_uring/rw: split io_read() into a helper
      ffa059b2
    • Linus Torvalds's avatar
      Merge tag 'for-linus-6.7-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · ca995ce4
      Linus Torvalds authored
      Pull xen updates from Juergen Gross:
      
       - two small cleanup patches
      
       - a fix for PCI passthrough under Xen
      
       - a four patch series speeding up virtio under Xen with user space
         backends
      
      * tag 'for-linus-6.7-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen-pciback: Consider INTx disabled when MSI/MSI-X is enabled
        xen: privcmd: Add support for ioeventfd
        xen: evtchn: Allow shared registration of IRQ handers
        xen: irqfd: Use _IOW instead of the internal _IOC() macro
        xen: Make struct privcmd_irqfd's layout architecture independent
        xen/xenbus: Add __counted_by for struct read_buffer and use struct_size()
        xenbus: fix error exit in xenbus_init()
      ca995ce4
    • Linus Torvalds's avatar
      Merge tag 'x86_tdx_for_6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8999ad99
      Linus Torvalds authored
      Pull x86 TDX updates from Dave Hansen:
       "The majority of this is a rework of the assembly and C wrappers that
        are used to talk to the TDX module and VMM. This is a nice cleanup in
        general but is also clearing the way for using this code when Linux is
        the TDX VMM.
      
        There are also some tidbits to make TDX guests play nicer with Hyper-V
        and to take advantage the hardware TSC.
      
        Summary:
      
         - Refactor and clean up TDX hypercall/module call infrastructure
      
         - Handle retrying/resuming page conversion hypercalls
      
         - Make sure to use the (shockingly) reliable TSC in TDX guests"
      
      [ TLA reminder: TDX is "Trust Domain Extensions", Intel's guest VM
        confidentiality technology ]
      
      * tag 'x86_tdx_for_6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/tdx: Mark TSC reliable
        x86/tdx: Fix __noreturn build warning around __tdx_hypercall_failed()
        x86/virt/tdx: Make TDX_MODULE_CALL handle SEAMCALL #UD and #GP
        x86/virt/tdx: Wire up basic SEAMCALL functions
        x86/tdx: Remove 'struct tdx_hypercall_args'
        x86/tdx: Reimplement __tdx_hypercall() using TDX_MODULE_CALL asm
        x86/tdx: Make TDX_HYPERCALL asm similar to TDX_MODULE_CALL
        x86/tdx: Extend TDX_MODULE_CALL to support more TDCALL/SEAMCALL leafs
        x86/tdx: Pass TDCALL/SEAMCALL input/output registers via a structure
        x86/tdx: Rename __tdx_module_call() to __tdcall()
        x86/tdx: Make macros of TDCALLs consistent with the spec
        x86/tdx: Skip saving output regs when SEAMCALL fails with VMFailInvalid
        x86/tdx: Zero out the missing RSI in TDX_HYPERCALL macro
        x86/tdx: Retry partially-completed page conversion hypercalls
      8999ad99
    • Linus Torvalds's avatar
      Merge tag 'parisc-for-6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · f00593e0
      Linus Torvalds authored
      Pull parisc updates from Helge Deller:
       "Usual fixes and updates:
      
         - Add up to 12 nops after TLB inserts for PA8x00 CPUs as the
           specification requires (Dave Anglin)
      
         - Simplify the parisc smp_prepare_boot_cpu() code (Russell King)
      
         - Use 64-bit little-endian values in SBA IOMMU PDIR table for AGP
      
        Since there is upcoming support for booting a 64-bit kernel on QEMU,
        some corner cases were fixed and improvements added:
      
         - Fix 64-bit kernel crash in STI (graphics console) font setup code
           which miscalculated the font start address as it gets signed vs
           unsigned offsets wrong
      
         - Support building an uncompressed Linux kernel
      
         - Add support for soft power-off in qemu"
      
      * tag 'parisc-for-6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        fbdev: stifb: Make the STI next font pointer a 32-bit signed offset
        parisc: Show default CPU PSW.W setting as reported by PDC
        parisc/pdc: Add width field to struct pdc_model
        parisc: Add nop instructions after TLB inserts
        parisc: simplify smp_prepare_boot_cpu()
        parisc/agp: Use 64-bit LE values in SBA IOMMU PDIR table
        parisc/firmware: Use PDC constants for narrow/wide firmware
        parisc: Move parisc_narrow_firmware variable to header file
        parisc/power: Trivial whitespace cleanups and license update
        parisc/power: Add power soft-off when running on qemu
        parisc: Allow building uncompressed Linux kernel
        parisc: Add some missing PDC functions and constants
        parisc: sba-iommu: Fix comment when calculating IOC number
      f00593e0
    • Linus Torvalds's avatar
      Merge tag 'm68k-for-v6.7-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k · 979ff1e5
      Linus Torvalds authored
      Pull m68k updates from Geert Uytterhoeven:
      
       - misc aesthetical improvements for the floating point emulator
      
       - remove the last user of strlcpy()
      
       - use kernel's generic libgcc functions
      
       - misc fixes for W=1 builds
      
       - misc indentation fixes
      
       - misc fixes and improvements
      
       - defconfig updates
      
      * tag 'm68k-for-v6.7-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k: (72 commits)
        m68k: lib: Include <linux/libgcc.h> for __muldi3()
        m68k: fpsp040: Fix indentation by 5 spaces
        m68k: Fix indentation by 2 or 5 spaces in <asm/page_mm.h>
        m68k: kernel: Fix indentation by 7 spaces in traps.c
        m68k: sun3: Fix indentation by 5 or 7 spaces
        m68k: Fix indentation by 7 spaces in <asm/io_mm.h>
        m68k: defconfig: Update virt_defconfig for v6.6-rc3
        m68k: defconfig: Update defconfigs for v6.6-rc1
        m68k: io: Mark mmio read addresses as const
        m68k: Replace GPL 2.0+ README.legal boilerplate with SPDX
        m68k: sun3: Change led_pattern[] to unsigned char
        m68k: Add missing types to asm/irq.h
        m68k: sun3/3x: Add and use "sun3.h"
        m68k: sun3x: Make dvma_print() static
        m68k: sun3x: Make sun3x_halt() static
        m68k: sun3x: Do not mark dvma_map_iommu() inline
        m68k: sun3x: Fix signature of sun3_leds()
        m68k: sun3: Make sun3_platform_init() static
        m68k: sun3: Make print_pte() static
        m68k: sun3: Annotate prom_printf() with __printf()
        ...
      979ff1e5
    • Linus Torvalds's avatar
      Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 56ec8e4c
      Linus Torvalds authored
      Pull arm64 updates from Catalin Marinas:
       "No major architecture features this time around, just some new HWCAP
        definitions, support for the Ampere SoC PMUs and a few fixes/cleanups.
      
        The bulk of the changes is reworking of the CPU capability checking
        code (cpus_have_cap() etc).
      
         - Major refactoring of the CPU capability detection logic resulting
           in the removal of the cpus_have_const_cap() function and migrating
           the code to "alternative" branches where possible
      
         - Backtrace/kgdb: use IPIs and pseudo-NMI
      
         - Perf and PMU:
      
            - Add support for Ampere SoC PMUs
      
            - Multi-DTC improvements for larger CMN configurations with
              multiple Debug & Trace Controllers
      
            - Rework the Arm CoreSight PMU driver to allow separate
              registration of vendor backend modules
      
            - Fixes: add missing MODULE_DEVICE_TABLE to the amlogic perf
              driver; use device_get_match_data() in the xgene driver; fix
              NULL pointer dereference in the hisi driver caused by calling
              cpuhp_state_remove_instance(); use-after-free in the hisi driver
      
         - HWCAP updates:
      
            - FEAT_SVE_B16B16 (BFloat16)
      
            - FEAT_LRCPC3 (release consistency model)
      
            - FEAT_LSE128 (128-bit atomic instructions)
      
         - SVE: remove a couple of pseudo registers from the cpufeature code.
           There is logic in place already to detect mismatched SVE features
      
         - Miscellaneous:
      
            - Reduce the default swiotlb size (currently 64MB) if no ZONE_DMA
              bouncing is needed. The buffer is still required for small
              kmalloc() buffers
      
            - Fix module PLT counting with !RANDOMIZE_BASE
      
            - Restrict CPU_BIG_ENDIAN to LLVM IAS 15.x or newer move
              synchronisation code out of the set_ptes() loop
      
            - More compact cpufeature displaying enabled cores
      
            - Kselftest updates for the new CPU features"
      
       * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (83 commits)
        arm64: Restrict CPU_BIG_ENDIAN to GNU as or LLVM IAS 15.x or newer
        arm64: module: Fix PLT counting when CONFIG_RANDOMIZE_BASE=n
        arm64, irqchip/gic-v3, ACPI: Move MADT GICC enabled check into a helper
        perf: hisi: Fix use-after-free when register pmu fails
        drivers/perf: hisi_pcie: Initialize event->cpu only on success
        drivers/perf: hisi_pcie: Check the type first in pmu::event_init()
        arm64: cpufeature: Change DBM to display enabled cores
        arm64: cpufeature: Display the set of cores with a feature
        perf/arm-cmn: Enable per-DTC counter allocation
        perf/arm-cmn: Rework DTC counters (again)
        perf/arm-cmn: Fix DTC domain detection
        drivers: perf: arm_pmuv3: Drop some unused arguments from armv8_pmu_init()
        drivers: perf: arm_pmuv3: Read PMMIR_EL1 unconditionally
        drivers/perf: hisi: use cpuhp_state_remove_instance_nocalls() for hisi_hns3_pmu uninit process
        clocksource/drivers/arm_arch_timer: limit XGene-1 workaround
        arm64: Remove system_uses_lse_atomics()
        arm64: Mark the 'addr' argument to set_ptes() and __set_pte_at() as unused
        drivers/perf: xgene: Use device_get_match_data()
        perf/amlogic: add missing MODULE_DEVICE_TABLE
        arm64/mm: Hoist synchronization out of set_ptes() loop
        ...
      56ec8e4c
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2023-10-31-1' of git://anongit.freedesktop.org/drm/drm · 7d461b29
      Linus Torvalds authored
      Pull drm updates from Dave Airlie:
       "Highlights:
         - AMD adds some more upcoming HW platforms
         - Intel made Meteorlake stable and started adding Lunarlake
         - nouveau has a bunch of display rework in prepartion for the NVIDIA
           GSP firmware support
         - msm adds a7xx support
         - habanalabs has finished migration to accel subsystem
      
        Detail summary:
      
        kernel:
         - add initial vmemdup-user-array
      
        core:
         - fix platform remove() to return void
         - drm_file owner updated to reflect owner
         - move size calcs to drm buddy allocator
         - let GPUVM build as a module
         - allow variable number of run-queues in scheduler
      
        edid:
         - handle bad h/v sync_end in EDIDs
      
        panfrost:
         - add Boris as maintainer
      
        fbdev:
         - use fb_ops helpers more
         - only allow logo use from fbcon
         - rename fb_pgproto to pgprot_framebuffer
         - add HPD state to drm_connector_oob_hotplug_event
         - convert to fbdev i/o mem helpers
      
        i915:
         - Enable meteorlake by default
         - Early Xe2 LPD/Lunarlake display enablement
         - Rework subplatforms into IP version checks
         - GuC based TLB invalidation for Meteorlake
         - Display rework for future Xe driver integration
         - LNL FBC features
         - LNL display feature capability reads
         - update recommended fw versions for DG2+
         - drop fastboot module parameter
         - added deviceid for Arrowlake-S
         - drop preproduction workarounds
         - don't disable preemption for resets
         - cleanup inlines in headers
         - PXP firmware loading fix
         - Fix sg list lengths
         - DSC PPS state readout/verification
         - Add more RPL P/U PCI IDs
         - Add new DG2-G12 stepping
         - DP enhanced framing support to state checker
         - Improve shared link bandwidth management
         - stop using GEM macros in display code
         - refactor related code into display code
         - locally enable W=1 warnings
         - remove PSR watchdog timers on LNL
      
        amdgpu:
         - RAS/FRU EEPROM updatse
         - IP discovery updatses
         - GC 11.5 support
         - DCN 3.5 support
         - VPE 6.1 support
         - NBIO 7.11 support
         - DML2 support
         - lots of IP updates
         - use flexible arrays for bo list handling
         - W=1 fixes
         - Enable seamless boot in more cases
         - Enable context type property for HDMI
         - Rework GPUVM TLB flushing
         - VCN IB start/size alignment fixes
      
        amdkfd:
         - GC 10/11 fixes
         - GC 11.5 support
         - use partial migration in GPU faults
      
        radeon:
         - W=1 Fixes
         - fix some possible buffer overflow/NULL derefs
      
        nouveau:
         - update uapi for NO_PREFETCH
         - scheduler/fence fixes
         - rework suspend/resume for GSP-RM
         - rework display in preparation for GSP-RM
      
        habanalabs:
         - uapi: expose tsc clock
         - uapi: block access to eventfd through control device
         - uapi: force dma-buf export to PAGE_SIZE alignments
         - complete move to accel subsystem
         - move firmware interface include files
         - perform hard reset on PCIe AXI drain event
         - optimise user interrupt handling
      
        msm:
         - DP: use existing helpers for DPCD
         - DPU: interrupts reworked
         - gpu: a7xx (a730/a740) support
         - decouple msm_drv from kms for headless devices
      
        mediatek:
         - MT8188 dsi/dp/edp support
         - DDP GAMMA - 12 bit LUT support
         - connector dynamic selection capability
      
        rockchip:
         - rv1126 mipi-dsi/vop support
         - add planar formats
      
        ast:
         - rename constants
      
        panels:
         - Mitsubishi AA084XE01
         - JDI LPM102A188A
         - LTK050H3148W-CTA6
      
        ivpu:
         - power management fixes
      
        qaic:
         - add detach slice bo api
      
        komeda:
         - add NV12 writeback
      
        tegra:
         - support NVSYNC/NHSYNC
         - host1x suspend fixes
      
        ili9882t:
         - separate into own driver"
      
      * tag 'drm-next-2023-10-31-1' of git://anongit.freedesktop.org/drm/drm: (1803 commits)
        drm/amdgpu: Remove unused variables from amdgpu_show_fdinfo
        drm/amdgpu: Remove duplicate fdinfo fields
        drm/amd/amdgpu: avoid to disable gfxhub interrupt when driver is unloaded
        drm/amdgpu: Add EXT_COHERENT support for APU and NUMA systems
        drm/amdgpu: Retrieve CE count from ce_count_lo_chip in EccInfo table
        drm/amdgpu: Identify data parity error corrected in replay mode
        drm/amdgpu: Fix typo in IP discovery parsing
        drm/amd/display: fix S/G display enablement
        drm/amdxcp: fix amdxcp unloads incompletely
        drm/amd/amdgpu: fix the GPU power print error in pm info
        drm/amdgpu: Use pcie domain of xcc acpi objects
        drm/amd: check num of link levels when update pcie param
        drm/amdgpu: Add a read to GFX v9.4.3 ring test
        drm/amd/pm: call smu_cmn_get_smc_version in is_mode1_reset_supported.
        drm/amdgpu: get RAS poison status from DF v4_6_2
        drm/amdgpu: Use discovery table's subrevision
        drm/amd/display: 3.2.256
        drm/amd/display: add interface to query SubVP status
        drm/amd/display: Read before writing Backlight Mode Set Register
        drm/amd/display: Disable SYMCLK32_SE RCO on DCN314
        ...
      7d461b29
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · 8bc9e651
      Linus Torvalds authored
      Pull devicetree updates from Rob Herring:
      
       - Add a kselftest to check for unprobed DT devices
      
       - Fix address translation for some 3 address cells cases
      
       - Refactor firmware node refcounting for AMBA bus
      
       - Add bindings for qcom,sm4450-pdc, Qualcomm Kryo 465 CPU, and
         Freescale QMC HDLC
      
       - Add Marantec vendor prefix
      
       - Convert qcom,pm8921-keypad, cnxt,cx92755-wdt, da9062-wdt, and
         atmel,at91rm9200-wdt bindings to DT schema
      
       - Several additionalProperties/unevaluatedProperties on child node
         schemas fixes
      
       - Drop reserved-memory bindings which now live in dtschema project
      
       - Fix a reference to rockchip,inno-usb2phy.yaml
      
       - Remove backlight nodes from display panel examples
      
       - Expand example for using DT_SCHEMA_FILES
      
       - Merge simple LVDS panel bindings to one binding doc
      
      * tag 'devicetree-for-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (34 commits)
        dt-bindings: soc: fsl: cpm_qe: cpm1-scc-qmc: Add support for QMC HDLC
        dt-bindings: soc: fsl: cpm_qe: cpm1-scc-qmc: Add 'additionalProperties: false' in child nodes
        dt-bindings: soc: fsl: cpm_qe: cpm1-scc-qmc: Fix example property name
        dt-bindings: arm,coresight-cti: Add missing additionalProperties on child nodes
        dt-bindings: arm,coresight-cti: Drop type for 'cpu' property
        dt-bindings: soundwire: Add reference to soundwire-controller.yaml schema
        dt-bindings: input: syna,rmi4: Make "additionalProperties: true" explicit
        media: dt-bindings: ti,ds90ub960: Add missing type for "i2c-alias"
        dt-bindings: input: qcom,pm8921-keypad: convert to YAML format
        of: overlay: unittest: overlay_bad_unresolved: Spelling s/ok/okay/
        of: address: Consolidate bus .map() functions
        of: address: Store number of bus flag cells rather than bool
        of: unittest: Add tests for address translations
        of: address: Remove duplicated functions
        of: address: Fix address translation when address-size is greater than 2
        dt-bindings: watchdog: cnxt,cx92755-wdt: convert txt to yaml
        dt-bindings: watchdog: da9062-wdt: convert txt to yaml
        dt-bindings: watchdog: fsl,scu-wdt: Document imx8dl
        dt-bindings: watchdog: atmel,at91rm9200-wdt: convert txt to yaml
        dt-bindings: usb: rockchip,dwc3: update inno usb2 phy binding name
        ...
      8bc9e651
    • Linus Torvalds's avatar
      Merge tag 'for-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply · f9ae1804
      Linus Torvalds authored
      Pull power supply and reset updates from Sebastian Reichel:
       "Core changes:
         - propagate of_node to child device
         - change from atomic to blocking notifier_call_chain
      
        New drivers:
         - pm8916 battery management system
         - mm8013 fuel gauge
      
        New features:
         - maxim max17040: add temperature support
         - gpio-poweroff: make priority configurable
      
        Cleanups:
         - simplify reset drivers using builtin_platform_driver()
         - convert all platform drivers to remove_new callback
         - replace all strncpy occurrences with strscpy
         - started converting drivers to i2c_get_match_data()
         - misc fixes and cleanups"
      
      * tag 'for-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (91 commits)
        power: reset: vexpress: Use device_get_match_data()
        power: supply: surface-charger: replace deprecated strncpy with strscpy
        power: supply: surface_battery: replace deprecated strncpy with strscpy
        power: supply: charger-manager: replace deprecated strncpy with strscpy
        power: supply: bq25980: replace deprecated strncpy with strscpy
        power: supply: bq256xx: replace deprecated strncpy with strscpy
        power: supply: bq2515x: replace deprecated strncpy with strscpy
        power: supply: bq24190_charger: replace deprecated strncpy with strscpy
        power: supply: cpcap: Drop non-DT driver matching
        power: reset: brcmstb: Depend on actual SoC dependencies
        power: reset: gpio-poweroff: make sys handler priority configurable
        dt-bindings: power: reset: gpio-poweroff: Add priority property
        power: reset: gpio-poweroff: use sys-off handler API
        power: reset: gpio-poweroff: use a struct to store the module variables
        power: supply: rt5033_charger: Replace "&pdev->dev" by "charger->dev" in probe
        power: supply: rt5033_charger: Simplify initialization of rt5033_charger_data
        power: supply: rt5033_charger: Add cable detection and USB OTG supply
        power: supply: core: remove opencoded string_lower()
        dt-bindings: power: supply: sbs-manager: Add missing unevaluatedProperties on child node schemas
        power: supply: mm8013: Fix an error checking issue in mm8013_checkdevice()
        ...
      f9ae1804
    • Linus Torvalds's avatar
      Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · fe4ae2fa
      Linus Torvalds authored
      Pull clk driver updates from Stephen Boyd:
       "Herein lies a smallish collection of clk driver updates and some core
        clk framework changes for the merge window. The core framework changes
        are only improving the debugfs interface to allow phase adjustments
        and report which consumers of a clk there are. These are most likely
        only of interest to kernel developers.
      
        On the clk driver side, it's a ghastly amount of updates with only a
        handful of new clk drivers. We have a couple new clk drivers for
        Qualcomm, per usual, and a driver for Renesas, Amlogic, and TI
        respectively. The updates are spread throughout the clk drivers.
      
        Some highlights are fixing kunit tests for different configurations
        like lockdep and big-endian, avoiding integer overflow in rate
        settable clks, moving clk_hw_onecell_data to the end of allocations so
        that drivers don't corrupt their private data, and migrating clk
        drivers to the regmap maple tree. Otherwise it's the usual fixes to
        clk drivers that only come along with testing the drivers on real
        hardware.
      
        New Drivers:
         - Add clock driver for TWL6032
         - Initial support for the Qualcomm SM4450 Global Clock Controller and
           SM4450 RPMh clock controllers
         - Add Camera Clock Controller on Qualcomm SM8550
         - Add support for the Renesas RZ/G3S (R9A08G045) SoC
         - Add Amlogic s4 main clock controller support
      
      Updates:
         - Make clk kunit tests work with lockdep
         - Fix clk gate kunit test for big-endian
         - Convert more than a handful of clk drivers to use regmap maple tree
         - Consider the CLK_FRAC_DIVIDER_ZERO_BASED in fractional divider clk
           implementation
         - Add consumer info to clk debugfs
         - Fix various clk drivers that have clk_hw_onecell_data not at the
           end of an allocation
         - Drop CLK_SET_RATE_PARENT for clocks with fixed-rate GPLLs across a
           variety of Qualcomm IPQ platforms
         - Add missing parent of APCS PLL on Qualcomm IPQ6018
         - Add I2C QUP6 clk on Qualcomm IPQ6018 but mark it critical to avoid
           problems with RPM
         - Implement safe source switching for a53pll and use on Qualcomm
           IPQ5332
         - Add support for Stromer Plus PLLs to Qualcomm clk driver
         - Switch Qualcomm SM8550 Video and GPU clock controllers to use OLE
           PLL configure method
         - Non critical fixes to halt bit checks in Qualcomm clk drivers
         - Add SMMU GDSC for Qualcomm MSM8998
         - Fix possible integer overflow in Qualcomm RCG frequency calculation
           code
         - Remove RPM managed clks from Qualcomm MSM8996 GCC driver
         - Add HFPLL configuration for the three HFPLLs in Qualcomm MSM8976
         - Switch Qualcomm MSM8996 CBF clock driver's remove function to
           return void
         - Fix missing dependency for s4 clock controllers
         - Select MXC_CLK when building in the CLK_IMX8QXP
         - Fixes for error handling paths in i.MX8 ACM driver
         - Move the clocks check in i.MX8 ACM driver in order to log any error
         - Drop the unused return value of clk_imx_acm_detach_pm_domains
         - Drop non-existant IMX8MP_CLK_AUDIOMIX_PDM_ROOT clock
         - Fix error handling in i.MX8MQ clock driver
         - Allow a different LCDIF1 clock parent if DT describes it for
           i.MX6SX
         - Keep the SCU resource table sorted in the i.MX8DXL rsrc driver
         - Move the elcdif PLL clock registration above lcd_clk, as it is its
           parent
         - Correct some ENET specific clocks for i.MX8DXL platform
         - Drop the VPU_UART and VPUCORE from i.MX8QM as latest HW revision
           doesn't have them
         - Remove "de-featured" MLB support from i.MX8QM/QXP/DXL platforms
         - Skip registering clocks owned by Cortex-A partition SCU-based
           platforms
         - Add CAN_1/2 to i.MX8QM and M4_0, PI_0_PWM_0 and PI_0_I2C_0 to
           i.MX8QXP resources"
      
      * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (128 commits)
        clk: Fix clk gate kunit test on big-endian CPUs
        clk: si521xx: Increase stack based print buffer size in probe
        clk: mediatek: fix double free in mtk_clk_register_pllfh()
        clk: socfpga: agilex: Add bounds-checking coverage for struct stratix10_clock_data
        clk: socfpga: Fix undefined behavior bug in struct stratix10_clock_data
        clk: sifive: Allow building the driver as a module
        clk: analogbits: Allow building the library as a module
        clk: sprd: Composite driver support offset config
        clk: Allow phase adjustment from debugfs
        clk: Show active consumers of clocks in debugfs
        clk: Use device_get_match_data()
        clk: visconti: Add bounds-checking coverage for struct visconti_pll_provider
        clk: visconti: Fix undefined behavior bug in struct visconti_pll_provider
        clk: cdce925: Extend match support for OF tables
        clk: si570: Simplify probe
        clk: si5351: Simplify probe
        clk: rs9: Use i2c_get_match_data() instead of device_get_match_data()
        clk: clk-si544: Simplify probe() and is_valid_frequency()
        clk: si521xx: Use i2c_get_match_data() instead of device_get_match_data()
        clk: meson: S4: select CONFIG_COMMON_CLK_MESON_CLKC_UTILS
        ...
      fe4ae2fa
    • Linus Torvalds's avatar
      Merge tag 'for-6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/pateldipen1984/linux · c5289435
      Linus Torvalds authored
      Pull hte/timestamp updates from Dipen Patel:
      
       - Improve comments in the translate function
      
       - Reflect the GPIOLIB API changes during calculation of the GPIO base
      
       - Improve error handling in Tegra test and provider drivers
      
       - Improve code to set the line name
      
      * tag 'for-6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/pateldipen1984/linux:
        hte: Use kasprintf() instead of fixed buffer formatting
        hte: tegra: Fix missing error code in tegra_hte_test_probe()
        hte: tegra194: Switch to LATE_SIMPLE_DEV_PM_OPS()
        hte: tegra194: Remove redundant dev_err()
        hte: tegra194: improve the GPIO-related comment
        hte: allow building modules with COMPILE_TEST enabled
        hte: Annotate struct hte_device with __counted_by
      c5289435
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v6.7-1' of... · 59fff63c
      Linus Torvalds authored
      Merge tag 'platform-drivers-x86-v6.7-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86
      
      Pull x86 platform driver updates from Ilpo Järvinen:
      
       - asus-wmi: Support for screenpad and solve brightness key press
         duplication
      
       - int3472: Eliminate the last use of deprecated GPIO functions
      
       - mlxbf-pmc: New HW support
      
       - msi-ec: Support new EC configurations
      
       - thinkpad_acpi: Support reading aux MAC address during passthrough
      
       - wmi: Fixes & improvements
      
       - x86-android-tablets: Detection fix and avoid use of GPIO private APIs
      
       - Debug & metrics interface improvements
      
       - Miscellaneous cleanups / fixes / improvements
      
      * tag 'platform-drivers-x86-v6.7-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86: (80 commits)
        platform/x86: inspur-platform-profile: Add platform profile support
        platform/x86: thinkpad_acpi: Add battery quirk for Thinkpad X120e
        platform/x86: wmi: Decouple WMI device removal from wmi_block_list
        platform/x86: wmi: Fix opening of char device
        platform/x86: wmi: Fix probe failure when failing to register WMI devices
        platform/x86: wmi: Fix refcounting of WMI devices in legacy functions
        platform/x86: wmi: Decouple probe deferring from wmi_block_list
        platform/x86/amd/hsmp: Fix iomem handling
        platform/x86: asus-wmi: Do not report brightness up/down keys when also reported by acpi_video
        platform/x86: thinkpad_acpi: replace deprecated strncpy with memcpy
        tools/power/x86/intel-speed-select: v1.18 release
        tools/power/x86/intel-speed-select: Use cgroup isolate for CPU 0
        tools/power/x86/intel-speed-select: Increase max CPUs in one request
        tools/power/x86/intel-speed-select: Display error for core-power support
        tools/power/x86/intel-speed-select: No TRL for non compute domains
        tools/power/x86/intel-speed-select: turbo-mode enable disable swapped
        tools/power/x86/intel-speed-select: Update help for TRL
        tools/power/x86/intel-speed-select: Sanitize integer arguments
        platform/x86: acer-wmi: Remove void function return
        platform/x86/amd/pmc: Add dump_custom_stb module parameter
        ...
      59fff63c
    • Linus Torvalds's avatar
      Merge tag 'tag-chrome-platform-for-v6.7' of... · 3475b91f
      Linus Torvalds authored
      Merge tag 'tag-chrome-platform-for-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux
      
      Pull chrome platform updates from Tzung-Bi Shih:
       "Improvements:
      
         - Annotate flexible array members with __counted_by
      
         - Convert platform drivers' .remove callbacks to return void
      
        Fixes:
      
         - Avoid MKBP event timeouts by disabling/enabling IRQ later/earlier
      
        Misc:
      
         - Minor cleanups and fixes"
      
      * tag 'tag-chrome-platform-for-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux: (21 commits)
        platform/chrome: cros_ec_lpc: Separate host command and irq disable
        platform/chrome: kunit: make EC protocol tests independent
        platform/chrome: kunit: initialize lock for fake ec_dev
        platform/chrome: cros_ec: fix compilation warning
        platform/chrome: cros_ec_proto: Mark outdata as const
        platform/chrome: cros_typec_vdm: Mark port_amode_ops const
        platform/chrome: cros_ec_typec: Use dev_err_probe() more
        platform/chrome: cros_ec_typec: Use semi-colons instead of commas
        platform/chrome/wilco_ec: telemetry: Convert to platform remove callback returning void
        platform/chrome/wilco_ec: debugfs: Convert to platform remove callback returning void
        platform/chrome/wilco_ec: core: Convert to platform remove callback returning void
        platform/chrome: cros_usbpd_notify: Convert to platform remove callback returning void
        platform/chrome: cros_usbpd_logger: Convert to platform remove callback returning void
        platform/chrome: cros_typec_switch: Convert to platform remove callback returning void
        platform/chrome: cros_ec_vbc: Convert to platform remove callback returning void
        platform/chrome: cros_ec_sysfs: Convert to platform remove callback returning void
        platform/chrome: cros_ec_lpc: Convert to platform remove callback returning void
        platform/chrome: cros_ec_lightbar: Convert to platform remove callback returning void
        platform/chrome: cros_ec_debugfs: Convert to platform remove callback returning void
        platform/chrome: cros_ec_chardev: Convert to platform remove callback returning void
        ...
      3475b91f
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging · f9a7eda4
      Linus Torvalds authored
      Pull hwmon updates from Guenter Roeck:
       "New drivers:
      
         - Driver for LTC2991
      
         - Driver for POWER-Z
      
        Added chip / system support to existing drivers:
      
         - The ina238 driver now also supports INA237
      
         - The asus-ec-sensors driver now supports ROG Crosshair X670E Gene
      
         - The aquacomputer_d5next now supports Aquacomputer High Flow USB and
           MPS Flow
      
         - The pmbus/mpq7932 driver now also supports MPQ2286
      
         - The nct6683 now also supports ASRock X670E Taichi
      
        Various other minor improvements and fixes:
      
         - One patch series to call out is the conversion of hwmon platform
           drivers to use the platform remove callback returning void"
      
      * tag 'hwmon-for-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (69 commits)
        hwmon: (aquacomputer_d5next) Check if temp sensors of legacy devices are connected
        hwmon: (aquacomputer_d5next) Add support for Aquacomputer High Flow USB and MPS Flow
        dt-bindings: hwmon: npcm: Add npcm845 compatible string
        hwmon: Add driver for ltc2991
        dt-bindings: hwmon: ltc2991: add bindings
        hwmon: (pmbus/max31785) Add delay between bus accesses
        hwmon: (ina238) add ina237 support
        dt-bindings: hwmon: ti,ina2xx: add ti,ina237
        hwmon: (asus-ec-sensors) add ROG Crosshair X670E Gene.
        hwmon: (max31827) handle vref regulator
        hwmon: (ina3221) Add support for channel summation disable
        dt-bindings: hwmon: ina3221: Add ti,summation-disable
        dt-bindings: hwmon: ina3221: Convert to json-schema
        hwmon: (pmbus/mpq7932) Add a support for mpq2286 Power Management IC
        hwmon: (pmbus/core) Add helper macro to define single pmbus regulator
        regulator: dt-bindings: Add mps,mpq2286 power-management IC
        hwmon: (pmbus/mpq7932) Get page count based on chip info
        dt-bindings: hwmon: Add possible new properties to max31827 bindings
        hwmon: (max31827) Modify conversion wait time
        hwmon: (max31827) Make code cleaner
        ...
      f9a7eda4
    • Linus Torvalds's avatar
      Merge tag 'spi-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · 34aac0a3
      Linus Torvalds authored
      Pull spi updates from Mark Brown:
       "This is a very quiet release for SPI, we've got cleanups and minor
        fixes but only a few new driver specific features. The bulk of the
        changes in terms of diffstat are the cleanups, plus one bit of
        performance work for McSPI.
      
         - Conversions to use devm_clk_get_enabled() and to remove outdated
           terms for controller and device
      
         - Device mode support for the Renesas CSI
      
         - Cleanups and improvements to the device tree bindings aimed at
           making validation better
      
         - PIO FIFO usage for the OMAP2 McSPI, improving performance"
      
      * tag 'spi-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (75 commits)
        spi: omap2-mcspi: Add FIFO support without DMA
        spi: stm32: Explicitly include correct DT includes
        spi: Export acpi_spi_find_controller_by_adev()
        spi: nxp-fspi: use the correct ioremap function
        spi: Don't use flexible array in struct spi_message definition
        spi: bcm2835: add a sentinel at the end of the lookup array
        spi: spi-geni-qcom: Rename the label unmap_if_dma
        spi: rzv2m-csi: Add target mode support
        spi: renesas,rzv2m-csi: Add CSI (SPI) target related property
        spi: spidev: make spidev_class constant
        spi: mpc52xx-psc: Make mpc52xx_psc_spi_transfer_one_message() static
        spi: spi-cadence-quadspi: Fix missing unwind goto warnings
        spi: omap2-mcspi: Fix hardcoded reference clock
        spi: dt-bindings: Make "additionalProperties: true" explicit
        spi: at91-usart: Remove some dead code
        spi: dt-bindings: st,stm32-spi: Move "st,spi-midi-ns" to spi-peripheral-props.yaml
        spi: qup: Vote for interconnect bandwidth to DRAM
        spi: dt-bindings: qup: Document interconnects
        spi: qup: Parse OPP table for DVFS support
        spi: dt-bindings: qup: Document power-domains and OPP
        ...
      34aac0a3
    • Linus Torvalds's avatar
      Merge tag 'regulator-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · 9d6c80f8
      Linus Torvalds authored
      Pull regulator updates from Mark Brown:
       "This has been a fairly quiet release for the regulator API, the
        changes are dominated by some new drivers and a quite large set of
        cleanups and filling in the blanks of features for the existing MT6358
        driver.
      
         - Cleanups and additional features for the Mediatek MT6358 driver
      
         - Under voltage detection in the fixed regulator
      
         - Support for Maxim MAX77503, Mediatek MT6366, Qualcomm PM8909,
           PM8919, PMA8048 and PMC8380"
      
      * tag 'regulator-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (45 commits)
        regulator (max5970): Remove duplicate line
        regulator (max5970): Add hwmon support
        regulator: qcom-rpmh: Fix smps4 regulator for pm8550ve
        regulator: qcom,rpmh: Add PMC8380 compatible
        regulator: qcom-rpmh: Add regulators support for PMC8380
        regulator: fixed: add support for under-voltage IRQ
        regulator: dt-bindings: fixed-regulator: Add under-voltage interrupt support
        dt-bindings: regulator: dlg,da9210: Convert to json-schema
        regulator: dt-bindings: Add ADI MAX77503 support
        regulator: max77503: Add ADI MAX77503 support
        regulator: Use device_get_match_data()
        regulator: da9121: Use i2c_get_match_data()
        regulator: Drop unnecessary of_match_device() calls
        regulator: da9063: Annotate struct da9063_regulators with __counted_by
        regulator: da9062: Annotate struct da9062_regulators with __counted_by
        regulator: mt6358: Add supply names for MT6366 regulators
        regulator: mt6358: Add missing regulators for MT6366
        regulator: mt6358: Make MT6366 vcn18 LDO configurable
        regulator: mt6358: fix and drop type prefix in MT6366 regulator node names
        regulator: mt6358: Add supply names for MT6358 regulators
        ...
      9d6c80f8
    • Linus Torvalds's avatar
      Merge tag 'regmap-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · 5cbff4b2
      Linus Torvalds authored
      Pull regmap updates from Mark Brown:
       "The main change here is a fix for an issue where we were letting the
        selector for windowed register ranges get out of sync with the
        hardware during a cache sync plus associated KUnit tests. This was
        reported just at the end of the release cycle and only in -next for a
        day prior to the merge window so it seemed better to hold off for now,
        the bug had been present for more than a decade so wasn't causing too
        many practical problems hopefully.
      
        There's also a fix for error handling in the debugfs output from
        Christope Jaillet"
      
      * tag 'regmap-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
        regmap: Ensure range selector registers are updated after cache sync
        regmap: kunit: Add test for cache sync interaction with ranges
        regmap: kunit: Fix marking of the range window as volatile
        regmap: debugfs: Fix a erroneous check after snprintf()
      5cbff4b2
    • Linus Torvalds's avatar
      Merge tag 'gpio-updates-for-v6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux · b05ddad0
      Linus Torvalds authored
      Pull gpio updates from Bartosz Golaszewski:
       "We don't have any new drivers. The loongson driver is getting extended
        with support for new models. There's a big refactor of gpio-pca953x
        and many small improvements to others.
      
        The GPIO code in the kernel has acquired a lot of cruft over the years
        as well as many abusers of the API across the kernel tree. This
        release cycle we have started a major cleanup and improvement effort
        that will most likely span several releases. We have started by
        converting external users of struct gpio_chip to accessing the wrapper
        around it - struct gpio_device. This is because the latter is
        reference counted while the former is removed when the provider is
        unbound. We also removed several instances of drivers accessing
        private GPIOLIB structures and including the private header from
        drivers/gpio/.
      
        To that end you'll see several commits aimed at different subsystems
        (acked by relevant maintainers) as well as two merges from the
        x86/platform tree.
      
        We'll then rework the locking in GPIOLIB which currently uses a big
        spinlock for many different things and could use becoming more
        fine-grained, especially as it doesn't even get the locking right.
        We'll also use SRCU for protecting the gpio_chip pointer against
        in-kernel hot-unplug crashes similar to what we saw triggered from
        user-space and fixed with semaphores in gpiolib-cdev. The core GPIOLIB
        is still vulnerable to these use-cases. I'm just mentioning the plans
        here, this is not part of this PR.
      
        You'll see some new instances of using __free(). We've added a
        gpio_device_put cleanup helper similar to the put_device one
        introduced by Peter Zijlstra and used it according to the preferred
        pattern except where it didn't make sense.
      
        GPIOLIB core:
         - provide interfaces allowing users to retrieve, manage and query the
           reference counted GPIO device instead of accessing the private
           gpio_chip structure
         - replace gpiochip_find() with gpio_device_find()
         - remove unused acpi_get_and_request_gpiod()
         - improve the ignore_interrupt functionality in GPIO ACPI
         - correct notifier return codes in gpiolib-of
         - unexport gpiod_set_transitory() as it's unused outside of core GPIO
           code
         - while there are still external users accessing struct gpio_chip,
           let's make gpiochip_get_desc() public so that they at least use the
           preferred helper
         - improve locking for lookup tables
         - annotate struct linereq with __counted_by
         - improve GPIOLIB docs
         - add an OF quirk for LED trigger sources
      
        Driver improvements:
         - convert all GPIO drivers with .remove() callbacks to using the new
           variant returning void instead of int
         - stop accessing the GPIOLIB private structures in gpio-mockup,
           i2c-mux-gpio, hte-tegra194, gpio-sim
         - use the recommended pattern for autofree variables in gpio-sim
         - add support for more models to gpio-loongson
         - use a notifier chain to notify other blocks about interrupts in
           gpio-eic-sprd instead of looking up GPIO devices on every interrupt
         - convert gpio-pca953x and gpio-fx6408 to using the maple tree regmap
           cache
         - don't include GPIOLIB internal headers in drivers which don't need
           them
         - move the ingenic NAND quirk into gpiolib-of
         - add an ignore interrupt quirk for Peaq C1010
         - drop static GPIO base from gpio-omap, gpio-f7188x
         - use the preferred device_get_match_data() function in drivers that
           still don't
         - refactor gpio-pca953x: switch to using DEFINE_SIMPLE_DEV_PM_OPS(),
           use cleanup helpers, use dev_err_probe() where it makes sense,
           fully convert to using devres and some other minor tweaks
      
        DT bindings:
         - add support for a new model to gpio-vf610 and update existing
           properties
         - add support for more loongson models
         - add missing support for imx models that are used but undocumented
         - convert bindings for Intel IXP4xx to schema
      
        Minor stuff:
         - deprecate gpio-mockup in favor of gpio-sim
         - include missing headers here and there
         - stop using gpiochip_find() in OMAP1 board files
         - minor tweaks in gpio-vf610, gpio-hisi
         - remove unneeded 'extern' specifiers from headers"
      
      * tag 'gpio-updates-for-v6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux: (108 commits)
        hte: tegra194: add GPIOLIB dependency
        hte: tegra194: don't access struct gpio_chip
        gpiolib: provide gpio_device_get_base()
        i2c: mux: gpio: don't fiddle with GPIOLIB internals
        gpiolib: provide gpiod_to_gpio_device()
        gpiolib: provide gpio_device_to_device()
        gpio: hisi: Fix format specifier
        gpiolib: provide gpio_device_find_by_fwnode()
        gpio: acpi: remove acpi_get_and_request_gpiod()
        gpio: Use device_get_match_data()
        gpio: vf610: update comment for i.MX8ULP and i.MX93 legacy compatibles
        platform/x86: int3472: Switch to devm_get_gpiod()
        platform/x86: int3472: Stop using gpiod_toggle_active_low()
        platform/x86: int3472: Add new skl_int3472_gpiod_get_from_temp_lookup() helper
        platform/x86: int3472: Add new skl_int3472_fill_gpiod_lookup() helper
        gpio: vf610: simplify code by dropping data check
        gpio: vf610: add i.MX8ULP of_device_id entry
        dt-bindings: gpio: vf610: add i.MX95 compatible
        dt-bindings: gpio: vf610: correct i.MX8ULP and i.MX93
        dt-bindings: gpio: vf610: update gpio-ranges
        ...
      b05ddad0
    • Linus Torvalds's avatar
      Merge tag 'pm-6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · ad1871ad
      Linus Torvalds authored
      Pull power management updates from Rafael Wysocki:
       "These add new hardware support (new Qualcomm SoC versions in cpufreq,
        RK3568/RK3588 in devfreq), extend the OPP (operating performance
        points) framework, improve cpufreq governors, fix issues and clean up
        code (most of the changes are in cpufreq and devfreq).
      
        Specifics:
      
         - Add support for several Qualcomm SoC versions and other similar
           changes (Christian Marangi, Dmitry Baryshkov, Luca Weiss, Neil
           Armstrong, Richard Acayan, Robert Marko, Rohit Agarwal, Stephan
           Gerhold and Varadarajan Narayanan)
      
         - Clean up the tegra cpufreq driver (Sumit Gupta)
      
         - Use of_property_read_reg() to parse "reg" in pmac32 driver (Rob
           Herring)
      
         - Add support for TI's am62p5 Soc (Bryan Brattlof)
      
         - Make ARM_BRCMSTB_AVS_CPUFREQ depends on !ARM_SCMI_CPUFREQ (Florian
           Fainelli)
      
         - Update Kconfig to mention i.MX7 as well (Alexander Stein)
      
         - Revise global turbo disable check in intel_pstate (Srinivas
           Pandruvada)
      
         - Carry out initialization of sg_cpu in the schedutil cpufreq
           governor in one loop (Liao Chang)
      
         - Simplify the condition for storing 'down_threshold' in the
           conservative cpufreq governor (Liao Chang)
      
         - Use fine-grained mutex in the userspace cpufreq governor (Liao
           Chang)
      
         - Move is_managed indicator in the userspace cpufreq governor into a
           per-policy structure (Liao Chang)
      
         - Rebuild sched-domains when removing cpufreq driver (Pierre Gondois)
      
         - Fix buffer overflow detection in trans_stats() (Christian Marangi)
      
         - Switch to dev_pm_opp_find_freq_(ceil/floor)_indexed() APIs to
           support specific devices like UFS which handle multiple clocks
           through OPP (Operating Performance Point) framework (Manivannan
           Sadhasivam)
      
         - Add perf support to the Rockchip DFI (DDR Monitor Module) devfreq-
           event driver:
            * Generalize rockchip-dfi.c to support new RK3568/RK3588 using
              different DDR type (Sascha Hauer).
            * Convert DT binding document format to yaml (Sascha Hauer).
            * Add perf support for DFI (a unit suitable for measuring DDR
              utilization) to rockchip-dfi.c to extend DFI usage (Sascha
              Hauer)
      
         - Add locking to the OPP handling code in the Mediatek CCI devfreq
           driver, because the voltage of shared OPP might be changed by
           multiple drivers (Mark Tseng, Dan Carpenter)
      
         - Use device_get_match_data() in the Samsung Exynos PPMU
           devfreq-event driver (Rob Herring)
      
         - Extend support for the opp-level beyond required-opps (Ulf Hansson)
      
         - Add dev_pm_opp_find_level_floor() (Krishna chaitanya chundru)
      
         - dt-bindings: Allow opp-peak-kBpsfor kryo CPUs, support Qualcomm
           Krait SoCs and document named opp-microvolt property (Bjorn
           Andersson, Dmitry Baryshkov and Christian Marangi)
      
         - Fix -Wunsequenced warning _of_add_opp_table_v1() (Nathan
           Chancellor)
      
         - General cleanup of OPP code (Viresh Kumar)
      
         - Use __get_safe_page() rather than touching the list in hibernation
           snapshot code (Brian Geffon)
      
         - Fix symbol export for _SIMPLE_ variants of _PM_OPS() (Raag Jadav)
      
         - Clean up sync_read handling in snapshot_write_next() (Brian Geffon)
      
         - Fix kerneldoc comments for swsusp_check() and swsusp_close() to
           better match code (Christoph Hellwig)
      
         - Downgrade BIOS locked limits pr_warn() in the Intel RAPL power
           capping driver to pr_debug() (Ville Syrjälä)
      
         - Change the minimum python version for the intel_pstate_tracer
           utility from 2.7 to 3.6 (Doug Smythies)"
      
      * tag 'pm-6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (82 commits)
        dt-bindings: cpufreq: qcom-hw: document SM8650 CPUFREQ Hardware
        cpufreq: arm: Kconfig: Add i.MX7 to supported SoC for ARM_IMX_CPUFREQ_DT
        cpufreq: qcom-nvmem: add support for IPQ8064
        cpufreq: qcom-nvmem: also accept operating-points-v2-krait-cpu
        cpufreq: qcom-nvmem: drop pvs_ver for format a fuses
        dt-bindings: cpufreq: qcom-cpufreq-nvmem: Document krait-cpu
        cpufreq: qcom-nvmem: add support for IPQ6018
        dt-bindings: cpufreq: qcom-cpufreq-nvmem: document IPQ6018
        cpufreq: qcom-nvmem: Add MSM8909
        cpufreq: qcom-nvmem: Simplify driver data allocation
        powercap: intel_rapl: Downgrade BIOS locked limits pr_warn() to pr_debug()
        cpufreq: stats: Fix buffer overflow detection in trans_stats()
        dt-bindings: devfreq: event: rockchip,dfi: Add rk3588 support
        dt-bindings: devfreq: event: rockchip,dfi: Add rk3568 support
        dt-bindings: devfreq: event: convert Rockchip DFI binding to yaml
        PM / devfreq: rockchip-dfi: add support for RK3588
        PM / devfreq: rockchip-dfi: account for multiple DDRMON_CTRL registers
        PM / devfreq: rockchip-dfi: make register stride SoC specific
        PM / devfreq: rockchip-dfi: Add perf support
        PM / devfreq: rockchip-dfi: give variable a better name
        ...
      ad1871ad
    • Linus Torvalds's avatar
      Merge tag 'acpi-6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · d4b671d4
      Linus Torvalds authored
      Pull ACPI updates from Rafael Wysocki:
       "These fix issues, add new quirks, rearrange the IRQ override quirk
        definitions, add new helpers and switch over code to using them,
        rework a couple of interfaces to be more flexible, eliminate strncpy()
        usage from PNP, extend the ACPI PCC mailbox driver and clean up code.
      
        This is based on ACPI thermal driver changes that are present in the
        thermal control updates for 6.7-rc1 pull request (they are depended on
        by the ACPI utilities updates). However, the ACPI thermal driver
        changes are not included in the list of specific ACPI changes below.
      
        Specifics:
      
         - Add symbol definitions related to CDAT to the ACPICA code (Dave
           Jiang)
      
         - Use the acpi_device_is_present() helper in more places and rename
           acpi_scan_device_not_present() to be about enumeration (James
           Morse)
      
         - Add __printf format attribute to acpi_os_vprintf() (Su Hui)
      
         - Clean up departures from kernel coding style in the low-level
           interface for ACPICA (Jonathan Bergh)
      
         - Replace strncpy() with strscpy() in acpi_osi_setup() (Justin Stitt)
      
         - Fail FPDT parsing on zero length records and add proper handling
           for fpdt_process_subtable() to acpi_init_fpdt() (Vasily Khoruzhick)
      
         - Rework acpi_handle_list handling so as to manage it dynamically,
           including size computation (Rafael Wysocki)
      
         - Clean up ACPI utilities code so as to make it follow the kernel
           coding style (Jonathan Bergh)
      
         - Consolidate IRQ trigger-type override DMI tables and drop .ident
           values from dmi_system_id tables used for ACPI resources management
           quirks (Hans de Goede)
      
         - Add ACPI IRQ override for TongFang GMxXGxx (Werner Sembach)
      
         - Allow _DSD buffer data only for byte accessors and document the
           _DSD data buffer GUID (Andy Shevchenko)
      
         - Drop BayTrail and Lynxpoint pinctrl device IDs from the ACPI LPSS
           driver, because it does not need them (Raag Jadav)
      
         - Add acpi_backlight=vendor quirk for Toshiba Portégé R100 (Ondrej
           Zary)
      
         - Add "vendor" backlight quirks for 3 Lenovo x86 Android tablets
           (Hans de Goede)
      
         - Move Xiaomi Mi Pad 2 backlight quirk to its own section (Hans de
           Goede)
      
         - Annotate struct prm_module_info with __counted_by (Kees Cook)
      
         - Fix AER info corruption in aer_recover_queue() when error status
           data has multiple sections (Shiju Jose)
      
         - Make APEI use ERST maximum execution time for slow devices (Jeshua
           Smith)
      
         - Add support for platform notification handling to the PCC mailbox
           driver and modify it to support shared interrupts for multiple
           subspaces (Huisong Li)
      
         - Define common macros to use when referring to various bitfields in
           the PCC generic communications channel command and status fields
           and use them in some drivers (Sudeep Holla)
      
         - Add EC GPE detection quirk for HP 250 G7 Notebook PC (Jonathan
           Denose)
      
         - Fix and clean up create_pnp_modalias() and create_of_modalias()
           (Christophe JAILLET)
      
         - Modify 2 pieces of code to use acpi_evaluate_dsm_typed() (Andy
           Shevchenko)
      
         - Define acpi_dev_uid_match() for matching _UID and use it in several
           places (Raag Jadav)
      
         - Use acpi_device_uid() for fetching _UID in 2 places (Raag Jadav)
      
         - Add context argument to acpi_dev_install_notify_handler() (Rafael
           Wysocki)
      
         - Clarify ACPI bus concepts in the ACPI device enumeration
           documentation (Rafael Wysocki)
      
         - Switch over the ACPI AC and ACPI PAD drivers to using the platform
           driver interface which, is more logically consistent than binding a
           driver directly to an ACPI device object, and clean them up (Michal
           Wilczynski)
      
         - Replace strncpy() in the PNP code with either memcpy() or strscpy()
           as appropriate (Justin Stitt)
      
         - Clean up coding style in pnp.h (GuoHua Cheng)"
      
      * tag 'acpi-6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (54 commits)
        ACPI: resource: Do IRQ override on TongFang GMxXGxx
        perf: arm_cspmu: use acpi_dev_hid_uid_match() for matching _HID and _UID
        ACPI: EC: Add quirk for HP 250 G7 Notebook PC
        ACPI: x86: use acpi_dev_uid_match() for matching _UID
        ACPI: utils: use acpi_dev_uid_match() for matching _UID
        pinctrl: intel: use acpi_dev_uid_match() for matching _UID
        ACPI: utils: Introduce acpi_dev_uid_match() for matching _UID
        ACPI: sysfs: Clean up create_pnp_modalias() and create_of_modalias()
        ACPI: sysfs: Fix create_pnp_modalias() and create_of_modalias()
        ACPI: acpi_pad: Rename ACPI device from device to adev
        ACPI: acpi_pad: Use dev groups for sysfs
        ACPI: acpi_pad: Replace acpi_driver with platform_driver
        ACPI: APEI: Use ERST timeout for slow devices
        ACPI: scan: Rename acpi_scan_device_not_present() to be about enumeration
        PNP: replace deprecated strncpy() with memcpy()
        PNP: ACPI: replace deprecated strncpy() with strscpy()
        perf: qcom: use acpi_device_uid() for fetching _UID
        ACPI: sysfs: use acpi_device_uid() for fetching _UID
        ACPI: scan: Use the acpi_device_is_present() helper in more places
        ACPI: AC: Rename ACPI device from device to adev
        ...
      d4b671d4
    • Linus Torvalds's avatar
      Merge tag 'thermal-6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 4ac4677f
      Linus Torvalds authored
      Pull thermal control updates from Rafael Wysocki:
       "These further rework the ACPI thermal driver, after the changes made
        to it in the previous cycle, to make it easier to grasp, get rid of
        redundant pieces of internal data structures and eliminate its
        reliance on a specific ordering of trip point objects in the thermal
        core, make thermal core adjustments needed for the ACPI thermal driver
        rework, modify the thermal governor interface so as to use trip
        pointers for representing trip points in it, switch over multiple
        thermal drivers to using void platform driver remove callbacks, add
        support for 2 hardware features to the Intel int340x thermal driver,
        add support for new hardware on ARM platforms, update documentation,
        fix problems, clean up code and update the MAINTAINERS record for
        thermal control.
      
        Specifics:
      
         - Untangle the initialization and updates of passive and active trip
           points in the ACPI thermal driver (Rafael Wysocki)
      
         - Reduce code duplication related to the initialization and updates
           of trip points in the ACPI thermal driver (Rafael Wysocki)
      
         - Use trip pointers for cooling device binding in the ACPI thermal
           driver (Rafael Wysocki)
      
         - Simplify critical and hot trips representation in the ACPI thermal
           driver (Rafael Wysocki)
      
         - Use trip pointers in thermal governors and in the related part of
           the thermal core (Rafael Wysocki)
      
         - Drop the trips_disabled bitmask that has become redundant from the
           thermal core (Rafael Wysocki)
      
         - Avoid updating trip points when the thermal zone temperature falls
           into a trip point's hysteresis range (ícolas F. R. A. Prado)
      
         - Add power floor notifications support to the int340x thermal
           control driver (Srinivas Pandruvada)
      
         - Rework updating trip points in the int340x thermal driver so that
           it does not access thermal zone internals directly (Rafael
           Wysocki)
      
         - Use param_get_byte() instead of param_get_int() as the max_idle
           module parameter .get() callback in the Intel powerclamp thermal
           driver to avoid possible out-of-bounds access (David Arcari)
      
         - Add workload hints support to the int340x thermal driver (Srinivas
           Pandruvada)
      
         - Add support for Mediatek LVTS MT8192 along with suspend/resume
           routines (Balsam Chihi)
      
         - Fix probe for THERMAL_V2 in the Mediatek LVTS driver (Markus
           Schneider-Pargmann)
      
         - Remove duplicate error message from the max76620 driver when
           thermal_of_zone_register() fails (Thierry Reding)
      
         - Add i.MX7D compatible bindings to fix a warning from dtbs_check for
           the imx6ul platform (Alexander Stein)
      
         - Add sa8775p compatible to the QCom tsens driver (Priyansh Jain)
      
         - Fix error check in lvts_debugfs_init() to be against PTR_ERR() in
           the LVTS Mediatek driver (Minjie Du)
      
         - Remove unused variable in thermal/tools (Kuan-Wei Chiu)
      
         - Document the imx8dl thermal sensor (Fabio Estevam)
      
         - Add variable names in callback prototypes to prevent warning from
           checkpatch.pl in the imx8mm driver (Bragatheswaran Manickavel)
      
         - Add missing unevaluatedProperties on child node schemas for
           tegra124 (Rob Herring)
      
         - Add mt7988 support to the Mediatek LVTS driver (Frank Wunderlich)"
      
      * tag 'thermal-6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (111 commits)
        thermal: ACPI: Include the right header file
        thermal: core: Don't update trip points inside the hysteresis range
        thermal: core: Pass trip pointer to governor throttle callback
        thermal: gov_step_wise: Fold update_passive_instance() into its caller
        thermal: gov_power_allocator: Use trip pointers instead of trip indices
        thermal: gov_fair_share: Rearrange get_trip_level()
        thermal: trip: Define for_each_trip() macro
        thermal: trip: Simplify computing trip indices
        thermal/qcom/tsens: Drop ops_v0_1
        thermal/drivers/mediatek/lvts_thermal: Update calibration data documentation
        thermal/drivers/mediatek/lvts_thermal: Add mt8192 support
        thermal/drivers/mediatek/lvts_thermal: Add suspend and resume
        dt-bindings: thermal: mediatek: Add LVTS thermal controller definition for mt8192
        thermal/drivers/mediatek: Fix probe for THERMAL_V2
        thermal/drivers/max77620: Remove duplicate error message
        dt-bindings: timer: add imx7d compatible
        dt-bindings: net: microchip: Allow nvmem-cell usage
        dt-bindings: imx-thermal: Add #thermal-sensor-cells property
        dt-bindings: thermal: tsens: Add sa8775p compatible
        thermal/drivers/mediatek/lvts_thermal: Fix error check in lvts_debugfs_init()
        ...
      4ac4677f
  2. 31 Oct, 2023 14 commits
    • Mikulas Patocka's avatar
      dm crypt: account large pages in cc->n_allocated_pages · 9793c269
      Mikulas Patocka authored
      The commit 5054e778 ("dm crypt: allocate compound pages if
      possible") changed dm-crypt to use compound pages to improve
      performance. Unfortunately, there was an oversight: the allocation of
      compound pages was not accounted at all. Normal pages are accounted in
      a percpu counter cc->n_allocated_pages and dm-crypt is limited to
      allocate at most 2% of memory. Because compound pages were not
      accounted at all, dm-crypt could allocate memory over the 2% limit.
      
      Fix this by adding the accounting of compound pages, so that memory
      consumption of dm-crypt is properly limited.
      Signed-off-by: default avatarMikulas Patocka <mpatocka@redhat.com>
      Fixes: 5054e778 ("dm crypt: allocate compound pages if possible")
      Cc: stable@vger.kernel.org	# v6.5+
      Signed-off-by: default avatarMike Snitzer <snitzer@kernel.org>
      9793c269
    • Linus Torvalds's avatar
      Merge tag 'net-next-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next · 89ed67ef
      Linus Torvalds authored
      Pull networking updates from Jakub Kicinski:
       "Core & protocols:
      
         - Support usec resolution of TCP timestamps, enabled selectively by a
           route attribute.
      
         - Defer regular TCP ACK while processing socket backlog, try to send
           a cumulative ACK at the end. Increase single TCP flow performance
           on a 200Gbit NIC by 20% (100Gbit -> 120Gbit).
      
         - The Fair Queuing (FQ) packet scheduler:
             - add built-in 3 band prio / WRR scheduling
             - support bypass if the qdisc is mostly idle (5% speed up for TCP RR)
             - improve inactive flow reporting
             - optimize the layout of structures for better cache locality
      
         - Support TCP Authentication Option (RFC 5925, TCP-AO), a more modern
           replacement for the old MD5 option.
      
         - Add more retransmission timeout (RTO) related statistics to
           TCP_INFO.
      
         - Support sending fragmented skbs over vsock sockets.
      
         - Make sure we send SIGPIPE for vsock sockets if socket was
           shutdown().
      
         - Add sysctl for ignoring lower limit on lifetime in Router
           Advertisement PIO, based on an in-progress IETF draft.
      
         - Add sysctl to control activation of TCP ping-pong mode.
      
         - Add sysctl to make connection timeout in MPTCP configurable.
      
         - Support rcvlowat and notsent_lowat on MPTCP sockets, to help apps
           limit the number of wakeups.
      
         - Support netlink GET for MDB (multicast forwarding), allowing user
           space to request a single MDB entry instead of dumping the entire
           table.
      
         - Support selective FDB flushing in the VXLAN tunnel driver.
      
         - Allow limiting learned FDB entries in bridges, prevent OOM attacks.
      
         - Allow controlling via configfs netconsole targets which were
           created via the kernel cmdline at boot, rather than via configfs at
           runtime.
      
         - Support multiple PTP timestamp event queue readers with different
           filters.
      
         - MCTP over I3C.
      
        BPF:
      
         - Add new veth-like netdevice where BPF program defines the logic of
           the xmit routine. It can operate in L3 and L2 mode.
      
         - Support exceptions - allow asserting conditions which should never
           be true but are hard for the verifier to infer. With some extra
           flexibility around handling of the exit / failure:
      
                https://lwn.net/Articles/938435/
      
         - Add support for local per-cpu kptr, allow allocating and storing
           per-cpu objects in maps. Access to those objects operates on the
           value for the current CPU.
      
           This allows to deprecate local one-off implementations of per-CPU
           storage like BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE maps.
      
         - Extend cgroup BPF sockaddr hooks for UNIX sockets. The use case is
           for systemd to re-implement the LogNamespace feature which allows
           running multiple instances of systemd-journald to process the logs
           of different services.
      
         - Enable open-coded task_vma iteration, after maple tree conversion
           made it hard to directly walk VMAs in tracing programs.
      
         - Add open-coded task, css_task and css iterator support. One of the
           use cases is customizable OOM victim selection via BPF.
      
         - Allow source address selection with bpf_*_fib_lookup().
      
         - Add ability to pin BPF timer to the current CPU.
      
         - Prevent creation of infinite loops by combining tail calls and
           fentry/fexit programs.
      
         - Add missed stats for kprobes to retrieve the number of missed
           kprobe executions and subsequent executions of BPF programs.
      
         - Inherit system settings for CPU security mitigations.
      
         - Add BPF v4 CPU instruction support for arm32 and s390x.
      
        Changes to common code:
      
         - overflow: add DEFINE_FLEX() for on-stack definition of structs with
           flexible array members.
      
         - Process doc update with more guidance for reviewers.
      
        Driver API:
      
         - Simplify locking in WiFi (cfg80211 and mac80211 layers), use wiphy
           mutex in most places and remove a lot of smaller locks.
      
         - Create a common DPLL configuration API. Allow configuring and
           querying state of PLL circuits used for clock syntonization, in
           network time distribution.
      
         - Unify fragmented and full page allocation APIs in page pool code.
           Let drivers be ignorant of PAGE_SIZE.
      
         - Rework PHY state machine to avoid races with calls to phy_stop().
      
         - Notify DSA drivers of MAC address changes on user ports, improve
           correctness of offloads which depend on matching port MAC
           addresses.
      
         - Allow antenna control on injected WiFi frames.
      
         - Reduce the number of variants of napi_schedule().
      
         - Simplify error handling when composing devlink health messages.
      
        Misc:
      
         - A lot of KCSAN data race "fixes", from Eric.
      
         - A lot of __counted_by() annotations, from Kees.
      
         - A lot of strncpy -> strscpy and printf format fixes.
      
         - Replace master/slave terminology with conduit/user in DSA drivers.
      
         - Handful of KUnit tests for netdev and WiFi core.
      
        Removed:
      
         - AppleTalk COPS.
      
         - AppleTalk ipddp.
      
         - TI AR7 CPMAC Ethernet driver.
      
        Drivers:
      
         - Ethernet high-speed NICs:
            - Intel (100G, ice, idpf):
               - add a driver for the Intel E2000 IPUs
               - make CRC/FCS stripping configurable
               - cross-timestamping for E823 devices
               - basic support for E830 devices
               - use aux-bus for managing client drivers
               - i40e: report firmware versions via devlink
            - nVidia/Mellanox:
               - support 4-port NICs
               - increase max number of channels to 256
               - optimize / parallelize SF creation flow
            - Broadcom (bnxt):
               - enhance NIC temperature reporting
               - support PAM4 speeds and lane configuration
            - Marvell OcteonTX2:
               - PTP pulse-per-second output support
               - enable hardware timestamping for VFs
            - Solarflare/AMD:
               - conntrack NAT offload and offload for tunnels
            - Wangxun (ngbe/txgbe):
               - expose HW statistics
            - Pensando/AMD:
               - support PCI level reset
               - narrow down the condition under which skbs are linearized
            - Netronome/Corigine (nfp):
               - support CHACHA20-POLY1305 crypto in IPsec offload
      
         - Ethernet NICs embedded, slower, virtual:
            - Synopsys (stmmac):
               - add Loongson-1 SoC support
               - enable use of HW queues with no offload capabilities
               - enable PPS input support on all 5 channels
               - increase TX coalesce timer to 5ms
            - RealTek USB (r8152): improve efficiency of Rx by using GRO frags
            - xen: support SW packet timestamping
            - add drivers for implementations based on TI's PRUSS (AM64x EVM)
      
         - nVidia/Mellanox Ethernet datacenter switches:
            - avoid poor HW resource use on Spectrum-4 by better block
              selection for IPv6 multicast forwarding and ordering of blocks
              in ACL region
      
         - Ethernet embedded switches:
            - Microchip:
               - support configuring the drive strength for EMI compliance
               - ksz9477: partial ACL support
               - ksz9477: HSR offload
               - ksz9477: Wake on LAN
            - Realtek:
               - rtl8366rb: respect device tree config of the CPU port
      
         - Ethernet PHYs:
            - support Broadcom BCM5221 PHYs
            - TI dp83867: support hardware LED blinking
      
         - CAN:
            - add support for Linux-PHY based CAN transceivers
            - at91_can: clean up and use rx-offload helpers
      
         - WiFi:
            - MediaTek (mt76):
               - new sub-driver for mt7925 USB/PCIe devices
               - HW wireless <> Ethernet bridging in MT7988 chips
               - mt7603/mt7628 stability improvements
            - Qualcomm (ath12k):
               - WCN7850:
                  - enable 320 MHz channels in 6 GHz band
                  - hardware rfkill support
                  - enable IEEE80211_HW_SINGLE_SCAN_ON_ALL_BANDS to
                    make scan faster
                  - read board data variant name from SMBIOS
              - QCN9274: mesh support
            - RealTek (rtw89):
               - TDMA-based multi-channel concurrency (MCC)
            - Silicon Labs (wfx):
               - Remain-On-Channel (ROC) support
      
         - Bluetooth:
            - ISO: many improvements for broadcast support
            - mark BCM4378/BCM4387 as BROKEN_LE_CODED
            - add support for QCA2066
            - btmtksdio: enable Bluetooth wakeup from suspend"
      
      * tag 'net-next-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (1816 commits)
        net: pcs: xpcs: Add 2500BASE-X case in get state for XPCS drivers
        net: bpf: Use sockopt_lock_sock() in ip_sock_set_tos()
        net: mana: Use xdp_set_features_flag instead of direct assignment
        vxlan: Cleanup IFLA_VXLAN_PORT_RANGE entry in vxlan_get_size()
        iavf: delete the iavf client interface
        iavf: add a common function for undoing the interrupt scheme
        iavf: use unregister_netdev
        iavf: rely on netdev's own registered state
        iavf: fix the waiting time for initial reset
        iavf: in iavf_down, don't queue watchdog_task if comms failed
        iavf: simplify mutex_trylock+sleep loops
        iavf: fix comments about old bit locks
        doc/netlink: Update schema to support cmd-cnt-name and cmd-max-name
        tools: ynl: introduce option to process unknown attributes or types
        ipvlan: properly track tx_errors
        netdevsim: Block until all devices are released
        nfp: using napi_build_skb() to replace build_skb()
        net: dsa: microchip: ksz9477: Fix spelling mistake "Enery" -> "Energy"
        net: dsa: microchip: Ensure Stable PME Pin State for Wake-on-LAN
        net: dsa: microchip: Refactor switch shutdown routine for WoL preparation
        ...
      89ed67ef
    • Eric Biggers's avatar
      dm integrity: use crypto_shash_digest() in sb_mac() · 070bb43a
      Eric Biggers authored
      Simplify sb_mac() by using crypto_shash_digest() instead of an
      init+update+final sequence.  This should also improve performance.
      Signed-off-by: default avatarEric Biggers <ebiggers@google.com>
      Signed-off-by: default avatarMike Snitzer <snitzer@kernel.org>
      070bb43a
    • Eric Biggers's avatar
      dm crypt: use crypto_shash_digest() in crypt_iv_tcw_whitening() · 6d0ee3b6
      Eric Biggers authored
      Simplify crypt_iv_tcw_whitening() by using crypto_shash_digest() instead
      of an init+update+final sequence.  This should also improve performance.
      Signed-off-by: default avatarEric Biggers <ebiggers@google.com>
      Signed-off-by: default avatarMike Snitzer <snitzer@kernel.org>
      6d0ee3b6
    • Damien Le Moal's avatar
      dm error: Add support for zoned block devices · a9511043
      Damien Le Moal authored
      dm-error is used in several test cases in the xfstests test suite to
      check the handling of IO errors in file systems. However, with several
      file systems getting native support for zoned block devices (e.g.
      btrfs and f2fs), dm-error's lack of zoned block device support creates
      problems as the file system attempts executing zone commands (e.g. a
      zone append operation) against a dm-error non-zoned block device,
      which causes various issues in the block layer (e.g. WARN_ON
      triggers).
      
      This commit adds supports for zoned block devices to dm-error, allowing
      a DM device table containing an error target to be exposed as a zoned
      block device (if all targets have a compatible zoned model support and
      mapping). This is done as follows:
      1) Allow passing 2 arguments to an error target, similar to dm-linear:
         a backing device and a start sector. These arguments are optional and
         dm-error retains its characteristics if the arguments are not
         specified.
      2) Implement the iterate_devices method so that dm-core can normally
         check the zone support and restrictions (e.g. zone alignment of the
         targets). When the backing device arguments are not specified, the
         iterate_devices method never calls the fn() argument.
      When no backing device is specified, as before, we assume that the DM
      device is not zoned. When the backing device arguments are specified,
      the zoned model of the DM device will depend on the backing device
      type:
       - If the backing device is zoned and its model and mapping is
         compatible with other targets of the device, the resulting device
         will be zoned, with the dm-error mapped portion always returning
         errors (similar to the default non-zoned case).
       - If the backing device is not zoned, then the DM device will not be
         either.
      
      This zone support for dm-error requires the definition of a functional
      report_zones operation so that dm_revalidate_zones() can operate
      correctly and resources for emulating zone append operations
      initialized. This is necessary for cases where dm-error is used to
      partially map a device and have an overall correct handling of zone
      append. This means that dm-error does not fail report zones operations.
      
      Two changes that are not obvious are included to avoid issues:
      1) dm_table_supports_zoned_model() is changed to directly check if
         the backing device of a wildcard target (= dm-error target) is
         zoned. Otherwise, we wouldn't be able to catch the invalid setup of
         dm-error without a backing device (non zoned case) being combined
         with zoned targets.
      2) dm_table_supports_dax() is modified to return false if the wildcard
         target is found. Otherwise, when dm-error is set without a backing
         device, we end up with a NULL pointer dereference in
         set_dax_synchronous (dax_dev is NULL). This is consistent with the
         current behavior because dm_table_supports_dax() always returned
         false for targets that do not define the iterate_devices method.
      Signed-off-by: default avatarDamien Le Moal <dlemoal@kernel.org>
      Tested-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarMike Snitzer <snitzer@kernel.org>
      a9511043
    • Christian Loehle's avatar
      dm delay: for short delays, use kthread instead of timers and wq · 70bbeb29
      Christian Loehle authored
      DM delay's current design of using timers and wq to realize the delays
      is insufficient for delays below ~50ms.
      
      This commit enhances the design to use a kthread to flush the expired
      delays, trading some CPU time (in some cases) for better delay
      accuracy and delays closer to what the user requested for smaller
      delays. The new design is chosen as long as all the delays are below
      50ms.
      
      Since bios can't be completed in interrupt context using a kthread
      is probably the most reasonable way to approach this.
      
      Testing with
      echo "0 2097152 zero" | dmsetup create dm-zeros
      for i in $(seq 0 20);
      do
        echo "0 2097152 delay /dev/mapper/dm-zeros 0 $i" | dmsetup create dm-delay-${i}ms;
      done
      
      Some performance numbers for comparison, on beaglebone black (single
      core) CONFIG_HZ_1000=y:
      
      fio --name=1msread --rw=randread --bs=4k --runtime=60 --time_based \
          --filename=/dev/mapper/dm-delay-1ms
      Theoretical maximum: 1000 IOPS
      Previous: 250 IOPS
      Kthread: 500 IOPS
      
      fio --name=10msread --rw=randread --bs=4k --runtime=60 --time_based \
          --filename=/dev/mapper/dm-delay-10ms
      Theoretical maximum: 100 IOPS
      Previous: 45 IOPS
      Kthread: 50 IOPS
      
      fio --name=1mswrite --rw=randwrite --direct=1 --bs=4k --runtime=60 \
          --time_based --filename=/dev/mapper/dm-delay-1ms
      Theoretical maximum: 1000 IOPS
      Previous: 498 IOPS
      Kthread: 1000 IOPS
      
      fio --name=10mswrite --rw=randwrite --direct=1 --bs=4k --runtime=60 \
          --time_based --filename=/dev/mapper/dm-delay-10ms
      Theoretical maximum: 100 IOPS
      Previous: 90 IOPS
      Kthread: 100 IOPS
      
      (This one is just to prove the new design isn't impacting throughput,
      not really about delays):
      fio --name=10mswriteasync --rw=randwrite --direct=1 --bs=4k \
          --runtime=60 --time_based --filename=/dev/mapper/dm-delay-10ms \
          --numjobs=32 --iodepth=64 --ioengine=libaio --group_reporting
      Previous: 13.3k IOPS
      Kthread: 13.3k IOPS
      Signed-off-by: default avatarChristian Loehle <christian.loehle@arm.com>
      [Harshit: kthread_create error handling fix in delay_ctr]
      Signed-off-by: default avatarHarshit Mogalapalli <harshit.m.mogalapalli@oracle.com>
      Signed-off-by: default avatarMike Snitzer <snitzer@kernel.org>
      70bbeb29
    • Linus Torvalds's avatar
      Merge tag 'cgroup-for-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 5a6a09e9
      Linus Torvalds authored
      Pull cgroup updates from Tejun Heo:
      
       - cpuset now supports remote partitions where CPUs can be reserved for
         exclusive use down the tree without requiring all the intermediate
         nodes to be partitions. This makes it easier to use partitions
         without modifying existing cgroup hierarchy.
      
       - cpuset partition configuration behavior improvement
      
       - cgroup_favordynmods= boot param added to allow setting the flag on
         boot on cgroup1
      
       - Misc code and doc updates
      
      * tag 'cgroup-for-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        docs/cgroup: Add the list of threaded controllers to cgroup-v2.rst
        cgroup: use legacy_name for cgroup v1 disable info
        cgroup/cpuset: Cleanup signedness issue in cpu_exclusive_check()
        cgroup/cpuset: Enable invalid to valid local partition transition
        cgroup: add cgroup_favordynmods= command-line option
        cgroup/cpuset: Extend test_cpuset_prs.sh to test remote partition
        cgroup/cpuset: Documentation update for partition
        cgroup/cpuset: Check partition conflict with housekeeping setup
        cgroup/cpuset: Introduce remote partition
        cgroup/cpuset: Add cpuset.cpus.exclusive for v2
        cgroup/cpuset: Add cpuset.cpus.exclusive.effective for v2
        cgroup/cpuset: Fix load balance state in update_partition_sd_lb()
        cgroup: Avoid extra dereference in css_populate_dir()
        cgroup: Check for ret during cgroup1_base_files cft addition
      5a6a09e9
    • Linus Torvalds's avatar
      Merge tag 'wq-for-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · 866b8870
      Linus Torvalds authored
      Pull workqueue update from Tejun Heo:
       "Just one commit to improve lockdep annotation for work_on_cpu() to
        avoid spurious warnings"
      
      * tag 'wq-for-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue: Provide one lock class key per work_on_cpu() callsite
      866b8870
    • Linus Torvalds's avatar
      Merge tag 'wq-for-6.7-rust-bindings' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · 639409a4
      Linus Torvalds authored
      Pull workqueue rust bindings from Tejun Heo:
       "Add rust bindings to allow rust code to schedule work items on
        workqueues.
      
        While the current bindings don't cover all of the workqueue API, it
        provides enough for basic usage and can be expanded as needed"
      
      * tag 'wq-for-6.7-rust-bindings' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        rust: workqueue: add examples
        rust: workqueue: add `try_spawn` helper method
        rust: workqueue: implement `WorkItemPointer` for pointer types
        rust: workqueue: add helper for defining work_struct fields
        rust: workqueue: define built-in queues
        rust: workqueue: add low-level workqueue bindings
        rust: sync: add `Arc::{from_raw, into_raw}`
      639409a4
    • Linus Torvalds's avatar
      Merge tag 'rust-6.7' of https://github.com/Rust-for-Linux/linux · 455cdcb4
      Linus Torvalds authored
      Pull rust updates from Miguel Ojeda:
       "A small one compared to the previous one in terms of features. In
        terms of lines, as usual, the 'alloc' version upgrade accounts for
        most of them.
      
        Toolchain and infrastructure:
      
         - Upgrade to Rust 1.73.0
      
           This time around, due to how the kernel and Rust schedules have
           aligned, there are two upgrades in fact. They contain the fixes for
           a few issues we reported to the Rust project.
      
           In addition, a few cleanups indicated by the upgraded compiler or
           possible thanks to it. For instance, the compiler now detects
           redundant explicit links.
      
         - A couple changes to the Rust 'Makefile' so that it can be used with
           toybox tools, allowing Rust to be used in the Android kernel build.
      
        x86:
      
         - Enable IBT if enabled in C
      
        Documentation:
      
         - Add "The Rust experiment" section to the Rust index page
      
        MAINTAINERS:
      
         - Add Maintainer Entry Profile field ('P:').
      
         - Update our 'W:' field to point to the webpage we have been building
           this year"
      
      * tag 'rust-6.7' of https://github.com/Rust-for-Linux/linux:
        docs: rust: add "The Rust experiment" section
        x86: Enable IBT in Rust if enabled in C
        rust: Use grep -Ev rather than relying on GNU grep
        rust: Use awk instead of recent xargs
        rust: upgrade to Rust 1.73.0
        rust: print: use explicit link in documentation
        rust: task: remove redundant explicit link
        rust: kernel: remove `#[allow(clippy::new_ret_no_self)]`
        MAINTAINERS: add Maintainer Entry Profile field for Rust
        MAINTAINERS: update Rust webpage
        rust: upgrade to Rust 1.72.1
        rust: arc: add explicit `drop()` around `Box::from_raw()`
      455cdcb4
    • Linus Torvalds's avatar
      Merge tag 'lsm-pr-20231030' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/lsm · 2b93c2c3
      Linus Torvalds authored
      Pull LSM updates from Paul Moore:
      
       - Add new credential functions, get_cred_many() and put_cred_many() to
         save some atomic_t operations for a few operations.
      
         While not strictly LSM related, this patchset had been rotting on the
         mailing lists for some time and since the LSMs do care a lot about
         credentials I thought it reasonable to give this patch a home.
      
       - Five patches to constify different LSM hook parameters.
      
       - Fix a spelling mistake.
      
      * tag 'lsm-pr-20231030' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/lsm:
        lsm: fix a spelling mistake
        cred: add get_cred_many and put_cred_many
        lsm: constify 'sb' parameter in security_sb_kern_mount()
        lsm: constify 'bprm' parameter in security_bprm_committed_creds()
        lsm: constify 'bprm' parameter in security_bprm_committing_creds()
        lsm: constify 'file' parameter in security_bprm_creds_from_file()
        lsm: constify 'sb' parameter in security_quotactl()
      2b93c2c3
    • Linus Torvalds's avatar
      Merge tag 'selinux-pr-20231030' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux · f5fc9e4a
      Linus Torvalds authored
      Pull selinux updates from Paul Moore:
      
       - improve the SELinux debugging configuration controls in Kconfig
      
       - print additional information about the hash table chain lengths when
         when printing SELinux debugging information
      
       - simplify the SELinux access vector hash table calcaulations
      
       - use a better hashing function for the SELinux role tansition hash
         table
      
       - improve SELinux load policy time through the use of optimized
         functions for calculating the number of bits set in a field
      
       - addition of a __counted_by annotation
      
       - simplify the avtab_inert_node() function through a simplified
         prototype
      
      * tag 'selinux-pr-20231030' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux:
        selinux: simplify avtab_insert_node() prototype
        selinux: hweight optimization in avtab_read_item
        selinux: improve role transition hashing
        selinux: simplify avtab slot calculation
        selinux: improve debug configuration
        selinux: print sum of chain lengths^2 for hash tables
        selinux: Annotate struct sidtab_str_cache with __counted_by
      f5fc9e4a
    • Linus Torvalds's avatar
      Merge tag 'audit-pr-20231030' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit · b9886c97
      Linus Torvalds authored
      Pull audit update from Paul Moore:
       "Only two audit patches for v6.7, both fairly small with a combined 11
        lines of changes.
      
        The first patch is a simple __counted_by annontation, and the second
        fixes a a problem where audit could deadlock on task_lock() when an
        exe filter is configured. More information is available in the commit
        description and the patch is tagged for stable"
      
      * tag 'audit-pr-20231030' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit:
        audit: don't take task_lock() in audit_exe_compare() code path
        audit: Annotate struct audit_chunk with __counted_by
      b9886c97
    • Linus Torvalds's avatar
      Merge tag 'tpmdd-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd · b9ff7745
      Linus Torvalds authored
      Pull tpm updates from Jarkko Sakkinen:
       "This is a small sized pull request. One commit I would like to
        pinpoint is my fix for init_trusted() rollback, as for actual patch I
        did not receive any feedback"
      
      * tag 'tpmdd-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd:
        keys: Remove unused extern declarations
        integrity: powerpc: Do not select CA_MACHINE_KEYRING
        KEYS: trusted: tee: Refactor register SHM usage
        KEYS: trusted: Rollback init_trusted() consistently
      b9ff7745