1. 18 Jul, 2024 16 commits
    • Linus Torvalds's avatar
      Merge tag 'bootconfig-v6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace · db2451e7
      Linus Torvalds authored
      Pull bootconfig update from Masami Hiramatsu:
      
       - Remove duplicate included header file linux/bootconfig.h from
         lib/bootconfig.c. This is a cleanup, no behavior change.
      
      * tag 'bootconfig-v6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace:
        bootconfig: Remove duplicate included header file linux/bootconfig.h
      db2451e7
    • Linus Torvalds's avatar
      Merge tag 'probes-v6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace · 91bd008d
      Linus Torvalds authored
      Pull probes updates from Masami Hiramatsu:
       "Uprobes:
      
         - x86/shstk: Make return uprobe work with shadow stack
      
         - Add uretprobe syscall which speeds up the uretprobe 10-30% faster.
           This syscall is automatically used from user-space trampolines
           which are generated by the uretprobe. If this syscall is used by
           normal user program, it will cause SIGILL. Note that this is
           currently only implemented on x86_64.
      
           (This also has two fixes for adjusting the syscall number to avoid
           conflict with new *attrat syscalls.)
      
         - uprobes/perf: fix user stack traces in the presence of pending
           uretprobe. This corrects the uretprobe's trampoline address in the
           stacktrace with correct return address
      
         - selftests/x86: Add a return uprobe with shadow stack test
      
         - selftests/bpf: Add uretprobe syscall related tests.
            - test case for register integrity check
            - test case with register changing case
            - test case for uretprobe syscall without uprobes (expected to fail)
            - test case for uretprobe with shadow stack
      
         - selftests/bpf: add test validating uprobe/uretprobe stack traces
      
         - MAINTAINERS: Add uprobes entry. This does not specify the tree but
           to clarify who maintains and reviews the uprobes
      
        Kprobes:
      
         - tracing/kprobes: Test case cleanups.
      
           Replace redundant WARN_ON_ONCE() + pr_warn() with WARN_ONCE() and
           remove unnecessary code from selftest
      
         - tracing/kprobes: Add symbol counting check when module loads.
      
           This checks the uniqueness of the probed symbol on modules. The
           same check has already done for kernel symbols
      
           (This also has a fix for build error with CONFIG_MODULES=n)
      
        Cleanup:
      
         - Add MODULE_DESCRIPTION() macros for fprobe and kprobe examples"
      
      * tag 'probes-v6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace:
        MAINTAINERS: Add uprobes entry
        selftests/bpf: Change uretprobe syscall number in uprobe_syscall test
        uprobe: Change uretprobe syscall scope and number
        tracing/kprobes: Fix build error when find_module() is not available
        tracing/kprobes: Add symbol counting check when module loads
        selftests/bpf: add test validating uprobe/uretprobe stack traces
        perf,uprobes: fix user stack traces in the presence of pending uretprobes
        tracing/kprobe: Remove cleanup code unrelated to selftest
        tracing/kprobe: Integrate test warnings into WARN_ONCE
        selftests/bpf: Add uretprobe shadow stack test
        selftests/bpf: Add uretprobe syscall call from user space test
        selftests/bpf: Add uretprobe syscall test for regs changes
        selftests/bpf: Add uretprobe syscall test for regs integrity
        selftests/x86: Add return uprobe shadow stack test
        uprobe: Add uretprobe syscall to speed up return probe
        uprobe: Wire up uretprobe system call
        x86/shstk: Make return uprobe work with shadow stack
        samples: kprobes: add missing MODULE_DESCRIPTION() macros
        fprobe: add missing MODULE_DESCRIPTION() macro
      91bd008d
    • Linus Torvalds's avatar
      Merge tag 'fbdev-for-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/linux-fbdev · cb273eb7
      Linus Torvalds authored
      Pull fbdev updates from Helge Deller:
      
       - Detect VGA compatibility from VESA attributes (Thomas Zimmermann)
      
       - Make I2C terminology more inclusive in smscufx and viafb (Easwar
         Hariharan)
      
       - Add lots of missing MODULE_DESCRIPTION() macros (Jeff Johnson)
      
       - Logo code cleanups (Geert Uytterhoeven)
      
       - Minor fixes by Chen Ni, Kuninori Morimoto, Uwe Kleine-König and
         Christophe Jaillett
      
      * tag 'fbdev-for-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/linux-fbdev: (21 commits)
        fbdev: viafb: Make I2C terminology more inclusive
        fbdev: smscufx: Make I2C terminology more inclusive
        fbdev: omap2: Return clk_prepare_enable to transfer the error
        fbdev: mmp: Constify struct mmp_overlay_ops
        fbdev: Drop explicit initialization of struct i2c_device_id::driver_data to 0
        video: agp: add remaining missing MODULE_DESCRIPTION() macros
        video: console: add missing MODULE_DESCRIPTION() macros
        fbdev: amifb: add missing MODULE_DESCRIPTION() macro
        fbdev: c2p_planar: add missing MODULE_DESCRIPTION() macro
        fbdev: vesafb: Detect VGA compatibility from screen info's VESA attributes
        fbdev: omapfb: use of_graph_get_remote_port()
        fbdev: omapdss: use for_each_endpoint_of_node()
        fbdev: offb: add missing MODULE_DESCRIPTION() macro
        fbdev: vfb: add missing MODULE_DESCRIPTION() macro
        fbdev: macmodes: add missing MODULE_DESCRIPTION() macro
        fbdev: goldfishfb: add missing MODULE_DESCRIPTION() macro
        fbdev: kyro: add missing MODULE_DESCRIPTION() macro
        fbdev: viafb: add missing MODULE_DESCRIPTION() macro
        fbdev: matroxfb: add missing MODULE_DESCRIPTION() macros
        video/logo: Remove linux_serial_image comments
        ...
      cb273eb7
    • Manivannan Sadhasivam's avatar
      PCI: Check for the existence of 'dev.of_node' before calling of_platform_populate() · 24777bac
      Manivannan Sadhasivam authored
      Commit 50b040ef ("PCI/pwrctl: only call of_platform_populate() if
      CONFIG_OF is enabled") added the CONFIG_OF guard for the
      of_platform_populate() API.  But it missed the fact that the CONFIG_OF
      platforms can also run on ACPI without devicetree (so dev.of_node will
      be NULL).  In those cases, of_platform_populate() will fail with below
      error messages as seen on the Ampere Altra box:
      
        pci 000c:00:01.0: failed to populate child OF nodes (-22)
        pci 000c:00:02.0: failed to populate child OF nodes (-22)
      
      Fix this by checking for the existence of 'dev.of_node' before calling
      the of_platform_populate() API.  This also warrants the removal of
      CONFIG_OF check, since dev_of_node() helper will return NULL if
      CONFIG_OF is not enabled.
      
      While at it, let's also use dev_of_node() to pass device OF node pointer
      to of_platform_populate().
      
      Fixes: 50b040ef ("PCI/pwrctl: only call of_platform_populate() if CONFIG_OF is enabled")
      Reported-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Closes: https://lore.kernel.org/linux-arm-msm/CAHk-=wjcO_9dkNf-bNda6bzykb5ZXWtAYA97p7oDsXPHmMRi6g@mail.gmail.comReviewed-by: default avatarBartosz Golaszewski <bartosz.golaszewski@linaro.org>
      Signed-off-by: default avatarManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      24777bac
    • Mark Rutland's avatar
      init/Kconfig: remove CONFIG_GCC_ASM_GOTO_OUTPUT_WORKAROUND · f2f6a8e8
      Mark Rutland authored
      Several versions of GCC mis-compile asm goto with outputs. We try to
      workaround this, but our workaround is demonstrably incomplete and
      liable to result in subtle bugs, especially on arm64 where get_user()
      has recently been moved over to using asm goto with outputs.
      
      From discussion(s) with Linus at:
      
        https://lore.kernel.org/linux-arm-kernel/Zpfv2tnlQ-gOLGac@J2N7QTR9R3.cambridge.arm.com/
        https://lore.kernel.org/linux-arm-kernel/ZpfxLrJAOF2YNqCk@J2N7QTR9R3.cambridge.arm.com/
      
      ... it sounds like the best thing to do for now is to remove the
      workaround and make CC_HAS_ASM_GOTO_OUTPUT depend on working compiler
      versions.
      
      The issue was originally reported to GCC by Sean Christopherson:
      
        https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113921
      
      ... and Jakub Jelinek fixed this for GCC 14, with the fix backported to
      13.3.0, 12.4.0, and 11.5.0.
      
      In the kernel, we tried to workaround broken compilers in commits:
      
        4356e9f8 ("work around gcc bugs with 'asm goto' with outputs")
        68fb3ca0 ("update workarounds for gcc "asm goto" issue")
      
      ... but the workaround of adding an empty asm("") after the asm volatile
      goto(...) demonstrably does not always avoid the problem, as can be seen
      in the following test case:
      
      | #define asm_goto_output(x...) \
      |         do { asm volatile goto(x); asm (""); } while (0)
      |
      | #define __good_or_bad(__val, __key)                                     \
      | do {                                                                    \
      |         __label__ __failed;                                             \
      |         unsigned long __tmp;                                            \
      |         asm_goto_output(                                                \
      |         "       cbnz    %[key], %l[__failed]\n"                         \
      |         "       mov     %[val], #0x900d\n"                              \
      |         : [val] "=r" (__tmp)                                            \
      |         : [key] "r" (__key)                                             \
      |         :                                                               \
      |         : __failed);                                                    \
      |         (__val) = __tmp;                                                \
      |         break;                                                          \
      | __failed:                                                               \
      |         (__val) = 0xbad;                                                \
      | } while (0)
      |
      | unsigned long get_val(unsigned long key);
      | unsigned long get_val(unsigned long key)
      | {
      |         unsigned long val = 0xbad;
      |
      |         __good_or_bad(val, key);
      |
      |         return val;
      | }
      
      GCC 13.2.0 (at -O2) compiles this to:
      
      | 	cbnz    x0, .Lfailed
      | 	mov     x0, #0x900d
      | .Lfailed:
      | 	ret
      
      GCC 14.1.0 (at -O2) compiles this to:
      
      | 	cbnz    x0, .Lfailed
      | 	mov     x0, #0x900d
      | 	ret
      | .Lfailed:
      | 	mov     x0, #0xbad
      | 	ret
      
      Note that GCC 13.2.0 erroneously omits the assignment to 'val' in the
      error path (even though this does not depend on an output of the asm
      goto). GCC 14.1.0 correctly retains the assignment.
      
      This problem can be seen within the kernel with the following test case:
      
      | #include <linux/uaccess.h>
      | #include <linux/types.h>
      |
      | noinline unsigned long test_unsafe_get_user(unsigned long __user *ptr);
      | noinline unsigned long test_unsafe_get_user(unsigned long __user *ptr)
      | {
      |         unsigned long val;
      |
      |         unsafe_get_user(val, ptr, Efault);
      |         return val;
      |
      | Efault:
      |         val = 0x900d;
      |         return val;
      | }
      
      GCC 13.2.0 (arm64 defconfig) compiles this to:
      
      |         and     x0, x0, #0xff7fffffffffffff
      |         ldtr    x0, [x0]
      | .Lextable_fixup:
      |         ret
      
      GCC 13.2.0 (x86_64 defconfig + MITIGATION_RETPOLINE=n) compiles this to:
      
      |         endbr64
      |         mov    (%rdi),%rax
      | .Lextable_fixup:
      |         ret
      
      ... omitting the assignment to 'val' in the error path, and leaving
      garbage in the result register returned by the function (which happens
      to contain the faulting address in the generated code).
      
      GCC 14.1.0 (arm64 defconfig) compiles this to:
      
      |         and     x0, x0, #0xff7fffffffffffff
      |         ldtr    x0, [x0]
      |         ret
      | .Lextable_fixup:
      |         mov     x0, #0x900d                     // #36877
      |         ret
      
      GCC 14.1.0 (x86_64 defconfig + MITIGATION_RETPOLINE=n) compiles this to:
      
      |         endbr64
      |         mov    (%rdi),%rax
      |         ret
      | .Lextable_fixup:
      |         mov    $0x900d,%eax
      |         ret
      
      ... retaining the expected assignment to 'val' in the error path.
      
      We don't have a complete and reasonable workaround. While placing empty
      asm("") blocks after each goto label *might* be sufficient, we don't
      know for certain, this is tedious and error-prone, and there doesn't
      seem to be a neat way to wrap this up (which is especially painful for
      cases with multiple goto labels).
      
      Avoid this issue by disabling CONFIG_CC_HAS_ASM_GOTO_OUTPUT for
      known-broken compiler versions and removing the workaround (along with
      the CONFIG_GCC_ASM_GOTO_OUTPUT_WORKAROUND config option).
      
      For the moment I've left the default implementation of asm_goto_output()
      unchanged. This should now be redundant since any compiler with the fix
      for the clobbering issue whould also have a fix for the (earlier)
      volatile issue, but it's far less churny to leave it around, which makes
      it easier to backport this patch if necessary.
      Signed-off-by: default avatarMark Rutland <mark.rutland@arm.com>
      Cc: Alex Coplan <alex.coplan@arm.com>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Jakub Jelinek <jakub@gcc.gnu.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Sean Christopherson <seanjc@google.com>
      Cc: Szabolcs Nagy <szabolcs.nagy@arm.com>
      Cc: Will Deacon <will@kernel.org>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: linux-kernel@vger.kernel.org
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      f2f6a8e8
    • Masahiro Yamada's avatar
      kbuild: fix rebuild of generic syscall headers · 49208b67
      Masahiro Yamada authored
      Commit fbb5c060 ("kbuild: add syscall table generation to
      scripts/Makefile.asm-headers") started to generate syscall headers
      for architectures using generic syscalls.
      
      However, these headers are always rebuilt using GNU Make 4.4.1 or newer.
      
      When using GNU Make 4.4 or older, these headers are not rebuilt when the
      command to generate them is changed, despite the use of the if_changed
      macro.
      
      scripts/Makefile.asm-headers now uses FORCE, but it is not marked as
      .PHONY. To handle the command line change correctly, .*.cmd files must
      be included.
      
      Fixes: fbb5c060 ("kbuild: add syscall table generation to scripts/Makefile.asm-headers")
      Reported-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Closes: https://lore.kernel.org/lkml/CAHk-=wibB7SvXnUftBgAt+4-3vEKRpvEgBeDEH=i=j2GvDitoA@mail.gmail.com/Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      Tested-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      49208b67
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2024-07-18' of https://gitlab.freedesktop.org/drm/kernel · b3ce7a30
      Linus Torvalds authored
      Pull drm updates from Dave Airlie:
       "There's a lot of stuff in here, amd, i915 and xe have new platform
        work, lots of core rework around EDID handling, some new COMPILE_TEST
        options, maintainer changes and a lots of other stuff. Summary:
      
        core:
         - deprecate DRM data and return 0 date
         - connector: Create a set of helpers to help with HDMI support
         - Remove driver owner assignments
         - Allow more drivers to compile with COMPILE_TEST
         - Conversions to drm_edid
         - Sprinkle MODULE_DESCRIPTIONS everywhere they are missing
         - Remove drm_mm_replace_node
         - print: Add a drm prefix to warn level messages too, remove
                  ___drm_dbg, consolidate prefix handling
         - New monochrome TV mode variant
      
        ttm:
         - improve number of page faults on some platforms
         - fix test builds under PREEMPT_RT
         - more test coverage
      
        ci:
         - Require a more recent version of mesa
         - improve farm setup and test generation
      
        dma-buf:
         - warn if reserving 0 fence slots
         - internal API heap enhancements
      
        fbdev:
         - Create memory manager optimized fbdev emulation
      
        panic:
         - Allow to select fonts
         - improve drm_fb_dma_get_scanout_buffer
         - Allow to dump kmsg to the screen
      
        bridge:
         - Remove redundant checks on bridge->encoder
         - Remove drm_bridge_chain_mode_fixup
         - bridge-connector: Plumb in the new HDMI helper
         - analogix_dp: Various improvements, handle AUX transfers timeout
         - samsung-dsim: Fix timings calculation
         - tc358767: Plenty of small fixes, fix no connector attach, fix
                     clocks
         - sii902x: state validation improvements
      
        panels:
         - Switch panels from register table initialization to proper code
         - Now that the panel code tracks the panel state, remove every ad-hoc
           implementation in the panel drivers
         - More cleanup of prepare / enable state tracking in drivers
         - edp: Drop legacy panel compatibles
         - simple-bridge: Switch to devm_drm_bridge_add
         - New panels: Lincoln Tech Sol LCD185-101CT, Microtips Technology
                       13-101HIEBCAF0-C, Microtips Technology MF-103HIEB0GA0,
                       BOE nv110wum-l60, IVO t109nw41, WL-355608-A8, PrimeView
                       PM070WL4, Lincoln Technologies LCD197, Ortustech
                       COM35H3P70ULC, AUO G104STN01, K&d kd101ne3-40ti
      
        amdgpu:
         - DCN 4.0.x support
         - GC 12.0 support
         - GMC 12.0 support
         - SDMA 7.0 support
         - MES12 support
         - MMHUB 4.1 support
         - GFX12 modifier and DCC support
         - lots of IP fixes/updates
      
        amdkfd:
         - Contiguous VRAM allocations
         - GC 12.0 support
         - SDMA 7.0 support
         - SR-IOV fixes
         - KFD GFX ALU exceptions
      
        i915:
         - Battlemage Xe2 HPD display enablement
         - Panel Replay enabling
         - DP AUX-less ALPM/LOBF
         - Enable link training failure fallback for DP MST links
         - CMRR (Content Match Refresh Rate) enabling
         - Increase ADL-S/ADL-P/DG2+ max TMDS bitrate to 6 Gbps
         - Enable eDP AUX based HDR backlight
         - Support replaying GPU hangs with captured context image
         - Automate CCS Mode setting during engine resets
         - lots of refactoring
         - Support replaying GPU hangs with captured context image
         - Increase FLR timeout from 3s to 9s
         - Enable w/a 16021333562 for DG2, MTL and ARL [guc]
      
        xe:
         - update MAINATINERS
         - New uapi adding OA functionality to Xe
         - expose l3 bank mask
         - fix display detect on ADL-N
         - runtime PM Fixes
         - Fix silent backmerge issues
         - More prep for SR-IOV
         - HWmon additions
         - per client usage info
         - Rework GPU page fault handling
         - Drop EXEC_QUEUE_FLAG_BANNED
         - Add BMG PCI IDs
         - Scheduler fixes and improvements
         - Rename xe_exec_queue::compute to xe_exec_queue::lr
         - Use ttm_uncached for BO with NEEDS_UC flag
         - Rename xe perf layer as xe observation layer
         - lots of refactoring
      
        radeon:
         - Backlight workaround for iMac
         - Silence UBSAN flex array warnings
      
        msm:
         - Validate registers XML description against schema in CI
         - core/dpu: SM7150 support
         - mdp5: Add support for MSM8937
         - gpu: Add param for userspace to know if raytracing is supported
         - gpu: X185 support (aka gpu in X1 laptop chips)
         - gpu: a505 support
      
        ivpu:
         - hardware scheduler support
         - profiling support
         - improvements to the platform support layer
         - firmware handling improvements
         - clocks/power mgmt improvements
         - scheduler/logging improvements
      
        habanalabs:
         - Gradual sleep in polling memory macro
         - Reduce Gaudi2 MSI-X interrupt count to 128
         - Add Gaudi2-D revision support
         - Add timestamp to CPLD info
         - Gaudi2: Assume hard-reset by firmware upon MC SEI severe error
         - Align Gaudi2 interrupt names
         - Check for errors after preboot is ready
         - Change habanalabs maintainer and git repo path
      
        mgag200:
         - refactoring and improvements
         - Add BMC output
         - enable polling
      
        nouveau:
         - add registry command line
      
        v3d:
         - perf counters improvements
      
        zynqmp:
         - irq and debugfs improvements
      
        atmel-hlcdc:
         - Support XLCDC in sam9x7
      
        mipi-dbi:
         - Remove mipi_dbi_machine_little_endian
         - make SPI bits per word configurable
         - support RGB888
         - allow pixel formats to be specified in the DT
      
        sun4i:
         - Rework the blender setup for DE2
      
        panfrost:
         - Enable MT8188 support
      
        vc4:
         - Monochrome TV support
      
        exynos:
         - fix fallback mode regression
         - fix memory leak
         - Use drm_edid_duplicate() instead of kmemdup()
      
        etnaviv:
         - fix i.MX8MP NPU clock gating
         - workaround FE register cdc issues on some cores
         - fix DMA sync handling for cached buffers
         - fix job timeout handling
         - keep TS enabled on MMUv2 cores for improved performance
      
        mediatek:
         - Convert to platform remove callback returning void-
         - Drop chain_mode_fixup call in mode_valid()
         - Fixes the errors of MediaTek display driver found by IGT
         - Add display support for the MT8365-EVK board
         - Fix bit depth overwritten for mtk_ovl_set bit_depth()
         - Fix possible_crtcs calculation
         - Fix spurious kfree()
      
        ast:
         - refactor mode setting code
      
        stm:
         - Add LVDS support
         - DSI PHY updates"
      
      * tag 'drm-next-2024-07-18' of https://gitlab.freedesktop.org/drm/kernel: (2501 commits)
        drm/amdgpu/mes12: add missing opcode string
        drm/amdgpu/mes11: update opcode strings
        Revert "drm/amd/display: Reset freesync config before update new state"
        drm/omap: Restrict compile testing to PAGE_SIZE less than 64KB
        drm/xe: Drop trace_xe_hw_fence_free
        drm/xe/uapi: Rename xe perf layer as xe observation layer
        drm/amdgpu: remove exp hw support check for gfx12
        drm/amdgpu: timely save bad pages to eeprom after gpu ras reset is completed
        drm/amdgpu: flush all cached ras bad pages to eeprom
        drm/amdgpu: select compute ME engines dynamically
        drm/amd/display: Allow display DCC for DCN401
        drm/amdgpu: select compute ME engines dynamically
        drm/amdgpu/job: Replace DRM_INFO/ERROR logging
        drm/amdgpu: select compute ME engines dynamically
        drm/amd/pm: Ignore initial value in smu response register
        drm/amdgpu: Initialize VF partition mode
        drm/amd/amdgpu: fix SDMA IRQ client ID <-> req mapping
        MAINTAINERS: fix Xinhui's name
        MAINTAINERS: update powerplay and swsmu
        drm/qxl: Pin buffer objects for internal mappings
        ...
      b3ce7a30
    • Linus Torvalds's avatar
      Merge tag 'media/v6.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · b1bc554e
      Linus Torvalds authored
      Pull media updates from Mauro Carvalho Chehab:
      
       - New sensor drivers: gc05a2, gc08a3 and imx283
      
       - New serializer/deserializer drivers: max96714 and max96717
      
       - New JPEG encoder driver: e5010
      
       - Support for Raspberry Pi PiSP Backend (BE) ISP driver
      
       - Old documentation for av7110 driver removed, as a new version was
         added as Documentation/userspace-api/media/dvb/legacy*.rst
      
       - atompisp: Linux firmwares are now available, so drop firmware-related
         task from TODO and update firmware logic
      
       - The imx258 driver has gained several improvements
      
       - wave5 driver has gained support for HEVC decoding
      
       - em28xx gained support for MyGica UTV3
      
       - av7110 budget-patch driver removed
      
       - Lots of other cleanups, improvements and fixes
      
      * tag 'media/v6.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (301 commits)
        media: raspberrypi: Switch to remove_new
        media: uapi: pisp_be_config: Add extra config fields
        media: uapi: pisp_be_config: Re-sort pisp_be_tiles_config
        media: uapi: pisp_common: Capitalize all macros
        media: uapi: pisp_common: Add 32 bpp format test
        media: uapi: pisp_be_config: Drop BIT() from uAPI
        media: stm32: dcmipp: correct error handling in dcmipp_create_subdevs
        media: atomisp: Fix spelling mistakes in sh_css_sp.c
        media: atomisp: Fix spelling mistake in ia_css_debug.c
        media: atomisp: Fix spelling mistake in hmm_bo.c
        media: atomisp: Fix spelling mistake in ia_css_eed1_8.host.c
        media: atomisp: Fix spelling mistake in sh_css_internal.h
        media: atomisp: Fix spelling mistake "pipline" -> "pipeline"
        media: atomisp: Remove unused GPIO related defines and APIs
        media: atomisp: Replace COMPILATION_ERROR_IF() by static_assert()
        media: atomisp: Clean up unused macros from math_support.h
        media: atomisp: csi2-bridge: Add DMI quirk for OV5693 on Xiaomi Mipad2
        media: atomisp: Update TODO
        media: atomisp: Prefix firmware paths with "intel/ipu/"
        media: atomisp: Remove firmware_name module parameter
        ...
      b1bc554e
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · 0ffb8a4c
      Linus Torvalds authored
      Pull devicetree updates from Rob Herring:
       "DT Bindings:
      
         - Convert and add a bunch of IBM FSI related bindings
      
         - Add a new schema listing legacy compatibles which will (probably)
           never be documented. This will silence various checks warning about
           them.
      
         - Add bindings for Sierra Wireless mangOH Green SPI IoT interface,
           new Arm 2024 Cortex and Neoverse CPUs, QCom sc8180x PDC, QCom SDX75
           GPI DMA, imx8mp/imx8qxp fsl,irqsteer, and Renesas RZ/G2UL CRU and
           CSI-2 blocks
      
         - Convert Spreadtrum sprd-timer, FSL cpm_qe, FSL fsl,ls-scfg-msi, FSL
           q(b)man-*, FSL qoriq-mc, and img,pdc-wdt bindings to DT schema
      
         - Drop obsolete stericsson,abx500.txt
      
        DT core:
      
         - Update dtc to upstream version v1.7.0-93-g1df7b047fe43
      
         - Add support to run DT validation on DTs with applied overlays
      
         - Add helper for creating boolean properties in dynamic nodes and use
           that for dynamic PCI nodes
      
         - Clean-up early parsing of '#{address,size}-cells'"
      
      * tag 'devicetree-for-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (39 commits)
        dt-bindings: timer: sprd-timer: convert to YAML
        dt-bindings: incomplete-devices: document devices without bindings
        dt-bindings: trivial-devices: document the Sierra Wireless mangOH Green SPI IoT interface
        scripts/dtc: Update to upstream version v1.7.0-93-g1df7b047fe43
        dt-bindings: soc: fsl: Add fsl,ls1028a-reset for reset syscon node
        dt-bindings: soc: fsl: cpm_qe: convert to yaml format
        dt-bindings: i2c: i2c-fsi: Convert to json-schema
        dt-bindings: fsi: Document the FSI Hub Controller
        dt-bindings: fsi: Document the AST2700 FSI controller
        dt-bindings: fsi: ast2600-fsi-master: Convert to json-schema
        dt-bindings: fsi: ibm,i2cr-fsi-master: Reference common FSI controller
        dt-bindings: fsi: Document the FSI controller common properties
        dt-bindings: fsi: Document the IBM SBEFIFO engine
        dt-bindings: fsi: p9-occ: Convert to json-schema
        dt-bindings: fsi: Document the IBM SCOM engine
        dt-bindings: fsi: fsi2spi: Document SPI controller child nodes
        dt-bindings: interrupt-controller: convert fsl,ls-scfg-msi to yaml
        dt-bindings: soc: fsl: Convert q(b)man-* to yaml format
        dt-bindings: misc: fsl,qoriq-mc: convert to yaml format
        dt-bindings: drop stale Anson Huang from maintainers
        ...
      0ffb8a4c
    • Linus Torvalds's avatar
      Merge tag 'for-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/pateldipen1984/linux · 5b9ac6c2
      Linus Torvalds authored
      Pull hardware timestamp update from Dipen Patel:
      
       - Add module description in hte test to silence modpost warnings
      
      * tag 'for-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/pateldipen1984/linux:
        hte: tegra-194: add missing MODULE_DESCRIPTION() macro
      5b9ac6c2
    • Linus Torvalds's avatar
      Merge tag 'leds-next-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/leds · fea17683
      Linus Torvalds authored
      Pull LED updates from Lee Jones:
       "Core Frameworks:
         - New trigger for Input Events
         - New led_mc_set_brightness() call to adapt colour/brightness for
           mutli-colour LEDs
         - New lled_mc_trigger_event() call to call the above based on given
           trigger conditions
         - New led_get_color_name() call, a wrapper around the existing
           led_colors[] array
         - A new flag to avoid automatic renaming of LED devices
      
        New Drivers:
         - Silergy SY7802 Flash LED Controller
         - Texas Instruments LP5569 LED Controller
         - ChromeOS EC LED Controller
      
        New Device Support:
         - KTD202{6,7} support for Kinetic KTD2026/7 LEDs
      
        Fix-ups:
         - Replace ACPI/DT firmware helpers with agnostic variants
         - Make use of resource managed devm_* API calls
         - Device Tree binding adaptions/conversions/creation
         - Constify/staticise applicable data structures
         - Trivial; spelling, whitespace, coding-style adaptions
         - Drop i2c_device_id::driver_data where the value is unused
         - Utilise centrally provided helpers and macros to aid simplicity and
           avoid duplication
         - Use generic platform device properties instead of OF/ACPI specific
           ones
         - Consolidate/de-duplicate various functionality
         - Remove superfluous/duplicated/unused sections
         - Make use of the new *_scoped() guard APIs
         - Improve/simplify error handling
      
        Bug Fixes:
         - Flush pending brightness changes before activating the trigger
         - Repair incorrect device naming preventing matches
         - Prevent memory leaks by correctly free resources during error
           handling routines
         - Repair locking issue causing circular dependency splats and
           lock-ups
         - Unregister sysfs entries before deactivating triggers to prevent
           use-after issues
         - Supply a bunch of MODULE_DESCRIPTIONs to silence modpost warnings
         - Use correct return codes expected by the callers
         - Omit set_brightness() error message for a LEDs that support only HW
           triggers"
      
      * tag 'leds-next-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/leds: (65 commits)
        leds: leds-lp5569: Enable chip after chip configuration
        leds: leds-lp5569: Better handle enabling clock internal setting
        leds: leds-lp5569: Fix typo in driver name
        leds: flash: leds-qcom-flash: Test the correct variable in init
        leds: leds-lp55xx: Convert mutex lock/unlock to guard API
        leds: leds-lp5523: Convert to sysfs_emit API
        leds: leds-lp5569: Convert to sysfs_emit API
        Revert "leds: led-core: Fix refcount leak in of_led_get()"
        leds: leds-lp5569: Add support for Texas Instruments LP5569
        leds: leds-lp55xx: Drop deprecated defines
        leds: leds-lp55xx: Support ENGINE program up to 128 bytes
        leds: leds-lp55xx: Generalize sysfs master_fader
        leds: leds-lp55xx: Generalize sysfs engine_leds
        leds: leds-lp55xx: Generalize sysfs engine_load and engine_mode
        leds: leds-lp55xx: Generalize stop_engine function
        leds: leds-lp55xx: Generalize turn_off_channels function
        leds: leds-lp55xx: Generalize set_led_current function
        leds: leds-lp55xx: Generalize multicolor_brightness function
        leds: leds-lp55xx: Generalize led_brightness function
        leds: leds-lp55xx: Generalize firmware_loaded function
        ...
      fea17683
    • Linus Torvalds's avatar
      Merge tag 'backlight-next-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight · e0d97b04
      Linus Torvalds authored
      Pull backlight updates from Lee Jones:
       "New Drivers:
         - Texas Instruments LM3509 Backlight Driver
      
        Fix-ups:
         - Device Tree binding adaptions/conversions/creation
         - Drop i2c_device_id::driver_data where the value is unused
         - Make use of the new *_scoped() guard APIs
         - Decouple from fbdev by providing Backlight with its own
           BACKLIGHT_POWER_* constrains
      
        Bug Fixes:
         - Correctly assess return values (NULL vs IS_ERR())
         - Supply a bunch of MODULE_DESCRIPTIONs to silence modpost warnings"
      
      * tag 'backlight-next-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight: (23 commits)
        backlight: sky81452-backlight: Use backlight power constants
        backlight: rave-sp-backlight: Use backlight power constants
        backlight: pwm-backlight: Use backlight power constants
        backlight: pcf50633-backlight: Use backlight power constants
        backlight: pandora-backlight: Use backlight power constants
        backlight: mp3309c: Use backlight power constants
        backlight: lm3533-backlight: Use backlight power constants
        backlight: led-backlight: Use backlight power constants
        backlight: ktd253-backlight: Use backlight power constants
        backlight: kb3886-bl: Use backlight power constants
        backlight: journada_bl: Use backlight power constants
        backlight: ipaq-micro-backlight: Use backlight power constants
        backlight: gpio-backlight: Use backlight power constants
        backlight: corgi-lcd: Use backlight power constants
        backlight: ams369fb06: Use backlight power constants
        backlight: aat2870-backlight: Use blacklight power constants
        backlight: Add BACKLIGHT_POWER_ constants for power states
        backlight: lm3509_bl: Fix early returns in for_each_child_of_node()
        backlight: Drop explicit initialization of struct i2c_device_id::driver_data to 0
        backlight: Add missing MODULE_DESCRIPTION() macros
        ...
      e0d97b04
    • Linus Torvalds's avatar
      Merge tag 'mfd-next-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd · 1200af3a
      Linus Torvalds authored
      Pull MFD updates from Lee Jones:
       "New Drivers:
         - ROHM BD96801 Power Management IC
         - Cirrus Logic CS40L50 Haptic Driver with Waveform Memory
         - Marvell 88PM886 Power Management IC
      
        New Device Support:
         - Keyboard Backlight to ChromeOS Embedded Controller
         - LEDs to ChromeOS Embedded Controller
         - Charge Control to ChromeOS Embedded Controller
         - HW Monitoring Service to ChromeOS Embedded Controller
         - AUXADCs to MediaTek MT635{7,8,9} Power Management ICs
      
        New Functionality:
         - Allow Syscon consumers to supply their own Regmaps on registration
      
        Fix-ups:
         - Constify/staticise applicable data structures
         - Remove superfluous/duplicated/unused sections
         - Device Tree binding adaptions/conversions/creation
         - Trivial; spelling, whitespace, coding-style adaptions
         - Utilise centrally provided helpers and macros to aid
           simplicity/duplication
         - Drop i2c_device_id::driver_data where the value is unused
         - Replace ACPI/DT firmware helpers with agnostic variants
         - Move over to GPIOD (descriptor-based) APIs
         - Annotate a bunch of __counted_by() cases
         - Straighten out some includes
      
        Bug Fixes:
         - Ensure potentially asserted recent lines are deasserted during
           initialisation
         - Avoid "<module>.ko is added to multiple modules" warnings
         - Supply a bunch of MODULE_DESCRIPTIONs to silence modpost warnings
         - Fix Wvoid-pointer-to-enum-cast warnings"
      
      * tag 'mfd-next-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (87 commits)
        mfd: timberdale: Attach device properties to TSC2007 board info
        mfd: tmio: Move header to platform_data
        mfd: tmio: Sanitize comments
        mfd: tmio: Update include files
        mmc: tmio/sdhi: Fix includes
        mfd: tmio: Remove obsolete io accessors
        mfd: tmio: Remove obsolete platform_data
        watchdog: bd96801_wdt: Add missing include for FIELD_*()
        dt-bindings: mfd: syscon: Add APM poweroff mailbox
        dt-bindings: mfd: syscon: Split and enforce documenting MFD children
        dt-bindings: mfd: rk817: Merge support for RK809
        dt-bindings: mfd: rk817: Fixup clocks and reference dai-common
        dt-bindings: mfd: syscon: Add TI's opp table compatible
        mfd: omap-usb-tll: Use struct_size to allocate tll
        dt-bindings: mfd: Explain lack of child dependency in simple-mfd
        dt-bindings: mfd: Dual licensing for st,stpmic1 bindings
        mfd: omap-usb-tll: Annotate struct usbtll_omap with __counted_by
        mfd: tps6594-core: Remove unneeded semicolon in tps6594_check_crc_mode()
        mfd: lm3533: Move to new GPIO descriptor-based APIs
        mfd: tps65912: Use devm helper functions to simplify probe
        ...
      1200af3a
    • Linus Torvalds's avatar
      Merge tag 'for-linus-2024071601' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid · 6e504d2c
      Linus Torvalds authored
      Pull HID updates from Benjamin Tissoires:
      
       - rewrite of the HID-BPF internal implementation to use bpf struct_ops
         instead of a tracing endpoint (Benjamin Tissoires)
      
       - add two new HID-BPF hooks to be able to intercept userspace calls
         targeting a HID device and filtering them (Benjamin Tissoires)
      
       - add support for various new devices through HID-BPF filters (Benjamin
         Tissoires)
      
       - add support for the magic keyboard backlight (Orlando Chamberlain)
      
       - add the missing MODULE_DESCRIPTION() macros in HID drivers (Jeff
         Johnson)
      
       - use of kvzalloc in case memory gets too fragmented (Hailong Liu)
      
       - retrieve the device firmware node in the child HID device (Danny
         Kaehn)
      
       - some hid-uclogic improvements (José Expósito)
      
       - some more typos, trivial fixes, kernel doctext and unused functions
         cleanups
      
      * tag 'for-linus-2024071601' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid: (60 commits)
        HID: hid-steam: Fix typo in goto label
        HID: mcp2221: Remove unnecessary semicolon
        HID: Fix spelling mistakes "Kensigton" -> "Kensington"
        HID: add more missing MODULE_DESCRIPTION() macros
        HID: samples: fix the 2 struct_ops definitions
        HID: fix for amples in for-6.11/bpf
        HID: apple: Add support for magic keyboard backlight on T2 Macs
        HID: bpf: Thrustmaster TCA Yoke Boeing joystick fix
        HID: bpf: Add Huion Dial 2 bpf fixup
        HID: bpf: Add support for the XP-PEN Deco Mini 4
        HID: bpf: move the BIT() macro to hid_bpf_helpers.h
        HID: bpf: add a driver for the Huion Inspiroy 2S (H641P)
        HID: bpf: Add a HID report composition helper macros
        HID: bpf: doc fixes for hid_hw_request() hooks
        HID: bpf: doc fixes for hid_hw_request() hooks
        HID: bpf: fix gcc warning and unify __u64 into u64
        selftests/hid: ensure CKI can compile our new tests on old kernels
        selftests/hid: add an infinite loop test for hid_bpf_try_input_report
        selftests/hid: add another test for injecting an event from an event hook
        HID: bpf: allow hid_device_event hooks to inject input reports on self
        ...
      6e504d2c
    • Linus Torvalds's avatar
      Merge tag 'for-linus-6.11-1' of https://github.com/cminyard/linux-ipmi · 221fd1e1
      Linus Torvalds authored
      Pull IPMI updates from Corey Minyard:
       "Some cleanups for device changes coming, and some range checks on data
        coming from a host to a BMC"
      
      * tag 'for-linus-6.11-1' of https://github.com/cminyard/linux-ipmi:
        ipmi: Drop explicit initialization of struct i2c_device_id::driver_data to 0
        ipmi: ssif_bmc: prevent integer overflow on 32bit systems
      221fd1e1
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v6.11-1' of... · a5cb6b2b
      Linus Torvalds authored
      Merge tag 'platform-drivers-x86-v6.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86
      
      Pull x86 platform driver updates from Ilpo Järvinen:
      
       - amd/pmf: Report system state changes using existing input events
      
       - asus-wmi: Zenbook 2023 camera LED disable support and fix TUF laptop
         keyboard RGB LED sysfs interface
      
       - dell-pc: Fan modes / platform profile support
      
       - hp-wmi: Fix platform profile switching on Omen/Victus laptops
      
       - intel/ISST: Use only TPMI interface when TPMI and legacy interfaces
         are available
      
       - intel/pmc: LTR restore support to pair with LTR ignore
      
       - intel/tpmi: Performance Limit Reasons (PLR) and APIC <-> Punit CPU
         numbering mapping support
      
       - WMI: driver override support and docs improvements
      
       - lenovo-yoga-c630: Support for EC (platform/arm64)
      
       - platform/arm64: Fix build with COMPILE_TEST (broke after addition of
         C630)
      
       - tools: Intel Speed Select Turbo Ratio Limit fix
      
       - Miscellaneous cleanups / refactoring / improvements
      
      * tag 'platform-drivers-x86-v6.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86: (65 commits)
        platform/x86: asus-wmi: fix TUF laptop RGB variant
        platform/x86/intel/tpmi/plr: Fix output in plr_print_bits()
        Docs/admin-guide: Remove pmf leftover reference from the index
        platform/x86: ideapad-laptop: use cleanup.h
        platform/x86: hp-wmi: Fix implementation of the platform_profile_omen_get function
        platform: arm64: EC_LENOVO_YOGA_C630 should depend on ARCH_QCOM
        platform: arm64: EC_ACER_ASPIRE1 should depend on ARCH_QCOM
        platform/x86/amd/pmf: Remove update system state document
        platform/x86/amd/pmf: Use existing input event codes to update system states
        platform/x86: hp-wmi: Fix platform profile option switch bug on Omen and Victus laptops
        platform/x86:intel/pmc: Add support to undo ltr_ignore
        platform/x86:intel/pmc: Use the Elvis operator
        platform/x86:intel/pmc: Use DEFINE_SHOW_STORE_ATTRIBUTE macro
        platform/x86:intel/pmc: Remove unneeded min_t check
        platform/x86:intel/pmc: Add support to show ltr_ignore value
        platform/x86:intel/pmc: Move pmc assignment closer to first usage
        platform/x86:intel/pmc: Convert index variables to be unsigned
        platform/x86:intel/pmc: Simplify mutex usage with cleanup helpers
        platform/x86:intel/pmc: Use the return value of pmc_core_send_msg
        tools/power/x86/intel-speed-select: v1.20 release
        ...
      a5cb6b2b
  2. 17 Jul, 2024 20 commits
    • Dave Airlie's avatar
      Merge tag 'amd-drm-next-6.11-2024-07-12' of... · 478a5270
      Dave Airlie authored
      Merge tag 'amd-drm-next-6.11-2024-07-12' of https://gitlab.freedesktop.org/agd5f/linux into drm-next
      
      amd-drm-next-6.11-2024-07-12:
      
      amdgpu:
      - RAS fixes
      - SMU fixes
      - GC 12 updates
      - SR-IOV fixes
      - IH 7 updates
      - DCC fixes
      - GC 11.5 fixes
      - DP MST fixes
      - GFX 9.4.4 fixes
      - SMU 14 updates
      - Documentation updates
      - MAINTAINERS updates
      - PSR SU fix
      - Misc small fixes
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Alex Deucher <alexander.deucher@amd.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20240712171637.2581787-1-alexander.deucher@amd.com
      478a5270
    • Linus Torvalds's avatar
      Merge tag 'ata-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/libata/linux · e2f710f9
      Linus Torvalds authored
      Pull ata updates from Niklas Cassel:
      
       - ATA PASS-THROUGH sense data cleanups and fixes (Igor Pylypiv)
      
         Store the sense data for ATA PASS-THROUGH commands at the correct
         offset in the sense buffer when using fixed format sense data.
      
         Cleanup the logic related to generating sense data for PASS-THROUGH
         commands. Generating sense data for PASS-THROUGH commands would
         overwrite any eventual (real) sense data received from the device.
      
         Honor the D_SENSE bit when generating sense data for PASS-THROUGH
         commands. (The D_SENSE bit can be set by the user, and determines if
         the returned sense data should be in fixed format or descriptor
         format)
      
       - ata port allocation cleanups (me)
      
         Assign the ata port print_id at port allocation time, such that the
         ata_port_* print functions can be used earlier in the init call
         chain.
      
         Change the ata port port print_id to use ida_alloc(), such that
         print_ids will get reused on rmmod + modprobe, instead of being
         incremented indefinitely.
      
         Remove wrappers that only existed in order to export the internal
         libata functions which they wrapped, and instead export the libata
         functions directly.
      
       - Update SATA_MOBILE_LPM_POLICY Kconfig default to med_power_with_dipm
         (Mario Limonciello)
      
         Using this default was not always a good idea before, because it
         would break hot plug support. However, with LPM changes in recent
         kernels, a port marked as external will not enable LPM (in order to
         not break hot plug), so it is now safe to change the default value of
         this Kconfig.
      
         All major Linux distros have had SATA_MOBILE_LPM_POLICY set to
         med_power_with_dipm for quite a long time
      
       - Convert ahci-fsl-qoriq device tree binding to yaml format (Frank Li)
      
      * tag 'ata-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/libata/linux:
        dt-bindings: ata: ahci-fsl-qoriq: add fsl,ls1046a-ahci and fsl,ls1012a-ahci
        ata: ahci: Add debug print for external port
        ata,scsi: Remove wrapper ata_sas_port_alloc()
        ata: libata-core: Reuse available ata_port print_ids
        ata: libata: Assign print_id at port allocation time
        ata: libata-core: Remove local_port_no struct member
        ata: libata-sata: Remove superfluous assignment in ata_sas_port_alloc()
        ata: libata-core: Remove support for decreasing the number of ports
        ata: libata: Remove unused function declaration for ata_scsi_detect()
        ata,scsi: Remove wrappers ata_sas_tport_{add,delete}()
        ata: libata-scsi: Check ATA_QCFLAG_RTF_FILLED before using result_tf
        ata: libata-core: Set ATA_QCFLAG_RTF_FILLED in fill_result_tf()
        ata: libata-scsi: Do not pass ATA device id to ata_to_sense_error()
        ata: libata-scsi: Remove redundant sense_buffer memsets
        ata: libata-scsi: Honor the D_SENSE bit for CK_COND=1 and no error
        ata: libata-scsi: Do not overwrite valid sense data when CK_COND=1
        ata: libata-scsi: Fix offsets for the fixed format sense data
        dt-bindings: ata: ahci-fsl-qoriq: convert to yaml format
        ata: Kconfig: Update SATA_MOBILE_LPM_POLICY default to med_power_with_dipm
      e2f710f9
    • Linus Torvalds's avatar
      Merge tag 'zonefs-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/zonefs · 01f851a0
      Linus Torvalds authored
      Pull zonefs update from Damien Le Moal:
       "A single change to enable support for large folios (from Johannes)"
      
      * tag 'zonefs-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/zonefs:
        zonefs: enable support for large folios
      01f851a0
    • Linus Torvalds's avatar
      Merge tag 'fs_for_v6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 8b0f0bb2
      Linus Torvalds authored
      Pull udf, ext2, isofs fixes and cleanups from Jan Kara:
      
       - A few UDF cleanups and fixes for handling corrupted filesystems
      
       - ext2 fix for handling of corrupted filesystem
      
       - isofs module description
      
       - jbd2 module description
      
      * tag 'fs_for_v6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        ext2: Verify bitmap and itable block numbers before using them
        udf: prevent integer overflow in udf_bitmap_free_blocks()
        udf: Avoid excessive partition lengths
        udf: Drop load_block_bitmap() wrapper
        udf: Avoid using corrupted block bitmap buffer
        udf: Fix bogus checksum computation in udf_rename()
        udf: Fix lock ordering in udf_evict_inode()
        udf: Drop pointless IS_IMMUTABLE and IS_APPEND check
        isofs: add missing MODULE_DESCRIPTION()
        jbd2: add missing MODULE_DESCRIPTION()
      8b0f0bb2
    • Linus Torvalds's avatar
      Merge tag 'fsnotify_for_v6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · d6018321
      Linus Torvalds authored
      Pull fsnotify fix from Jan Kara:
       "Fix possible softlockups on directories with many dentries in fsnotify
        code"
      
      * tag 'fsnotify_for_v6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        fsnotify: clear PARENT_WATCHED flags lazily
      d6018321
    • Linus Torvalds's avatar
      Merge tag 'xfs-6.11-merge-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · bf3aa9de
      Linus Torvalds authored
      Pull xfs updates from Chandan Babu:
       "Major changes in this release are limited to enabling FITRIM on
        realtime devices and Byte-based grant head log reservation tracking.
      
        The remaining changes are limited to fixes and cleanups included in
        this pull request.
      
        Core:
      
         - Enable FITRIM on the realtime device
      
         - Introduce byte-based grant head log reservation tracking instead of
           physical log location tracking.
      
           This allows grant head to track a full 64 bit bytes space and hence
           overcome the limit of 4GB indexing that has been present until now
      
        Fixes:
      
         - xfs_flush_unmap_range() and xfs_prepare_shift() should consider RT
           extents in the flush unmap range
      
         - Implement bounds check when traversing log operations during log
           replay
      
         - Prevent out of bounds access when traversing a directory data block
      
         - Prevent incorrect ENOSPC when concurrently performing file creation
           and file writes
      
         - Fix rtalloc rotoring when delalloc is in use
      
        Cleanups:
      
         - Clean up I/O path inode locking helpers and the page fault handler
      
         - xfs: hoist inode operations to libxfs in anticipation of the
           metadata inode directory feature, which maintains a directory tree
           of metadata inodes. This will be necessary for further enhancements
           to the realtime feature, subvolume support
      
         - Clean up some warts in the extent freeing log intent code
      
         - Clean up the refcount and rmap intent code before adding support
           for realtime devices
      
         - Provide the correct email address for sysfs ABI documentation"
      
      * tag 'xfs-6.11-merge-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (80 commits)
        xfs: fix rtalloc rotoring when delalloc is in use
        xfs: get rid of xfs_ag_resv_rmapbt_alloc
        xfs: skip flushing log items during push
        xfs: grant heads track byte counts, not LSNs
        xfs: pass the full grant head to accounting functions
        xfs: track log space pinned by the AIL
        xfs: collapse xlog_state_set_callback in caller
        xfs: l_last_sync_lsn is really AIL state
        xfs: ensure log tail is always up to date
        xfs: background AIL push should target physical space
        xfs: AIL doesn't need manual pushing
        xfs: move and rename xfs_trans_committed_bulk
        xfs: fix the contact address for the sysfs ABI documentation
        xfs: Avoid races with cnt_btree lastrec updates
        xfs: move xfs_refcount_update_defer_add to xfs_refcount_item.c
        xfs: simplify usage of the rcur local variable in xfs_refcount_finish_one
        xfs: don't bother calling xfs_refcount_finish_one_cleanup in xfs_refcount_finish_one
        xfs: reuse xfs_refcount_update_cancel_item
        xfs: add a ci_entry helper
        xfs: remove xfs_trans_set_refcount_flags
        ...
      bf3aa9de
    • Linus Torvalds's avatar
      Merge tag 'exfat-for-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/linkinjeon/exfat · 0260b0a7
      Linus Torvalds authored
      Pull exfat updates from Namjae Jeon:
      
       - Fix deadlock issue reported by syzbot
      
       - Handle idmapped mounts
      
      * tag 'exfat-for-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/linkinjeon/exfat:
        exfat: fix potential deadlock on __exfat_get_dentry_set
        exfat: handle idmapped mounts
      0260b0a7
    • Linus Torvalds's avatar
      Merge tag 'for-6.11-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · a1b547f0
      Linus Torvalds authored
      Pull btrfs updates from David Sterba:
       "The highlights are new logic behind background block group reclaim,
        automatic removal of qgroup after removing a subvolume and new
        'rescue=' mount options.
      
        The rest is optimizations, cleanups and refactoring.
      
        User visible features:
      
         - dynamic block group reclaim:
            - tunable framework to avoid situations where eager data
              allocations prevent creating new metadata chunks due to lack of
              unallocated space
            - reuse sysfs knob bg_reclaim_threshold (otherwise used only in
              zoned mode) for a fixed value threshold
            - new on/off sysfs knob "dynamic_reclaim" calculating the value
              based on heuristics, aiming to keep spare working space for
              relocating chunks but not to needlessly relocate partially
              utilized block groups or reclaim newly allocated ones
            - stats are exported in sysfs per block group type, files
              "reclaim_*"
            - this may increase IO load at unexpected times but the corner
              case of no allocatable block groups is known to be worse
      
         - automatically remove qgroup of deleted subvolumes:
            - adjust qgroup removal conditions, make sure all related
              subvolume data are already removed, or return EBUSY, also take
              into account setting of sysfs drop_subtree_threshold
            - also works in squota mode
      
         - mount option updates: new modes of 'rescue=' that allow to mount
           images (read-only) that could have been partially converted by user
           space tools
            - ignoremetacsums  - invalid metadata checksums are ignored
            - ignoresuperflags - super block flags that track conversion in
                                 progress (like UUID or checksums)
      
        Core:
      
         - size of struct btrfs_inode is now below 1024 (on a release config),
           improved memory packing and other secondary effects
      
         - switch tracking of open inodes from rb-tree to xarray, minor
           performance improvement
      
         - reduce number of empty transaction commits when there are no dirty
           data/metadata
      
         - memory allocation optimizations (reduced numbers, reordering out of
           critical sections)
      
         - extent map structure optimizations and refactoring, more sanity
           checks
      
         - more subpage in zoned mode preparations or fixes
      
         - general snapshot code cleanups, improvements and documentation
      
         - tree-checker updates: more file extent ram_bytes fixes, continued
      
         - raid-stripe-tree update (not backward compatible):
            - remove extent encoding field from the structure, can be inferred
              from other information
            - requires btrfs-progs 6.9.1 or newer
      
         - cleanups and refactoring
            - error message updates
            - error handling improvements
            - return type and parameter cleanups and improvements"
      
      * tag 'for-6.11-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux: (152 commits)
        btrfs: fix extent map use-after-free when adding pages to compressed bio
        btrfs: fix bitmap leak when loading free space cache on duplicate entry
        btrfs: remove the BUG_ON() inside extent_range_clear_dirty_for_io()
        btrfs: move extent_range_clear_dirty_for_io() into inode.c
        btrfs: enhance compression error messages
        btrfs: fix data race when accessing the last_trans field of a root
        btrfs: rename the extra_gfp parameter of btrfs_alloc_page_array()
        btrfs: remove the extra_gfp parameter from btrfs_alloc_folio_array()
        btrfs: introduce new "rescue=ignoresuperflags" mount option
        btrfs: introduce new "rescue=ignoremetacsums" mount option
        btrfs: output the unrecognized super block flags as hex
        btrfs: remove unused Opt enums
        btrfs: tree-checker: add extra ram_bytes and disk_num_bytes check
        btrfs: fix the ram_bytes assignment for truncated ordered extents
        btrfs: make validate_extent_map() catch ram_bytes mismatch
        btrfs: ignore incorrect btrfs_file_extent_item::ram_bytes
        btrfs: cleanup the bytenr usage inside btrfs_extent_item_to_extent_map()
        btrfs: fix typo in error message in btrfs_validate_super()
        btrfs: move the direct IO code into its own file
        btrfs: pass a btrfs_inode to btrfs_set_prop()
        ...
      a1b547f0
    • Linus Torvalds's avatar
      Merge tag 'gfs2-v6.10-rc1-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2 · 6706415b
      Linus Torvalds authored
      Pull gfs2 updates from Andreas Gruenbacher:
       "Fixes and cleanups:
      
         - Revise the glock reference counting model and LRU list handling to
           be more sensible
      
         - Several quota related fixes: clean up the quota code, add some
           missing locking, and work around the on-disk corruption that the
           reverted patch "gfs2: ignore negated quota changes" causes
      
         - Clean up the glock demote logic in glock_work_func()"
      
      * tag 'gfs2-v6.10-rc1-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2: (29 commits)
        gfs2: Clean up glock demote logic
        gfs2: Revert "check for no eligible quota changes"
        gfs2: Be more careful with the quota sync generation
        gfs2: Get rid of some unnecessary quota locking
        gfs2: Add some missing quota locking
        gfs2: Fold qd_fish into gfs2_quota_sync
        gfs2: quota need_sync cleanup
        gfs2: Fix and clean up function do_qc
        gfs2: Revert "Add quota_change type"
        gfs2: Revert "ignore negated quota changes"
        gfs2: qd_check_sync cleanups
        gfs2: Revert "introduce qd_bh_get_or_undo"
        gfs2: Check quota consistency on mount
        gfs2: Minor gfs2_quota_init error path cleanup
        gfs2: Get rid of demote_ok checks
        Revert "GFS2: Don't add all glocks to the lru"
        gfs2: Revise glock reference counting model
        gfs2: Switch to a per-filesystem glock workqueue
        gfs2: Report when glocks cannot be freed for a long time
        gfs2: gfs2_glock_get cleanup
        ...
      6706415b
    • Linus Torvalds's avatar
      Merge tag 'dlm-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm · f097ef0e
      Linus Torvalds authored
      Pull dlm updates from David Teigland:
      
       - New flag DLM_LSFL_SOFTIRQ_SAFE can be set by code using dlm to
         indicate callbacks can be run from softirq
      
       - Change md-cluster to set DLM_LSFL_SOFTIRQ_SAFE
      
       - Clean up for previous changes, e.g. unused code and parameters
      
       - Remove custom pre-allocation of rsb structs which is unnecessary with
         kmem caches
      
       - Change idr to xarray for lkb structs in use
      
       - Change idr to xarray for rsb structs being recovered
      
       - Change outdated naming related to internal rsb states
      
       - Fix some incorrect add/remove of rsb on scan list
      
       - Use rcu to free rsb structs
      
      * tag 'dlm-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm:
        dlm: add rcu_barrier before destroy kmem cache
        dlm: remove DLM_LSFL_SOFTIRQ from exflags
        fs: dlm: remove unused struct 'dlm_processed_nodes'
        md-cluster: use DLM_LSFL_SOFTIRQ for dlm_new_lockspace()
        dlm: implement LSFL_SOFTIRQ_SAFE
        dlm: introduce DLM_LSFL_SOFTIRQ_SAFE
        dlm: use LSFL_FS to check for kernel lockspace
        dlm: use rcu to avoid an extra rsb struct lookup
        dlm: fix add_scan and del_scan usage
        dlm: change list and timer names
        dlm: move recover idr to xarray datastructure
        dlm: move lkb idr to xarray datastructure
        dlm: drop own rsb pre allocation mechanism
        dlm: remove ls_local_handle from struct dlm_ls
        dlm: remove unused parameter in dlm_midcomms_addr
        dlm: don't kref_init rsbs created for toss list
        dlm: remove scand leftovers
      f097ef0e
    • Linus Torvalds's avatar
      Merge tag 'erofs-for-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs · 586f14a6
      Linus Torvalds authored
      Pull erofs updates from Gao Xiang:
       "Updates for folio conversions for compressed inodes: While large folio
        support for compressed data could work now, it remains disabled since
        the stress test could hang due to page migration in a few hours after
        enabling it. I need more time to investigate further before enabling
        this feature.
      
        Additionally, clean up stream decompressors and tracepoints for
        simplicity.
      
        Summary:
      
         - More folio conversions for compressed inodes
      
         - Stream decompressor (LZMA/DEFLATE/ZSTD) cleanups
      
         - Minor tracepoint cleanup"
      
      * tag 'erofs-for-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs:
        erofs: silence uninitialized variable warning in z_erofs_scan_folio()
        erofs: avoid refcounting short-lived pages
        erofs: get rid of z_erofs_map_blocks_iter_* tracepoints
        erofs: tidy up stream decompressors
        erofs: refine z_erofs_{init,exit}_subsystem()
        erofs: move each decompressor to its own source file
        erofs: tidy up `struct z_erofs_bvec`
        erofs: teach z_erofs_scan_folios() to handle multi-page folios
        erofs: convert z_erofs_read_fragment() to folios
        erofs: convert z_erofs_pcluster_readmore() to folios
      586f14a6
    • Linus Torvalds's avatar
      Merge tag 'nfsd-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux · 586a7a85
      Linus Torvalds authored
      Pull nfsd updates from Chuck Lever:
       "This is a light release containing optimizations, code clean-ups, and
        minor bug fixes.
      
        This development cycle focused on work outside of upstream kernel
        development:
      
         - Continuing to build upstream CI for NFSD based on kdevops
      
         - Continuing to focus on the quality of NFSD in LTS kernels
      
         - Participation in IETF nfsv4 WG discussions about NFSv4 ACLs,
           directory delegation, and NFSv4.2 COPY offload
      
        Notable features for v6.11 that do not come through the NFSD tree
        include NFS server-side support for the new pNFS NVMe layout type
        [RFC9561]. Functional testing for pNFS block layouts like this one has
        been introduced to our kdevops CI harness. Work on improving the
        resolution of file attribute time stamps in local filesystems is also
        ongoing tree-wide.
      
        As always I am grateful to NFSD contributors, reviewers, testers, and
        bug reporters who participated during this cycle"
      
      * tag 'nfsd-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux:
        nfsd: nfsd_file_lease_notifier_call gets a file_lease as an argument
        gss_krb5: Fix the error handling path for crypto_sync_skcipher_setkey
        MAINTAINERS: Add a bugzilla link for NFSD
        nfsd: new netlink ops to get/set server pool_mode
        sunrpc: refactor pool_mode setting code
        nfsd: allow passing in array of thread counts via netlink
        nfsd: make nfsd_svc take an array of thread counts
        sunrpc: fix up the special handling of sv_nrpools == 1
        SUNRPC: Add a trace point in svc_xprt_deferred_close
        NFSD: Support write delegations in LAYOUTGET
        lockd: Use *-y instead of *-objs in Makefile
        NFSD: Fix nfsdcld warning
        svcrdma: Handle ADDR_CHANGE CM event properly
        svcrdma: Refactor the creation of listener CMA ID
        NFSD: remove unused structs 'nfsd3_voidargs'
        NFSD: harden svcxdr_dupstr() and svcxdr_tmpalloc() against integer overflows
      586a7a85
    • Linus Torvalds's avatar
      Merge tag 'affs-6.11-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · 48f8bfd4
      Linus Torvalds authored
      Pull affs updates from David Sterba:
      
       - conversions of one-element arrays to flexible arrays
      
      * tag 'affs-6.11-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
        affs: struct slink_front: Replace 1-element array with flexible array
        affs: struct affs_data_head: Replace 1-element array with flexible array
        affs: struct affs_head: Replace 1-element array with flexible array
      48f8bfd4
    • Linus Torvalds's avatar
      Merge tag 'net-next-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next · 51835949
      Linus Torvalds authored
      Pull networking updates from Jakub Kicinski:
       "Not much excitement - a handful of large patchsets (devmem among them)
        did not make it in time.
      
        Core & protocols:
      
         - Use local_lock in addition to local_bh_disable() to protect per-CPU
           resources in networking, a step closer for local_bh_disable() not
           to act as a big lock on PREEMPT_RT
      
         - Use flex array for netdevice priv area, ensure its cache alignment
      
         - Add a sysctl knob to allow user to specify a default rto_min at
           socket init time. Bit of a big hammer but multiple companies were
           independently carrying such patch downstream so clearly it's useful
      
         - Support scheduling transmission of packets based on CLOCK_TAI
      
         - Un-pin TCP TIMEWAIT timer to avoid it firing on CPUs later cordoned
           off using cpusets
      
         - Support multiple L2TPv3 UDP tunnels using the same 5-tuple address
      
         - Allow configuration of multipath hash seed, to both allow
           synchronizing hashing of two routers, and preventing partial
           accidental sync
      
         - Improve TCP compliance with RFC 9293 for simultaneous connect()
      
         - Support sending NAT keepalives in IPsec ESP in UDP states.
           Userspace IKE daemon had to do this before, but the kernel can
           better keep track of it
      
         - Support sending supervision HSR frames with MAC addresses stored in
           ProxyNodeTable when RedBox (i.e. HSR-SAN) is enabled
      
         - Introduce IPPROTO_SMC for selecting SMC when socket is created
      
         - Allow UDP GSO transmit from devices with no checksum offload
      
         - openvswitch: add packet sampling via psample, separating the
           sampled traffic from "upcall" packets sent to user space for
           forwarding
      
         - nf_tables: shrink memory consumption for transaction objects
      
        Things we sprinkled into general kernel code:
      
         - Power Sequencing subsystem (used by Qualcomm Bluetooth driver for
           QCA6390)           [ Already merged separately - Linus ]
      
         - Add IRQ information in sysfs for auxiliary bus
      
         - Introduce guard definition for local_lock
      
         - Add aligned flavor of __cacheline_group_{begin, end}() markings for
           grouping fields in structures
      
        BPF:
      
         - Notify user space (via epoll) when a struct_ops object is getting
           detached/unregistered
      
         - Add new kfuncs for a generic, open-coded bits iterator
      
         - Enable BPF programs to declare arrays of kptr, bpf_rb_root, and
           bpf_list_head
      
         - Support resilient split BTF which cuts down on duplication and
           makes BTF as compact as possible WRT BTF from modules
      
         - Add support for dumping kfunc prototypes from BTF which enables
           both detecting as well as dumping compilable prototypes for kfuncs
      
         - riscv64 BPF JIT improvements in particular to add 12-argument
           support for BPF trampolines and to utilize bpf_prog_pack for the
           latter
      
         - Add the capability to offload the netfilter flowtable in XDP layer
           through kfuncs
      
        Driver API:
      
         - Allow users to configure IRQ tresholds between which automatic IRQ
           moderation can choose
      
         - Expand Power Sourcing (PoE) status with power, class and failure
           reason. Support setting power limits
      
         - Track additional RSS contexts in the core, make sure configuration
           changes don't break them
      
         - Support IPsec crypto offload for IPv6 ESP and IPv4 UDP-encapsulated
           ESP data paths
      
         - Support updating firmware on SFP modules
      
        Tests and tooling:
      
         - mptcp: use net/lib.sh to manage netns
      
         - TCP-AO and TCP-MD5: replace debug prints used by tests with
           tracepoints
      
         - openvswitch: make test self-contained (don't depend on OvS CLI
           tools)
      
        Drivers:
      
         - Ethernet high-speed NICs:
            - Broadcom (bnxt):
               - increase the max total outstanding PTP TX packets to 4
               - add timestamping statistics support
               - implement netdev_queue_mgmt_ops
               - support new RSS context API
            - Intel (100G, ice, idpf):
               - implement FEC statistics and dumping signal quality indicators
               - support E825C products (with 56Gbps PHYs)
            - nVidia/Mellanox:
               - support HW-GRO
               - mlx4/mlx5: support per-queue statistics via netlink
               - obey the max number of EQs setting in sub-functions
            - AMD/Solarflare:
               - support new RSS context API
            - AMD/Pensando:
               - ionic: rework fix for doorbell miss to lower overhead and
                 skip it on new HW
            - Wangxun:
               - txgbe: support Flow Director perfect filters
      
         - Ethernet NICs consumer, embedded and virtual:
            - Add driver for Tehuti Networks TN40xx chips
            - Add driver for Meta's internal NIC chips
            - Add driver for Ethernet MAC on Airoha EN7581 SoCs
            - Add driver for Renesas Ethernet-TSN devices
            - Google cloud vNIC:
               - flow steering support
            - Microsoft vNIC:
               - support page sizes other than 4KB on ARM64
            - vmware vNIC:
               - support latency measurement (update to version 9)
            - VirtIO net:
               - support for Byte Queue Limits
               - support configuring thresholds for automatic IRQ moderation
               - support for AF_XDP Rx zero-copy
            - Synopsys (stmmac):
               - support for STM32MP13 SoC
               - let platforms select the right PCS implementation
            - TI:
               - icssg-prueth: add multicast filtering support
               - icssg-prueth: enable PTP timestamping and PPS
            - Renesas:
               - ravb: improve Rx performance 30-400% by using page pool,
                 theaded NAPI and timer-based IRQ coalescing
               - ravb: add MII support for R-Car V4M
            - Cadence (macb):
               - macb: add ARP support to Wake-On-LAN
            - Cortina:
               - use phylib for RX and TX pause configuration
      
         - Ethernet switches:
            - nVidia/Mellanox:
               - support configuration of multipath hash seed
               - report more accurate max MTU
               - use page_pool to improve Rx performance
            - MediaTek:
               - mt7530: add support for bridge port isolation
            - Qualcomm:
               - qca8k: add support for bridge port isolation
            - Microchip:
               - lan9371/2: add 100BaseTX PHY support
            - NXP:
               - vsc73xx: implement VLAN operations
      
         - Ethernet PHYs:
            - aquantia: enable support for aqr115c
            - aquantia: add support for PHY LEDs
            - realtek: add support for rtl8224 2.5Gbps PHY
            - xpcs: add memory-mapped device support
            - add BroadR-Reach link mode and support in Broadcom's PHY driver
      
         - CAN:
            - add document for ISO 15765-2 protocol support
            - mcp251xfd: workaround for erratum DS80000789E, use timestamps to
              catch when device returns incorrect FIFO status
      
         - WiFi:
            - mac80211/cfg80211:
               - parse Transmit Power Envelope (TPE) data in mac80211 instead
                 of in drivers
               - improvements for 6 GHz regulatory flexibility
               - multi-link improvements
               - support multiple radios per wiphy
               - remove DEAUTH_NEED_MGD_TX_PREP flag
            - Intel (iwlwifi):
               - bump FW API to 91 for BZ/SC devices
               - report 64-bit radiotap timestamp
               - enable P2P low latency by default
               - handle Transmit Power Envelope (TPE) advertised by AP
               - remove support for older FW for new devices
               - fast resume (keeping the device configured)
               - mvm: re-enable Multi-Link Operation (MLO)
               - aggregation (A-MSDU) optimizations
            - MediaTek (mt76):
               - mt7925 Multi-Link Operation (MLO) support
            - Qualcomm (ath10k):
               - LED support for various chipsets
            - Qualcomm (ath12k):
               - remove unsupported Tx monitor handling
               - support channel 2 in 6 GHz band
               - support Spatial Multiplexing Power Save (SMPS) in 6 GHz band
               - supprt multiple BSSID (MBSSID) and Enhanced Multi-BSSID
                 Advertisements (EMA)
               - support dynamic VLAN
               - add panic handler for resetting the firmware state
               - DebugFS support for datapath statistics
               - WCN7850: support for Wake on WLAN
            - Microchip (wilc1000):
               - read MAC address during probe to make it visible to user space
               - suspend/resume improvements
            - TI (wl18xx):
               - support newer firmware versions
            - RealTek (rtw89):
               - preparation for RTL8852BE-VT support
               - Wake on WLAN support for WiFi 6 chips
               - 36-bit PCI DMA support
            - RealTek (rtlwifi):
               - RTL8192DU support
            - Broadcom (brcmfmac):
               - Management Frame Protection support (to enable WPA3)
      
         - Bluetooth:
            - qualcomm: use the power sequencer for QCA6390
            - btusb: mediatek: add ISO data transmission functions
            - hci_bcm4377: add BCM4388 support
            - btintel: add support for BlazarU core
            - btintel: add support for Whale Peak2
            - btnxpuart: add support for AW693 A1 chipset
            - btnxpuart: add support for IW615 chipset
            - btusb: add Realtek RTL8852BE support ID 0x13d3:0x3591"
      
      * tag 'net-next-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (1589 commits)
        eth: fbnic: Fix spelling mistake "tiggerring" -> "triggering"
        tcp: Replace strncpy() with strscpy()
        wifi: ath12k: fix build vs old compiler
        tcp: Don't access uninit tcp_rsk(req)->ao_keyid in tcp_create_openreq_child().
        eth: fbnic: Write the TCAM tables used for RSS control and Rx to host
        eth: fbnic: Add L2 address programming
        eth: fbnic: Add basic Rx handling
        eth: fbnic: Add basic Tx handling
        eth: fbnic: Add link detection
        eth: fbnic: Add initial messaging to notify FW of our presence
        eth: fbnic: Implement Rx queue alloc/start/stop/free
        eth: fbnic: Implement Tx queue alloc/start/stop/free
        eth: fbnic: Allocate a netdevice and napi vectors with queues
        eth: fbnic: Add FW communication mechanism
        eth: fbnic: Add message parsing for FW messages
        eth: fbnic: Add register init to set PCIe/Ethernet device config
        eth: fbnic: Allocate core device specific structures and devlink interface
        eth: fbnic: Add scaffolding for Meta's NIC driver
        PCI: Add Meta Platforms vendor ID
        net/sched: cls_flower: propagate tca[TCA_OPTIONS] to NL_REQ_ATTR_CHECK
        ...
      51835949
    • Linus Torvalds's avatar
      Merge tag 'linux_kselftest-next-6.11-rc1' of... · 0434dbe3
      Linus Torvalds authored
      Merge tag 'linux_kselftest-next-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull kselftest updates from Shuah Khan:
      
       - change resctrl test to cleanup resctrl_val() and generalize it by
         removing test name specific handling from the function.
      
       - several clang build failure fixes to framework and tests
      
       - add tests to verify IFS (In Field Scan) driver functionality
      
       - cleanups to remove unused variables and document changes
      
      * tag 'linux_kselftest-next-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest: (33 commits)
        selftests: ifs: verify IFS ARRAY BIST functionality
        selftests: ifs: verify IFS scan test functionality
        selftests: ifs: verify test image loading functionality
        selftests: ifs: verify test interfaces are created by the driver
        selftests/dma:remove unused variable
        selftests/breakpoints:Remove unused variable
        selftests/x86: fix printk warnings reported by clang
        selftests/x86: remove (or use) unused variables and functions
        selftests/x86: avoid -no-pie warnings from clang during compilation
        selftests/x86: build sysret_rip.c with clang
        selftests/x86: build fsgsbase_restore.c with clang
        selftests: x86: test_FISTTP: use fisttps instead of ambiguous fisttp
        selftests/x86: fix Makefile dependencies to work with clang
        selftests/timers: remove unused irqcount variable
        selftests: Add information about TAP conformance in tests
        selftests/resctrl: Remove test name comparing from write_bm_pid_to_resctrl()
        selftests/resctrl: Remove mongrp from CMT test
        selftests/resctrl: Remove mongrp from MBA test
        selftests/resctrl: Convert ctrlgrp & mongrp to pointers
        selftests/resctrl: Make some strings passed to resctrlfs functions const
        ...
      0434dbe3
    • Linus Torvalds's avatar
      Merge tag 'linux_kselftest-kunit-6.11-rc1' of... · f8d22a31
      Linus Torvalds authored
      Merge tag 'linux_kselftest-kunit-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull KUnit updates from Shuah Khan:
      
       - add vm_mmap() allocation resource manager
      
       - convert usercopy kselftest to KUnit
      
       - disable usercopy testing on !CONFIG_MMU
      
       - add MODULE_DESCRIPTION() to core, list, and usercopy tests
      
       - add tests for assertion formatting functions - assert.c
      
       - introduce KUNIT_ASSERT_MEMEQ and KUNIT_ASSERT_MEMNEQ macros
      
       - fix KUNIT_ASSERT_STRNEQ comments to make it clear that it is an
         assertion
      
       - rename KUNIT_ASSERT_FAILURE to KUNIT_FAIL_AND_ABORT
      
      * tag 'linux_kselftest-kunit-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        kunit: Introduce KUNIT_ASSERT_MEMEQ and KUNIT_ASSERT_MEMNEQ macros
        kunit: Rename KUNIT_ASSERT_FAILURE to KUNIT_FAIL_AND_ABORT for readability
        kunit: Fix the comment of KUNIT_ASSERT_STRNEQ as assertion
        kunit: executor: Simplify string allocation handling
        kunit/usercopy: Add missing MODULE_DESCRIPTION()
        kunit/usercopy: Disable testing on !CONFIG_MMU
        usercopy: Convert test_user_copy to KUnit test
        kunit: test: Add vm_mmap() allocation resource manager
        list: test: add the missing MODULE_DESCRIPTION() macro
        kunit: add missing MODULE_DESCRIPTION() macros to core modules
        list: test: remove unused struct 'klist_test_struct'
        kunit: Cover 'assert.c' with tests
      f8d22a31
    • Linus Torvalds's avatar
      firmware: qcom: tzmem: don't ask about allocator mode when not enabled · 9de4ad3b
      Linus Torvalds authored
      The Qualcomm firmware code shouldn't ask about what memory allocator
      mode should be used when the code isn't even enabled.
      
      Get rid of pointless config-time question.
      
      Link: https://lore.kernel.org/all/CAHk-=wg+38EHPKGou1MqXwAAXC30cM8sMgZAGnZ7TcFO4L9J2w@mail.gmail.com/Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      9de4ad3b
    • Linus Torvalds's avatar
      um: Use generic runtime constant implementation · 17e6a121
      Linus Torvalds authored
      UML should not be using the architecture native runtime constants, since
      that requires also having the appropriate instruction fixups (and all
      the linker script details).
      
      Not that using that code would be impossible, but it's not worth it.
      Just point UML at the generic version.
      Reported-by: default avatarNathan Chancellor <nathan@kernel.org>
      Fixes: e3c92e81 ("runtime constants: add x86 architecture support")
      Link: https://lore.kernel.org/all/20240716143644.GA1827132@thelio-3990X/Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      17e6a121
    • Linus Torvalds's avatar
      Merge tag 'perf-core-2024-07-16' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 576a997c
      Linus Torvalds authored
      Pull performance events updates from Ingo Molnar:
      
       - Intel PT support enhancements & fixes
      
       - Fix leaked SIGTRAP events
      
       - Improve and fix the Intel uncore driver
      
       - Add support for Intel HBM and CXL uncore counters
      
       - Add Intel Lake and Arrow Lake support
      
       - AMD uncore driver fixes
      
       - Make SIGTRAP and __perf_pending_irq() work on RT
      
       - Micro-optimizations
      
       - Misc cleanups and fixes
      
      * tag 'perf-core-2024-07-16' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (44 commits)
        perf/x86/intel: Add a distinct name for Granite Rapids
        perf/x86/intel/ds: Fix non 0 retire latency on Raptorlake
        perf/x86/intel: Hide Topdown metrics events if the feature is not enumerated
        perf/x86/intel/uncore: Fix the bits of the CHA extended umask for SPR
        perf: Split __perf_pending_irq() out of perf_pending_irq()
        perf: Don't disable preemption in perf_pending_task().
        perf: Move swevent_htable::recursion into task_struct.
        perf: Shrink the size of the recursion counter.
        perf: Enqueue SIGTRAP always via task_work.
        task_work: Add TWA_NMI_CURRENT as an additional notify mode.
        perf: Move irq_work_queue() where the event is prepared.
        perf: Fix event leak upon exec and file release
        perf: Fix event leak upon exit
        task_work: Introduce task_work_cancel() again
        task_work: s/task_work_cancel()/task_work_cancel_func()/
        perf/x86/amd/uncore: Fix DF and UMC domain identification
        perf/x86/amd/uncore: Avoid PMU registration if counters are unavailable
        perf/x86/intel: Support Perfmon MSRs aliasing
        perf/x86/intel: Support PERFEVTSEL extension
        perf/x86: Add config_mask to represent EVENTSEL bitmask
        ...
      576a997c
    • Linus Torvalds's avatar
      Merge tag 'sched-core-2024-07-16' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4a996d90
      Linus Torvalds authored
      Pull scheduler updates from Ingo Molnar:
      
       - Update Daniel Bristot de Oliveira's entry in MAINTAINERS,
         and credit him in CREDITS
      
       - Harmonize the lock-yielding behavior on dynamically selected
         preemption models with static ones
      
       - Reorganize the code a bit: split out sched/syscalls.c to reduce
         the size of sched/core.c
      
       - Micro-optimize psi_group_change()
      
       - Fix set_load_weight() for SCHED_IDLE tasks
      
       - Misc cleanups & fixes
      
      * tag 'sched-core-2024-07-16' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched: Update MAINTAINERS and CREDITS
        sched/fair: set_load_weight() must also call reweight_task() for SCHED_IDLE tasks
        sched/psi: Optimise psi_group_change a bit
        sched/core: Drop spinlocks on contention iff kernel is preemptible
        sched/core: Move preempt_model_*() helpers from sched.h to preempt.h
        sched/balance: Skip unnecessary updates to idle load balancer's flags
        idle: Remove stale RCU comment
        sched/headers: Move struct pre-declarations to the beginning of the header
        sched/core: Clean up kernel/sched/sched.h a bit
        sched/core: Simplify prefetch_curr_exec_start()
        sched: Fix spelling in comments
        sched/syscalls: Split out kernel/sched/syscalls.c from kernel/sched/core.c
      4a996d90
  3. 16 Jul, 2024 4 commits
    • Linus Torvalds's avatar
      Merge tag 'objtool-core-2024-07-16' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 0c182ac2
      Linus Torvalds authored
      Pull objtool updates from Ingo Molnar:
      
       - Fix bug that caused objtool to confuse certain memory ops added by
         KASAN instrumentation as stack accesses
      
       - Various faddr2line optimizations
      
       - Improve error messages
      
      * tag 'objtool-core-2024-07-16' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        objtool/x86: objtool can confuse memory and stack access
        objtool: Use "action" in error message to be consistent with help
        scripts/faddr2line: Check only two symbols when calculating symbol size
        scripts/faddr2line: Remove call to addr2line from find_dir_prefix()
        scripts/faddr2line: Invoke addr2line as a single long-running process
        scripts/faddr2line: Pass --addresses argument to addr2line
        scripts/faddr2line: Check vmlinux only once
        scripts/faddr2line: Combine three readelf calls into one
        scripts/faddr2line: Reduce number of readelf calls to three
      0c182ac2
    • Linus Torvalds's avatar
      Merge tag 'locking-core-2024-07-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 151647ab
      Linus Torvalds authored
      Pull locking updates from Ingo Molnar:
      
       - Jump label fixes, including a perf events fix that originally
         manifested as jump label failures, but was a serialization bug at the
         usage site
      
       - Mark down_write*() helpers as __always_inline, to improve WCHAN
         debuggability
      
       - Misc cleanups and fixes
      
      * tag 'locking-core-2024-07-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        locking/rwsem: Add __always_inline annotation to __down_write_common() and inlined callers
        jump_label: Simplify and clarify static_key_fast_inc_cpus_locked()
        jump_label: Clarify condition in static_key_fast_inc_not_disabled()
        jump_label: Fix concurrency issues in static_key_slow_dec()
        perf/x86: Serialize set_attr_rdpmc()
        cleanup: Standardize the header guard define's name
      151647ab
    • Linus Torvalds's avatar
      Merge tag 'acpi-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 923a327e
      Linus Torvalds authored
      Pull ACPI updates from Rafael Wysocki:
       "The only kind of new feature added by these is the hwmon interface
        support in the ACPI fan driver. Apart from that, they mostly address
        issues and clean up code.
      
        Specifics:
      
         - Switch the ACPI x86 utility code and the ACPI LPSS driver to new
           Intel CPU model defines (Tony Luck)
      
         - Add hwmon interface support to the ACPI fan driver (Armin Wolf)
      
         - Add sysfs entry for guaranteed performance to the ACPI CPPC library
           and replace a ternary operator with umax() in it (Petr Tesařík,
           Prabhakar Pujeri)
      
         - Clean up the ACPI PMIC driver in multiple ways (Andy Shevchenko,
           Christophe JAILLET)
      
         - Add support for charge limiting state to the ACPI battery driver
           and update _OSC to indicate support for it (Armin Wolf)
      
         - Clean up the sysfs interface in the ACPI battery, SBS (smart
           battery subsystem) and AC drivers (Thomas Weißschuh)
      
         - Coordinate header includes in the ACPI NUMA code and make it use
           ACCESS_COORDINATE_CPU when appropriate (Huang Ying, Thorsten Blum)
      
         - Downgrade Intel _OSC and _PDC messages in the ACPI processor driver
           to debug to reduce log noise (Mario Limonciello)
      
         - Still evaluate _OST when _PUR evaluation fails in the ACPI PAD
           (processor aggregator) driver as per the spec (Armin Wolf)
      
         - Skip ACPI IRQ override on Asus Vivobook Pro N6506MJ and N6506MU
           platforms (Tamim Khan)
      
         - Force native mode on some T2 macbooks in the ACPI backlight driver
           and replace strcpy() with strscpy() in it (Orlando Chamberlain,
           Muhammad Qasim Abdul Majeed)
      
         - Add missing MODULE_DESCRIPTION() macros in two places (Jeff
           Johnson)"
      
      * tag 'acpi-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (26 commits)
        ACPI: resource: Skip IRQ override on Asus Vivobook Pro N6506MJ
        ACPI: video: force native for some T2 macbooks
        ACPI: video: Use strscpy() instead of strcpy()
        ACPI: CPPC: Replace ternary operator with umax()
        ACPI: resource: Skip IRQ override on Asus Vivobook Pro N6506MU
        ACPI: PMIC: Constify struct pmic_table
        ACPI: bus: Indicate support for battery charge limiting thru _OSC
        ACPI: battery: Add support for charge limiting state
        ACPI: processor: Downgrade Intel _OSC and _PDC messages to debug
        ACPI: SBS: manage alarm sysfs attribute through psy core
        ACPI: battery: create alarm sysfs attribute atomically
        ACPI: battery: use sysfs_emit over sprintf
        ACPI: battery: constify powersupply properties
        ACPI: SBS: constify powersupply properties
        ACPI: AC: constify powersupply properties
        ACPI: PMIC: Replace open coded be16_to_cpu()
        ACPI: PMIC: Convert pr_*() to dev_*() printing macros
        ACPI: PMIC: Use sizeof() instead of hard coded value
        ACPI: NUMA: Consolidate header includes
        ACPI: CPPC: add sysfs entry for guaranteed performance
        ...
      923a327e
    • Linus Torvalds's avatar
      Merge tag 'pm-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 41906248
      Linus Torvalds authored
      Pull power management updates from Rafael Wysocki:
       "These add a new cpufreq driver for Loongson-3, add support for new
        features in the intel_pstate (Lunar Lake and Arrow Lake platforms, OOB
        mode for Emerald Rapids, highest performance change interrupt),
        amd-pstate (fast CPPC) and sun50i (Allwinner H700 speed bin) cpufreq
        drivers, simplify the cpufreq driver interface, simplify the teo
        cpuidle governor, adjust the pm-graph utility for a new version of
        Python, address issues and clean up code.
      
        Specifics:
      
         - Add Loongson-3 CPUFreq driver support (Huacai Chen)
      
         - Add support for the Arrow Lake and Lunar Lake platforms and the
           out-of-band (OOB) mode on Emerald Rapids to the intel_pstate
           cpufreq driver, make it support the highest performance change
           interrupt and clean it up (Srinivas Pandruvada)
      
         - Switch cpufreq to new Intel CPU model defines (Tony Luck)
      
         - Simplify the cpufreq driver interface by switching the .exit()
           driver callback to the void return data type (Lizhe, Viresh Kumar)
      
         - Make cpufreq_boost_enabled() return bool (Dhruva Gole)
      
         - Add fast CPPC support to the amd-pstate cpufreq driver, address
           multiple assorted issues in it and clean it up (Perry Yuan, Mario
           Limonciello, Dhananjay Ugwekar, Meng Li, Xiaojian Du)
      
         - Add Allwinner H700 speed bin to the sun50i cpufreq driver (Ryan
           Walklin)
      
         - Fix memory leaks and of_node_put() usage in the sun50i and
           qcom-nvmem cpufreq drivers (Javier Carrasco)
      
         - Clean up the sti and dt-platdev cpufreq drivers (Jeff Johnson,
           Raphael Gallais-Pou)
      
         - Fix deferred probe handling in the TI cpufreq driver and wrong
           return values of ti_opp_supply_probe(), and add OPP tables for the
           AM62Ax and AM62Px SoCs to it (Bryan Brattlof, Primoz Fiser)
      
         - Avoid overflow of target_freq in .fast_switch() in the SCMI cpufreq
           driver (Jagadeesh Kona)
      
         - Use dev_err_probe() in every error path in probe in the Mediatek
           cpufreq driver (Nícolas Prado)
      
         - Fix kernel-doc param for longhaul_setstate in the longhaul cpufreq
           driver (Yang Li)
      
         - Fix system resume handling in the CPPC cpufreq driver (Riwen Lu)
      
         - Improve the teo cpuidle governor and clean up leftover comments
           from the menu cpuidle governor (Christian Loehle)
      
         - Clean up a comment typo in the teo cpuidle governor (Atul Kumar
           Pant)
      
         - Add missing MODULE_DESCRIPTION() macro to cpuidle haltpoll (Jeff
           Johnson)
      
         - Switch the intel_idle driver to new Intel CPU model defines (Tony
           Luck)
      
         - Switch the Intel RAPL driver new Intel CPU model defines (Tony
           Luck)
      
         - Simplify if condition in the idle_inject driver (Thorsten Blum)
      
         - Fix missing cleanup on error in _opp_attach_genpd() (Viresh Kumar)
      
         - Introduce an OF helper function to inform if required-opps is used
           and drop a redundant in-parameter to _set_opp_level() (Ulf Hansson)
      
         - Update pm-graph to v5.12 which includes fixes and major code revamp
           for python3.12 (Todd Brandt)
      
         - Address several assorted issues in the cpupower utility (Roman
           Storozhenko)"
      
      * tag 'pm-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (77 commits)
        cpufreq: sti: fix build warning
        cpufreq: mediatek: Use dev_err_probe in every error path in probe
        cpufreq: Add Loongson-3 CPUFreq driver support
        cpufreq: Make cpufreq_driver->exit() return void
        cpufreq/amd-pstate: Fix the scaling_max_freq setting on shared memory CPPC systems
        cpufreq/amd-pstate-ut: Convert nominal_freq to khz during comparisons
        cpufreq: pcc: Remove empty exit() callback
        cpufreq: loongson2: Remove empty exit() callback
        cpufreq: nforce2: Remove empty exit() callback
        cpupower: fix lib default installation path
        cpufreq: docs: Add missing scaling_available_frequencies description
        cpuidle: teo: Don't count non-existent intercepts
        cpupower: Disable direct build of the 'bench' subproject
        cpuidle: teo: Remove recent intercepts metric
        Revert: "cpuidle: teo: Introduce util-awareness"
        cpufreq: make cpufreq_boost_enabled() return bool
        cpufreq: intel_pstate: Support highest performance change interrupt
        x86/cpufeatures: Add HWP highest perf change feature flag
        Documentation: cpufreq: amd-pstate: update doc for Per CPU boost control method
        cpufreq: amd-pstate: Cap the CPPC.max_perf to nominal_perf if CPB is off
        ...
      41906248