summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
35 hoursMerge tag 'platform-drivers-x86-v7.4-1' of ↵stableLinus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86 Pull x86 platform driver updates from Ilpo Järvinen: "The usual updates for laptop quirks from HP, ASUS, Acer, Dell etc: - new model names and recent CPU support - more special button / function key handling - battery and hardware monitoring quirks Tool updates to intel-speed-select WMI now supports non-x86 architectures Miscellaneous cleanups / refactoring / improvements" * tag 'platform-drivers-x86-v7.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86: (237 commits) platform/x86: asus-wmi: name the TUF keyboard RGB state and speed codes platform/x86: asus-wmi: fix TUF keyboard power state shutdown naming platform/x86: asus-wmi: rename TUF RGB state DEVID to _CMD platform/x86: asus-armoury: add power limits quirk for GU605CM platform/x86: asus-armoury: add power limits quirk for G533QS platform/x86: asus-armoury: add power limits quirk for GA402NV platform/x86: asus-armoury: add power limits quirk for FA608UP platform/x86: asus-armoury: add power limits quirk for FA608UH platform/x86: asus-armoury: add power limits quirk for FA608PM platform/x86: asus-armoury: add power limits quirk for G713QR platform/x86: ibm_rtl: Fix potential OOB read at signature search platform/x86: acer-wmi: Add support for Acer Nitro AN16-41 platform/x86: acer-wmi: Cycle platform profile on mode key 0x4 platform/x86: hp-wmi: Disable hwmon attributes when no fans are usable platform/x86: gpd pocket fan: Cancel work before releasing GPIOs platform/x86: asus-armoury: Add XBOX ROG Ally X 20 Tunables platform/x86: msi-wmi: Ignore WMI events for keys also handled by atkbd platform/x86: msi-wmi: Sort scancodes numerically platform: arm64: Add a driver for the EC found on ASUS Glymur machines MAINTAINERS: Add myself as a LENOVO drivers co-maintainer ...
35 hoursMerge tag 'media/v7.4-2' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media Pull media update from Mauro Carvalho Chehab: "Revert 'media: Don't hide I²C or SPI drivers by default'" * tag 'media/v7.4-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: Revert "media: Don't hide I²C or SPI drivers by default"
35 hoursMerge tag 'dmaengine-7.4-rc1' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine Pull dmaengine updates from Vinod Koul: "This consists of start of work for hiding dmaengine internals and adding new APIs for dmaengine calls. Also couple of drivers and device and lot of updates esp AI-assisted improvements to drivers. Core: - Better document descriptor flags and clarify ordering rules around cookie completion - New APIs to start hiding dmaengine guts so that we can start making them internal New Support: - Nord and Maili GPI DMAengine support - DW axi dma updates and support for UltraRISC DP1000 controller - Apple M3 generation ADMACs support - Amlogic A9 SoC DMA controller driver - Sun6i refactoring and support for Allwinner A733 DMA controller Updates: - Freescale device_prep_peripheral_dma_vec support and dynamic scatter/gather chaining - TI crossbar and cppi DT schema conversion - zynqmp driver updates for error patch handling - Link list handling improvements for DW edma driver - ST dma40 improvements and corner case handling" * tag 'dmaengine-7.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine: (149 commits) dmaengine: amlogic: Fix regmap error check issue dmaengine: ste_dma40: Preserve the LCPA I/O address space docs: dmaengine: clarify ordering rules around cookie completion dmaengine: move driver-private helpers out of include/linux/dmaengine.h dmaengine: add dmaengine_desc_set_callback() helper dmaengine: add dmaengine_get_provider_device() API dmaengine: add dmaengine_get_max_xor() helper dmaengine: add dmaengine_get_cap_mask() and dmaengine_has_cap() helpers dmaengine: add dmaengine_get_copy_align() and related alignment getter helpers dmaengine: add dmaengine_is_*_aligned() helpers for DMA consumers dmaengine: add dmaengine_prep_dma_(pq|pq_val|interrupt|xor)() API dmaengine: sh: rcar-dmac: Add support for R-Car Gen5 SoCs dt-bindings: renesas,rcar-dmac: Add support for R-Car X5H SoC dmaengine: sh: rcar-dmac: SMMU doesn't need IPMMU workaround dmaengine: sh: rcar-dmac: fix style in struct initialization dmaengine: qcom: bam_dma: free interrupt before the clock in error path dmaengine: ppc4xx: fix typo "contoller" in comment dmaengine: ste_dma40: Search all blocks for fixed logical channels dt-bindings: dma: dma40: Restore disabled-channels dmaengine: ste_dma40: Validate memcpy configuration ...
35 hoursMerge tag 'phy-for-7.4' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy Pull phy updates from Vinod Koul: "As usual bunch of new device and driver support and updates to existing drivers: New Support: - Rockchip rk3576 csi dphy support - Mediatek MT8195, MT8196 DisplayPort PHYs. MT8196 PCI-Express Gen4 S-PHY, MT8189 tphy support - Qualcomm Nord eUSB2, QMP USB PHY, QMP PCIe and Gen5x16 PHY support, M31 eUSB2 PHY, Maili QMP UFS & PCIe PHY, Shikra PCIe phy - New driver for Qualcomm CSI2 C-PHY/DPHY support and new APIs in core to parse phy nodes - Nvidia Tegra238 XUSB pad controller support, Tegra264 MPHY driver, Tegra264 xusb support - Thunderbolt phy support in core and Qualcomm driver support for USB4 for X1E platforms - Google Tensor SoC USB PHY driver - ASPEED AST2700 USB3 PHY driver - Microchip MCP2542 can phy support Updates: - FRL TxFFE config support and Samsumg driver support and runtime PM for dcphy driver - Mediatek optional repeater support for USB2 ports - Refactoring and improvements on rockchip usbdp driver - Apple USB4 pipehandler state support - Rockchip single-lane DP support" * tag 'phy-for-7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy: (114 commits) phy: tegra: Add support for Tegra238 XUSB pad controller phy: tegra: xusb: Use dev_err_probe() dt-bindings: phy: tegra194: Add compatible for Tegra238 MAINTAINERS: Add ASPEED USB3 PHY driver phy: aspeed: Add AST2700 USB3.2 PHY driver dt-bindings: phy: aspeed: Document AST2700 USB3.2 PHY phy: rockchip: phy-rockchip-inno-csidphy: add support for rk3576 variant dt-bindings: phy: rockchip-inno-csi-dphy: add rk3576 variant phy: mediatek: Add support for PCI-Express Gen4 S-PHY dt-bindings: phy: Document MT8196 MediaTek PCI-Express Gen4 S-PHY phy: tegra: Add Tegra264 MPHY driver dt-bindings: phy: Add nvidia,tegra264-mphy phy: rockchip: samsung-hdptx: Add support for FRL TxFFE level control phy: rockchip: samsung-hdptx: Handle PHY config after module reload phy: hdmi: Add optional FRL TxFFE config options phy: tegra: xusb: Add Tegra264 support phy: tegra: xusb: Increase timeout for USB2_TRK_COMPLETED polling phy: tegra: xusb: Use devm_clk_get_optional to fetch USB2 tracking clock dt-bindings: phy: tegra-xusb: Add support for Tegra264 phy: freescale: fsl-samsung-hdmi: initialize default rate ...
35 hoursMerge tag 'soundwire-7.4-rc1' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/soundwire Pull soundwire updates from Vinod Koul: - CLOCK_STOP_MODE1 support in bus and Intel driver - DMI quirks for disabling ghost on Lenovo Yoga 7 Pro, Lenovo Yoga Slim 7, Lenovo Pro 9, Lenovo Yoga Slim 7i 14IPH11. - Few more codecs as wake capable, tac5xx2 family, rt718, rt766/rt767 - Qualcomm Shikra SoC support * tag 'soundwire-7.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/soundwire: soundwire: intel_auxdevice: add rt766/rt767 codec to wake_capable_list soundwire: dmi-quirks: Disable ghost rt711 on Lenovo Yoga Slim 7 soundwire: dmi-quirks: Disable ghost Realtek on Lenovo Yoga 7 Pro soundwire: intel_auxdevice: add rt718 codec to wake_capable_list soundwire: dmi-quirks: drop the ghost RT1320 on the Surface Pro 11 (Intel) soundwire: qcom: add EE-aware register layout for Shikra dt-bindings: soundwire: qcom: add qcom,shikra-soundwire compatible soundwire: Intel: stop sdw clock in system suspend soundwire: Intel: add wake_enable parameter to stop_bus ops soundwire: bus: add CLOCK_STOP_MODE1 support back soundwire: dmi-quirks: Disable ghost Realtek on Lenovo Pro 9 soundwire: qcom: cache SCP_ADDRPAGE1/2 to preserve MBQ atomicity soundwire: bus: iterate DT compatibles for class-ID match soundwire: fix repeated words in log messages soundwire: intel_auxdevice: add tac5xx2 family to wake_capable_list soundwire: bus_type: Use devres to free slave IDA soundwire: dmi-quirks: add Lenovo Yoga Slim 7i 14IPH11 soundwire: intel: initialise quirk_mask before reading it
35 hoursMerge tag 'rpmsg-v7.4' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux Pull rpmsg updates from Bjorn Andersson: - Allow virtio rpmsg to use separate transmit and receive buffer counts based on the vring sizes, and obtain buffer sizes from virtio config space when the feature is negotiated. Document the configuration and report the MTU in the sample driver. - Fix signal interruption and timeout handling while waiting for a virtio transmit buffer. Release the device tree node reference on MediaTek channel teardown. - Convert the rpmsg control ioctl comments to kernel-doc format. * tag 'rpmsg-v7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux: rpmsg: virtio: fix error handling in TX buffer wait rpmsg: mtk: release channel OF node on device teardown samples: rpmsg: Fix mtu printk specifiers samples: rpmsg: Add MTU size info docs: rpmsg: Add virtio config space details rpmsg: virtio_rpmsg_bus: Get buffer size from config space rpmsg: virtio_rpmsg_bus: Allow different size of tx and rx bufs rpmsg: virtio_rpmsg_bus: Rename rbufs and sbufs rpmsg: ctrl: use kernel-doc format for ioctl macros
35 hoursMerge tag 'rproc-v7.4' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux Pull remoteproc updates from Bjorn Andersson: - Add Qualcomm QMI Thermal Mitigation Device support for PAS-managed remote processors, with cooling device bindings and configurations for Hamoa, Kodiak, Lemans, Talos, Monaco, and Shikra CDSP and modem subsystems as applicable. - Add per-power-domain proxy performance states for Hawi CDSP and update Hawi, Maili, and SDX75 PAS compatible bindings and the SDX75 device tree. Correct the Qualcomm ADSP startup timeout. - Fetch auto-boot firmware only once and synchronize boot work with device removal. Bound ELF section header accesses, improve trace diagnostics, and update coredump configuration documentation. - Set 48-bit DMA masks for TI K3 DSP and R5 remote processors, correct mailbox message types, and enable compile testing for more TI drivers. Fix i.MX address range boundary checks and DSP runtime PM ordering, and simplify mailbox notification handling. - Harden Xilinx mailbox setup and teardown and avoid sending notifications when the transmit queue is full. Propagate STM32 optional IRQ lookup errors and correct the MediaTek MT8188 SCP register binding. * tag 'rproc-v7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux: (33 commits) remoteproc: qcom_q6v5_pas: Add QMI TMD cooling support for Shikra remoteproc: virtio: Remove stray white space remoteproc: virtio: Replace kmemdup with kmemdup_array remoteproc: virtio: Add vdev_to_rsc() helper remoteproc: core: Fetch the auto-boot firmware only once remoteproc: xlnx: fix typecast warnings remoteproc: qcom_q6v5_pas: enable QMI TMD cooling support remoteproc: qcom: pas: add support for TMD thermal cooling devices soc: qcom: Add QMI TMD support for remote thermal mitigation dt-bindings: remoteproc: qcom,pas: add #cooling-cells property remoteproc: qcom_q6v5_pas: add per-PD proxy performance states for Hawi CDSP dt-bindings: remoteproc: qcom,sm8550-pas: make qcom,hawi-cdsp-pas standalone arm64: dts: qcom: sdx75: Use SM8650 MPSS as fallback compatible dt-bindings: remoteproc: qcom,sm8550-pas: Make SDX75 MPSS fallback to SM8650 dt-bindings: remoteproc: qcom,sm8550-pas: Add Hawi and Maili MPSS as SM8650 fallback dt-bindings: remoteproc: Fix MT8188 SCP regs remoteproc: Use %p for pointer formatting remoteproc: Add compile testing for additional TI drivers remoteproc: k3-dsp: Fix usage of omap_mbox_message and mbox_msg_t remoteproc: k3: Include what we need and only what we need ...
35 hoursMerge tag 'i3c/for-7.4' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/i3c/linux Pull I3C updates from Alexandre Belloni: "This introduces the I3C hub support in the core with drivers still being worked on. Then we have the usual fixes and cleanups: Subsystem: - Add APIs for I3C hub support - Restrict HDR modes to those supported by the bus and target - Fix ACPI target enumeration on multi-instance controllers by extracting the bus-controller instance number and PID from the correct _ADR fields. - allocate IBI workqueue with WQ_HIGHPRI Drivers: - dw: Synaptics sl2610 support - mipi-i3c-hci: HDR-DDR support, cleanup and fixes" * tag 'i3c/for-7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/i3c/linux: (28 commits) dt-bindings: i3c: Add Synaptics sl2610 i3c i3c: dw: switch to array-based exclusive reset control dt-bindings: i3c: dw: support up to two reset lines i3c: hub: Add support for the I3C interface in the I3C hub dt-bindings: i3c: Add NXP P3H2x4x i3c-hub support i3c: master: Add controller-only device operation helpers i3c: master: Add APIs for I3C hub support i3c: master: use named initializers for acpi_device_id i3c: master: adi: free the IRQ before unregistering the master i3c: master: amd: Report direct CCC read length in payload.actual_len i3c: mipi-i3c-hci: Add HDR-DDR support i3c: Restrict HDR modes to those supported by the bus and target i3c: mipi-i3c-hci: Support configurable device NACK retries i3c: mipi-i3c-hci: Remove invalid HDR-BT and Fm/Fm+ definitions i3c: mipi-i3c-hci: Remove invalid transfer size limit i3c: mipi-i3c-hci: Correct RESP_DATA_LENGTH to bits 15:0 i3c: mipi-i3c-hci: Stop rings gracefully when suspending i3c: mipi-i3c-hci: Move DMA suspend/resume callbacks i3c: mipi-i3c-hci: Process multiple IBIs per interrupt i3c: mipi-i3c-hci: Fix runtime PM violation in i3c_hci_free_ibi() ...
36 hoursMerge tag 'for-v7.4' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply Pull power supply and reset updates from Sebastian Reichel: "Power-supply core: - introduce LOAD_SWITCH property - pack power_supply_desc to optimize memory - prevent power-supply device unregistration while callback runs - drop last CONFIG_OF build-time dependencies from the core - documentation fixes Power-supply drivers: - bq27xxx: add support for bq27z746, bq28z620 - ab8500: add AB8505 support - bq257xx: fix probe time configuration race condition - multiple: convert drivers with custom LOAD_SWITCH properties to the new standard one - cros_charge-control: restore EC state on resume - qcom_battmgr: fix USB type reporting, notify charger online state, report full batteries and correct capacity on X1E - gpio-charger: always report as discharging if input power is missing - bq24190_charger: don't reset registers across system suspend - qcom_smbx: a lot of independent fixes - lots of error and module removal path fixes - misc fixes Reset drivers - misc fixes" * tag 'for-v7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (77 commits) power: supply: gpio-charger: Report discharging without input power power: supply: qcom_battmgr: report full batteries power_supply: serialize property access with unregister power: supply: bq257xx: Describe the dev field in the driver data structure power: supply: qcom_battmgr: Notify charger supplies of online changes power: supply: generic-adc-battery: fix status with no supplier power: supply: qcom_battmgr: report the USB type from USB_ADAP_TYPE power: supply: sysfs: Ratelimit "unavailable enum value" warning power: supply: cros_charge-control: restore EC state on resume power: supply: qcom_smbx: set the charge enable after software control power: supply: generic-adc-battery: Propagate charged GPIO errors power: supply: sbs-battery: disable polling before supply teardown power: supply: pf1550: drain IRQ work before unregistering supplies power: supply: bq256xx: Expose VBUS state through extcon power: supply: ab8500_fg: Avoid reserved AB8505 CCConf bit power: supply: ab8500_fg: Finalize current measurements power: supply: ab8500_charger: Recover inactive AB8505 charger power: supply: ab8500_charger: Retry AB8505 USB detection power: supply: ab8500_charger: Skip absent AB8505 main charger power: supply: ab8500_charger: Handle detection errors ...
39 hoursremoteproc: qcom_q6v5_pas: Add QMI TMD cooling support for ShikraDipa Ramesh Mantre
Add QMI TMD instance IDs and cooling device name arrays for CDSP and MPSS subsystems on Shikra to enable thermal mitigation support. Signed-off-by: Dipa Ramesh Mantre <dipa.mantre@oss.qualcomm.com> Link: https://lore.kernel.org/r/20260911-shikra_qmi_tmd-v1-1-96c1cca82f30@oss.qualcomm.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2 daysMerge tag 'xtensa-20261027' of https://github.com/jcmvbkbc/linux-xtensaLinus Torvalds
Pull xtensa updates from Max Filippov: - fix clk reference leak in calibrate_ccount - small fixes in comments * tag 'xtensa-20261027' of https://github.com/jcmvbkbc/linux-xtensa: xtensa: time: Fix clk reference leak in calibrate_ccount() xtensa: fix typos in comments xtensa: atomics: drop kernel-doc comments
2 daysMerge tag 'm68knommu-for-v7.4' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu Pull m68knommu updates from Greg Ungerer: "Platform code added for the ColdFire 54418 RNG hardware block. Also PWM address definitions for the 54418. A fix for seccomp filter processing during system call entry and a fix for compiling the Cleopatra board target. A config update for the stmark board, and lastly a couple of typo fixes" * tag 'm68knommu-for-v7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu: m68k: coldfire: Add RNG support for MCF54418 m68k: mcf5441x: add PWM defines m68knommu: fix compile breakage for 5407 cleopatra board m68k: defconfig: update stmark2 defconfig m68k: Fix seccomp filtering on ColdFire and 68000 m68k: remove unused <asm/quicc_simple.h> header m68k: fix typo "eanble" in comment m68k: coldfire: fix typos in reset.c comment
2 daysMerge tag 'trace-v7.4' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace Pull tracing updates from Steven Rostedt: - Add "within" to filter logic Add a way to trace events by what function they fall in. echo 'within == "vfs_read" > events/sched/sched_switch/filter Will only trigger sched_switch events that happen within the vfs_read function. It uses a stacktrace at the event and checks if any entry is within the specified function and if so, it prints the event. - Remove a duplicate definition of ftrace_set_clr_event() from the header - Do not have ftrace_set_clr_event() modify its input buffer Have the buffer passed into ftrace_set_clr_event() to be const char * and not allow modifications to it that might cause side effects. - Add kunit tests for ftrace_parse_event_string() - Add filter argument to __ftrace_set_clr_event() Make it possible to set a filter on an event at the same time it is enabled. - Add event filtering logic to the kernel command line To allow filtering events on boot, allow filtering to be specified on the kernel command line when enabling events. - Rename "ring_buffer_size()" to "ring_buffer_capacity()" "size" refers to how much is allocated whereas the actual return value is the amount of available data in the ring buffer minus its meta data. - Rename "trace_array_entries" to "trace_array_capacity" There's several functions that use "entries" and returns the amount of data that that is usable. "entries" should be only for the number of events, not the amount of data. - Print the histogram "bucket" size as unsigned. If a bucket size is LONG_MAX, then it shows up as a negative number. - Show bucket size in output of histograms The output of what the histogram is shown doesn't show the size of the buckets when buckets are used. The output should be the same as the input and since specifying buckets without a size is an invalid command, the output to display what was entered should also show the size. - Fix stacktrace modifier output Only show the stacktrace modifier when it was specified in creation. - Unregister filed variable histograms when the command fails If one histogram references a variable of another histogram it registers that other histogram. But if the first histogram fails in setup after it registered the other histogram it doesn't unregister it. Have the first histogram add the reference to the other histogram so the failure clean up will unregister the second histogram too. - Fix 64-bit signed histogram fields on 32-bit kernels A fix to convert char * to u64 with added casting also incorrectly added an intermediate cast to convert a long value to u64 which ended up truncating the upper 32 bits for 32-bit kernels. Remove the intermediate typecast. - Print signed histogram keys as signed Histogram keys were being printed as unsigned and with signed keys it was giving the wrong output. - Use copy_from_user() and not __copy_from_user() in syscall tracing The syscall tracing incorrectly was using __copy_from_user() which could be an issue if the system trusts perf doing the trace. - Take trace_types_lock when recording a new module in persistent buffer When a new module is loaded, the persistent ring buffer saves it in its persistent memory. All the trace_arrays are iterated looking for any persistent buffer to add the module to. But it did not hold the trace_types_lock meaning a trace_array could be added or removed while iterating the list. - Only create tracepoint guest_halt_poll_ns when it is used The tracepoint guest_halt_poll_ns is defined in the power management code but it is only used when CONFIG_CPU_IDLE_GOV_HALTPOLL is enabled. This wastes memory when that config isn't enabled so wrap the tracepoint around that as well. - Handle empty fields for events in trace_event_get_offsets() The user events could have empty fields and this causes trace_event_get_offsets() to crash as it expects events to always have fields. Make the function handle events with no fields. - Reject incomplete event filter expressions If a filter has an incomplete expression (common_pid == 1111 || ), it will cause a out-of-bounds bug. Have the predicate_parse() only process the expression if it is complete. * tag 'trace-v7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace: (27 commits) tracing: Reject incomplete event filter expressions tracing: Guard trace_event_get_offsets() against an empty fields list cpuidle: haltpoll: Only define guest_halt_poll_ns tracepoint when used tracing/osnoise: Add __printf attribute to osnoise_print() tracing/histograms: Verify event_call identity when updating synth_event refcount tracing: Save the event file instead of the compatible histogram tracing: Hold trace_types_lock when resetting last boot data from readers tracing: Hold trace_types_lock when updating modules in persistent instances tracing/syscalls: Use copy_from_user for the faultable syscall buffer tracing: Print a signed histogram key as signed tracing: Fix 64-bit and signed histogram fields on 32-bit kernels tracing: Clamp the printed end of a histogram bucket at U64_MAX tracing: Unregister field variable histograms when the command fails tracing: Only report the stacktrace modifier on a real field tracing: Add the bucket size to expr_field_str() tracing: Print the bucket size as unsigned tracing: Rename tracing_entries_fops to tracing_capacity_fops tracing: Rename trace_array::entries to capacity ring-buffer: Rename ring_buffer_size() to ring_buffer_capacity() tracing: Parse filter from boot event string ...
2 daysMerge tag 'mm-stable-2026-10-25-19-27' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Pull more MM updates from Andrew Morton: - "mm: make VMA flag semantics explicit, eliminate VM_SPECIAL" (Lorenzo Stoakes): Replace VM_SPECIAL with helpers describing mapping ownership and behavior. Enforce the mmap flag rules and convert affected drivers, removing ambiguous tests shared by driver mappings and ordinary memory. - "support kselftest on nommu platform" (Hajime Tazaki): Add opt-in mmap and mremap tests for NOMMU systems. Teach the runner to avoid its fork-dependent timeout command and document the build and runtime requirements. - "mm/collapse: separate a collapse from its callers" (Kiryl Shutsemau): Separate huge-page collapse from caller policy. Replace khugepaged identity checks with explicit permissions, and separate scanning from collapse with the mmap_lock drop in one place. - "mm: implement and use vma_has_anon_rmap(), silence KCSAN" (Lorenzo Stoakes): Provide a common helper for testing whether a VMA has anonymous reverse mappings. Document the locking rules, annotate intentional concurrent reads for KCSAN, and convert the core MM callers. - "mm/sparse: remove SECTION_MARKED_PRESENT and further cleanups" (David Hildenbrand): Remove SECTION_MARKED_PRESENT in favor of the early-section flag. Simplify sparse memory initialization, section metadata handling and related PFN validity checks. - "sh: remove NUMA and SPARSEMEM support" (Mike Rapoport): Remove SuperH NUMA and SPARSEMEM support. The extra memory banks have been unusable since the NO_BOOTMEM conversion, leaving only the code and data overhead. - "mm: Unify device DAX and HugeTLB vmemmap population paths" (Muchun Song): Unify the generic device DAX and HugeTLB vmemmap population paths and shared tail-page handling. Remove the duplicate DAX machinery while retaining the powerpc radix implementation. - "kselftest: mm: fix some failure of split_huge_page_test" (Yeoreum Yun): Fix huge-page split tests racing with khugepaged recollapse. Use pagemap and page flags instead of VMA-boundary assumptions which fail when glibc has already enabled THP. - "memcg: move memcgid refcount to objcg to unpin dying memcgs" (Bingfang Guo): Let dying memcgs be freed while swapped-out shmem still holds their IDs. Move ID references to reparentable objcgs, with the necessary swap accounting and RCU lifetime changes. - "mm/truncate: fix data loss when truncating straddling large folios" (Zhang Yi): Preserve out-of-range data when truncating straddling large folios. Fix a lookup race and split-failure handling, and handle minimum folio orders for the forthcoming ext4 iomap buffered I/O path. - "mm/damon: introduce damos quota goal target metric complement flag" (SJ Park): Let DAMOS quota goals use a metric's complement, so utilization can also express free-memory goals without adding separate metrics. Add the sysfs interface, documentation and tests. - "arm64/mm: Standardize printing for pgtable entries" (Anshuman Khandual): Use the generic formatter for arm64 page-table entries, ready for future wider entries. Move the safe-PTE-update check out of the header to avoid an include cycle. - "mm: kmsan: fix iounmap metadata teardown" (Dima Koziuk): Fix KMSAN metadata leaks on iounmap and failed ioremap allocations. Free backing pages before removing their mappings, and share the teardown with partial-allocation cleanup. - "mm/damon/core: preserve quota state when constructing schemes" (Karl Mehltretter): Preserve running DAMOS quota state while validating parameter updates. Even rejected updates could reset accounting and exceed the quota window; add tests for both accepted and rejected updates. - "mm/vmalloc: fix vmalloc_dump_obj VA lookup" (Ye Liu): Fix vmalloc_dump_obj() lookups for last-page addresses and allocations spanning vmap zones. These allocations were being missed in diagnostic output. - "mm: various (urgent?) fixes" (David Hildenbrand): Fix mmap charge leaks and hugetlb use-after-free, wrong-address unmapping, stuck locks and endless faults. Also preserve reservations on failed mremap and handle stale userfaultfd bits. - "maple_tree: fix maple_range_64 crashes in RCU mode" (Dimitris Charisis): Fix pointer and metadata confusion during RCU destruction of maple_range_64 nodes, avoiding double frees and invalid accesses. Add a regression test; no in-tree user currently uses this combination. - "mm: fix hugetlb NR_HUGETLB accounting on folio migration" (Hongfu Li): Fix hugetlb migration and preallocation accounting so /proc/vmstat retains the correct count and memory.numa_stat follows the folio to its new node. - "mm/damon: fix a minor bug, clean code, and add a test" (SJ Park): Fix 32-bit DAMON age overflow which made old regions look young. Share hugetlb folio acquisition code and add a regression test for the previously fixed last-region skipping bug. - "mm/damon/core: cleanup code, reduce stack usage, and add kunit" (SJ Park): Reduce kdamond stack usage and remove unused enums. Add deterministic PSI quota-goal tests which do not depend on the machine's current memory pressure. - "mm/damon: fix the temporal goal tuner's size quota conversion" (Donggeun Yoo): Bound the temporal tuner's quota conversion to prevent overflow and zero effective quotas, which could stop schemes making progress. Add boundary tests. - "Don't use GFP_DMA when calling dma_alloc_coherent" (Baoquan He): Remove redundant GFP_DMA flags from coherent DMA allocation calls. The DMA API already selects the zone from device limits and ignores the caller's flag. - "kselftest: mm: fix intermittent failure khugepaged test" (Yeoreum Yun): Propagate child-process failures in the khugepaged tests and prevent background collapse from racing their checks. This removes false passes and intermittent failures. - "MAINTAINERS: cover all hugetlb headers under HUGETLB SUBSYSTEM" (Enze Li): Cover all hugetlb headers in MAINTAINERS so get_maintainer.pl finds the right maintainers. Also label the closing hugetlb_cgroup.h include guard. Summary of the 65 singletons in this merge: The singletons include a few worthwhile performance fixes. Avoiding unnecessary reverse-map tree updates gave a reported 15.9% improvement in UnixBench's execl test on a 192-core x86 system. A reclaim retry fix stops defrag_mode from spinning under memory.low protection; a reported file-creation stress test ran 5.7 times faster, with far less memory pressure. Narrower hugetlb invalidations also spare KVM guests needless refaults: the reported Redis-in-VM P99 QPS penalty while punching holes fell from 7.09% to 1.45%. Several fixes prevent lost data or corrupted memory. Lazyfree huge-page races with mremap()/munmap() could lose data or access freed memory, and MADV_COLD could lose a concurrent write's dirty bit. Another fix prevents stale migration entries from outliving large folios. On filesystems with blocks smaller than a page, extending a file by 4 GiB or more could expose bytes written past the old EOF through mmap instead of zeroes. That is fixed, along with use-after-free races in PAGEMAP_SCAN during process exit and in memory-cgroup accounting on PREEMPT_RT kernels. Other fixes stop UFFDIO_MOVE spinning forever on pinned large folios, which could wedge other memory operations, and stop mremap() leaking commit charges until allocations fail under strict overcommit. A further fix keeps userfaultfd tracking intact on neighboring mappings. NUMA binding no longer prevents long-term pins when the chosen node has only movable memory, fixing QEMU/VFIO startup and io_uring buffer registration failures. MGLRU also gets a fix for early-boot crashes with memory cgroups disabled at boot, notably in small crash kernels. * tag 'mm-stable-2026-10-25-19-27' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (213 commits) mm: multi-gen LRU: fix NULL lruvec->pgdat deref with memcg disabled on cmdline mm/page_counter: use WRITE_ONCE() for emin/elow when parent is the root mm/memcontrol: publish null pointer before dropping css reference test_maple_tree: test maple_range_64 node in RCU mode maple_tree: fix maple_range_64 crashes in RCU mode mm/vma: avoid broken uffd merge on mremap tools/testing/shared: catch a failed posix_memalign() mm/damon/core: remove unreachable damos charge_{target,addr}_from mm/shrinker: allocate shrinker_info_unit from a dedicated kmem_cache riscv: mm: exclude invalid THP PMDs from page table check mm/damon/core: filter out damos address filter-split failed region fs/proc/task_mmu: pin mm_users in do_pagemap_scan() mm/mempolicy: apply bind policies against the scoped allocation zone mm/vmscan: reclaim every zone in per-node proactive reclaim mm/mremap: correctly uncharge accountable VMAs in error path mm/mremap: populate calculated fields in vrm state correctly MAINTAINERS: add an entry for MEMORY MANAGEMENT - MEMORY MAP mm: bdi: reset min_ratio after the sysfs attributes are gone mm/page_vma_mapped: continue past nonmatching huge PMDs selftests/mm: skip hugetlb cgroup v2 tests without the needed controllers ...
2 daysMerge tag 'mm-nonmm-stable-2026-10-25-14-57' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Pull non-MM updates from Andrew Morton: - "ocfs2: exit recovery thread on mount error path" (Joseph Qi): Stop OCFS2 recovery before freeing failed-mount state and replay slots, closing use-after-free and double-free races. Defer suballocator reclaim to break a transaction-lock deadlock with dismount. - "ocfs2: validate suballoc slot and bit of metadata blocks" (Joseph Qi): Validate OCFS2 metadata suballocator slots, bits and directory index block locations. Reject corrupt metadata with filesystem errors instead of BUGs or out-of-bounds accesses. - "ocfs2: deal with legacy signed name hash values" (Joseph Qi): Restore OCFS2 lookups for non-ASCII names stored with legacy signed hashes. Use stored xattr hashes during bucket splits to avoid duplicate entries and spurious ENOSPC failures. - "ocfs2: stabilize dentry names in file and setattr traces" (Cen Zhang): Snapshot OCFS2 names during file and setattr tracing to prevent rename races using freed storage or mismatched names and lengths. Preserve trace formats and the locked release open-count sample. - "panic: fix panic_force_cpu= redirect races and NMI bypass" (Bradley Morgan): Fix panic_force_cpu races and NMI redirection so crash-kernel CPU selection is honored. Preserve variable arguments on failed redirects and use a static message buffer. - "fat: allocate multiple clusters in fallocate" (Matheus Alves de Almeida): Allocate FAT clusters in batches for FALLOC_FL_KEEP_SIZE and batch FAT updates. This removes repeated single-cluster allocation overhead, particularly on synchronous mounts. - "scripts/gdb: fix radix tree lookup and stack depot diagnostic" (Ting-Han Hou): Fix GDB radix-tree lookup and its handling of XArray sibling, retry and zero entries. Also repair the stack-depot diagnostic for an out-of-range pool index. - "hung_task: Improve warning budget handling and task reporting" (Aaron Tomlin): Reset the hung-task warning budget after recovery so later hangs remain visible. Keep the configured limit intact and emit one summary per scan when detailed reports exhaust the budget. - "bootconfig: Reject unexpected data after null character and cleanups" (Masami Hiramatsu): Reject bootconfig data after an embedded null while accepting trailing padding. Validate the full input in the userspace tool, and retain internal tree sanity checks there rather than in the kernel. - "kbuild: GCOV cleanups following the prefer-atomic fix" (Konstantin Khorenko): Use the actual GCOV build flags in the prefer-atomic compiler probe. Move flag setup into scripts/Makefile.gcov and skip the probe when GCOV is disabled. - "ocfs2: xattr bucket validation fixes" (Joseph Qi): Accept valid OCFS2 xattr buckets spanning 512-byte blocks, avoiding false read-only remounts. Reject misaligned buckets and return errors instead of panicking on corrupt defrag metadata. - "ocfs2: fix metadata reservation for xattr value trees" (Joseph Qi): Reserve enough OCFS2 metadata for new and relocated xattr value trees. Fix shortfalls which could cause ENOSPC, dropped entries and leaked clusters on fragmented filesystems; remove duplicate reservations. - "Introduce arch_do_panic" (Mete Durlu): Add arch_do_panic() and move s390 and sparc handling out of generic panic code. The architecture-specific actions now follow the end-of-panic marker. - "checkpatch: userspace improvements" (Petr Vorel): Improve checkpatch's userspace detection and suppress kernel-only checks. Recognize standard inttypes macros and add explicit --userspace and --no-userspace overrides. - "ocfs2: validate dr_fs_generation of dir index root blocks" (Joseph Qi): Check OCFS2 directory index generations and leaf block numbers. Reject stale or misplaced blocks instead of using metadata left by a previously formatted filesystem. - "selftests/membarrier: Skip an unregistered memory barrier test on Musl" (Chris Gellermann): Skip the unregistered membarrier test when libc has already registered the command. Musl does this during thread creation, causing false failures in the multithreaded test. - "init: fix array boundary bugs in boot parameter parsing" (Wilson Felipe Pereira): Fix boot argument boundary cases which leave stale arguments in init's command line or panic when replacing the final environment variable. Clear the last slot and check duplicates before the limit. Summary of the 87 singletons in this merge: The OCFS2 singletons fix deadlocks between xattr updates and inline truncation, and during inode reclaim. Corrupt quota and extent metadata could also crash the kernel or corrupt memory; these paths now check the layout before using it. Other fixes close use-after-free and publication races around cluster reconfiguration, node failure, quota remount errors and shared refcount trees. New files now retain security labels from all stacked LSMs instead of silently dropping all but one. Valid xattr insertions also stop tripping FORTIFY on builds with counted arrays. Elsewhere, a lost wakeup could leave hardware-monitoring reads stuck in unkillable sleep and block further I2C traffic. That is fixed, as are kernel memory leaks in POSIX message-queue notifications and tmpfs casefold setup which could grow until memory is exhausted. A driver removal race which could crash the kernel is fixed too. The hibernation command through reboot() also stops taking the same mutex twice, avoiding a deadlock before suspension. On the boot side, bzip2 decoding now accepts valid full blocks emitted by lbzip2, fixing failures to boot those compressed kernels. Malformed bzip2 streams can no longer overflow the decode buffer, and LZ4 initrds are checked before the decoder can read past their end. FAT rejects geometry which overflows the data-area calculation on 32-bit systems, and rolls back entries when inode setup fails, preventing failed creations from reappearing after remount. The x86 XOR and RAID6 AVX paths also avoid imposing a slowdown on subsequent SSE code. * tag 'mm-nonmm-stable-2026-10-25-14-57' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (134 commits) scripts/gdb: fix stack depot out-of-bounds diagnostic scripts/gdb: fix radix tree lookup pointer handling ocfs2/cluster: remove zero-address nodes from IP tree on teardown ocfs2: snapshot the dentry name while tracing file release ocfs2: snapshot dentry names in file and setattr traces ocfs2/dlm: drain join handlers before releasing module text MAINTAINERS: update Markus's e-mail address mailmap: add entries for Andrew Jones stackdepot: stop preallocating after the final pool ocfs2: drain quorum work before removing the cluster watchdog: force console verbose when reporting lockups profiling: fix sampling step on 64-bit big-endian systems kernel/reboot: avoid potential deadlocks during suspension compat: avoid double rounding in times() ocfs2: pin owning modules for open debugfs files ocfs2/cluster: initialize heartbeat regions before publishing them selftests/proc: proc-pid-vm: fix unused variable warning on non-x86 ocfs2: pin refcount trees before dropping the lookup lock ocfs2: validate the xattr tree root of an indexed xattr block ocfs2/dlm: hold the lookup reference across convert AST enqueue ...
2 daysMerge tag 'erofs-for-7.4-rc1-2' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs Pull erofs fixes from Gao Xiang: "These patches address several new reported issues related to page cache sharing, the new superblock_share feature, and recent metadata path changes for file-backed mounts: - Hold real inodes to fix mmap usage with page cache sharing - Fix metadata reads at the end of file-backed images with sub-page block sizes - Ensure disallowing superblock_share when device= is specified - Drop unnecessary .read_folio() checks for file-backed mounts to allow tmpfs as a backing fs" * tag 'erofs-for-7.4-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs: erofs: drop unnecessary .read_folio() checks for file-backed mounts erofs: fix disallowing superblock_share if device= is set erofs: fix metadata reads at the end of file-backed images erofs: hold real inodes for shared files
2 daysMerge tag 'f2fs-for-7.4-rc1' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs Pull f2fs updates from Jaegeuk Kim: "In this round, key enhancements focus on introducing a dedicated metadata cache infrastructure and dynamically parameterizing on-disk block layouts and geometry macros. Moving meta, node, and compress blocks out of the VFS page cache removes the page == block size assumption for metadata, which along with dynamic block layout descriptions paves the way for large folio and page != block support in the future. We also opt in to multigrain timestamps, add bio entry-count throttling for asynchronous write_end_io completion, and expose the resizable_tail feature via sysfs. Alongside these features, critical bug fixes resolve race conditions across compression, mmap write faults, checkpoint/shutdown, and filesystem freeze, prevent write bio splitting and GC holes on sequential zoned devices, and strengthen on-disk sanity checks for SIT/NAT bitmaps, read-only curseg entries, and device aliasing. Additional stability patches address online resize, roll-forward recovery, atomic file operations, quota handling, and dirty inode syncing livelocks. Enhancements: - implement dedicated metadata cache for meta, node, and compress blocks to decouple metadata from page cache for large folio and page != block support - dynamically describe SIT, NAT, orphan, dentry, node, and xattr block layouts and parameterize block/sector/node conversion macros - opt in to multigrain timestamps - introduce max_atc_write_bio_entry_cnt sysfs node - expose resizable_tail feature via sysfs - avoid unnecessary reads in f2fs_update_meta_block() Bug fixes: - compress: force out-place update for all writes, allow pinning empty compressed files, and fix truncate/writeback and cache population races - zone: avoid bio split and GC target block grab failure on sequential zones - quota: convert inline quota files on quotaon, fix flush failure during freeze, and restore empty string mount options - atomic/mmap: disallow mmap write and data-modifying fallocate on atomic files, avoid truncate_inode_pages_final() on live inodes, and fix races in f2fs_vm_page_mkwrite() - resize/alias: refresh pinned allocation boundary and flush SIT journal during resize, and drop pending discards before reserving device alias - sanity check: bound SIT/NAT bitmaps by checkpoint pack, check all cur_*_segno[] on readonly images, and validate multi-device on device alias - recovery/cp: release removed xattr node in roll-forward recovery, invalidate curseg on change_curseg() failure, and return -EIO for lost inode block after cp_error - fix livelock in syncing dirty inodes and preserve APPEND/UPDATE ino entries - use bio_in_atomic() in f2fs_{read,write}_end_io() - fix 32-bit shift truncation in mount option bitmasks and defragment range And a number of minor bug fixes" * tag 'f2fs-for-7.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (79 commits) f2fs: compress: don't overwrite populated compress cache entry f2fs: fix to update superblock crc in sanity_check_area_boundary() f2fs: fix to fetch ino via ino_of_node() under cache lock f2fs: zone: fix to don't fail to grab GC target block on zoned device f2fs: don't use truncate_inode_pages_final() on live inodes f2fs: expose resizable_tail feature via sysfs f2fs: use BIT_ULL for mount option bitmasks f2fs: fix submit accounting for IPU writeback f2fs: fix to avoid potential reference count leak in do_garbage_collect() f2fs: refresh pinned allocation boundary after resize f2fs: flush SIT journal during filesystem resize f2fs: release a removed xattr node in roll-forward recovery f2fs: quota: fix quota flush failure during filesystem freeze f2fs: return -EIO for a lost inode block after cp_error f2fs: avoid unnecessary reads in f2fs_update_meta_block() f2fs: bound the SIT/NAT bitmaps by the checkpoint pack f2fs: opt in to multigrain timestamps f2fs: fix to use bio_in_atomic() in f2fs_read_end_io() f2fs: fix to use bio_in_atomic() in f2fs_write_end_io() f2fs: fix to invalidate curseg if change_curseg() fails ...
2 daysMerge tag 'fuse-update-7.4' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse Pull fuse updates from Miklos Szeredi: - Add dax backing and extent map support for famfs (John Groves, Miklos) - Support large folios (Joanne) - Add selftests and documentation of caching behavior (Luis Henriques) - Add FUSE_SYNCFS request (Jimmy Zuber) - Convert readdir cache to use folios (Tal Zussman) - Lots of bug fixes * tag 'fuse-update-7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse: (53 commits) fuse: handle extent map files in fuse_passthrough_fadvise() fuse: resolve extent maps in O(1) when possible fuse: add support for striped backing fuse: add extent map I/O support fuse: add extent map data structure fuse: add support for opening dax device as backing fuse: support opening 64 bit backing ID fuse: support 64 bit, server allocated backing ID fuse: add helpers for EIO return value with kernel message dax: use READ_ONCE() in dax_holder() dax: add fsdev_dax_from_file() fuse: fix copy_file_range reply handling race virtiofs: validate fixed-output response length fuse: don't d_drop() before d_splice_alias() virtio_fs: read the vring size under virtio_fs_mutex in ->get_tree fuse: validate folio state before pipe_buf_try_steal() in fuse_try_move_folio() fuse: rename fuse_direct_io() to fuse_do_direct_io() fuse: Forward vfs_fadvise to backing_file in passthrough mode selftests/fuse: add the missing FUSE_HAS_SYNCFS privilege test fuse: don't launder folios of a bad inode ...
2 daysMerge tag 'vfs-7.4-rc1.keyring' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs Pull vfs keyring updates from Christian Brauner: "The kernel has two keyrings that userspace fills with X.509 certificates at boot: .fs-verity for fs-verity built-in signatures and .dm-verity for dm-verity root hash signatures. Neither is linked into any process keyring. Hence, request_key() and KEYCTL_SEARCH can't find them. The only way for userspace to identify them is to read their serial number out of /proc/keys. That is not just a large file often the names can also be reused and appear multiple times which allows forging these keyrings. This adds two fixed special key ids, KEY_SPEC_DM_VERITY_KEYRING and KEY_SPEC_FS_VERITY_KEYRING next to KEY_SPEC_BPF_KEYRING. The latter went in through bpf-next this merge window. lookup_user_key() resolves the fixed key ids to the two keyrings. So userspace can add a dm-verity (fixed keyring id: -10) certificate with keyctl padd asymmetric "" -10 < cert.der and seal the keyring with keyctl restrict_keyring -10 without looking anything up first" * tag 'vfs-7.4-rc1.keyring' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs: Documentation: keys: document IDs added since KEY_SPEC_REQKEY_AUTH_KEY keys: add KEY_SPEC_FS_VERITY_KEYRING keys: add KEY_SPEC_DM_VERITY_KEYRING
2 daysMerge tag 'libnvdimm-for-7.4' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm Pull NVDIMM and DAX updates from Alison Schofield: "A small set of fixes: error handling corrections in the DAX core and bus code, a fix to the DAX file range comparison helpers, and two libnvdimm/pmem fixes for error and probe failure paths" * tag 'libnvdimm-for-7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm: dax: fix wrong error code returned from dax_dedupe_file_range_compare() dax/bus: Return errors for invalid mapping targets dax: fix dax_range_compare_iter() to use correct size and address offset dax: Return errors from dax_core_init() libnvdimm: Handle negative return from nvdimm_clear_poison() in nsio_rw_bytes() nvdimm/pmem: Release gendisk on probe failure
2 daysMerge tag 'for-7.4/io_uring-dmabuf-20261023' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux Pull io_uring dma-buf support from Jens Axboe: "This adds native dma-buf support to the I/O path, exposed through io_uring. It's been in development for a while and should be ready to go now. - dma-buf file I/O infrastructure: a dma_buf_io_ctx created through a new ->init_dma_buf_io_ctx file operation, and a dma_buf_io_map holding the device DMA mapping. The two are split so a mapping can be invalidated and re-established underneath a live context, with the map counting in-flight requests so it can be torn down safely. - A new iov_iter type for dmabuf maps, and a dma map backed bio type for the block layer, with raw block device support on top. - nvme-pci backend implementing dma-buf backed requests, including SGL support. - io_uring dmabuf backed registered buffers, built on a reworked buffer registration structure with an extended update path, regbuf import flags, an uncloneable flag for buffer types that can't be cloned, and cloning support for registered dma-bufs" * tag 'for-7.4/io_uring-dmabuf-20261023' of git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux: io_uring/dma-buf: don't fail fixed buffers without dma-buf support nvme-pci: detach dma-bufs only on removal block: reject dma-bufs larger than 4GiB io_uring/dma-buf: allow cloning registered dma-bufs dma-buf-io: document dma_buf_io_init_map dma-buf-io: fix typos in kernel docs block: fix indention for dma-buf checks io_uring/rsrc: add dmabuf backed registered buffers io_uring/rsrc: add regbuf import flags io_uring/rsrc: add uncloneable regbuf flag io_uring/rsrc: extend buffer update io_uring/rsrc: introduce buf registration structure nvme-pci: add SGL support for the dmabuf path nvme-pci: implement dma-buf backed requests nvme-pci: rename nvme_pci_sgl_set_data to nvme_pci_dma_iter_set_sgl block: add dma-buf support for raw bdev block: introduce dma map backed bio type block: always adjust bi_offset on bio_advance_iter iov_iter: add iterator type for dmabuf maps dma-buf: introduce initial file I/O infrastructure
3 daysRevert "media: Don't hide I²C or SPI drivers by default"Sakari Ailus
This reverts commit 3bf8c26a085c7b00dbec67a919b93fa8b7ad70e0. In order to avoid exposing fairly rarely needed drivers to ordinary users, revert this patch. People needing these drivers will need to enable CONFIG_EXPERT until we have a better solution for this. Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Link: https://patch.msgid.link/20261027100916.4053512-1-sakari.ailus@linux.intel.com Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Message-ID: <20261027100916.4053512-1-sakari.ailus@linux.intel.com>
3 dayserofs: drop unnecessary .read_folio() checks for file-backed mountsGao Xiang
Since currently dedicated EROFS-owned meta inodes are used for file-backed mounts, .read_folio() checks are now redundant. As a result, EROFS file-back mounts can now apply to tmpfs too. Fixes: e587a984d332 ("erofs: use dedicated meta inodes for file-backed mounts") Signed-off-by: Gao Xiang (Docker) <xiang@kernel.org>
3 daysMerge tag 'backlight-next-7.4' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight Pull backlight updates from Lee Jones: "Improvements & Fixes: - Qualcomm WLED: Fix a NULL pointer dereference in `wled_remove()` by setting platform driver data in `wled_probe()` - Qualcomm WLED: Fix the WLED3 brightness register stride to prevent consecutive string writes from overlapping - Qualcomm WLED: Read back the hardware-programmed brightness at probe, expose it via `get_brightness()`, and prevent unbalanced OVP IRQ enabling - TI LM3630A: Cancel delayed work synchronously after freeing the IRQ and before destroying the workqueue in `lm3630a_remove()` Cleanups & Refactoring: - Ilitek ILI9320 / Kinetic KTD253: Fix spelling typos in comments" * tag 'backlight-next-7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight: backlight: qcom-wled: Read back the programmed brightness at probe backlight: qcom-wled: Fix unbalanced OVP IRQ enable at probe backlight: qcom-wled: Fix WLED3 brightness register stride backlight: qcom-wled: Fix NULL pointer dereference in wled_remove() backlight: lm3630a: Cancel delayed work before destroying workqueue backlight: ili9320/ktd253: Fix typos in comments
3 daysMerge tag 'leds-next-7.4' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/lee/leds Pull LED updates from Lee Jones: "New Support & Features: - Core: Add `led_trigger_notify_hw_control_changed()` to allow drivers to notify the core of autonomous hardware control transitions - Core: Add the `hw_offloaded()` trigger callback and `trigger_may_offload_to_hw` sysfs attribute to expose hardware-offloaded triggers - Netdev Trigger: Implement the `hw_offloaded()` callback to report hardware control state to the LED core - Analog Devices LTC3208: Add support for the LTC3208 7-channel multi-display I2C LED driver - ChromeOS EC: Implement the `hw_offloaded()` callback for the `chromeos-auto` trigger - CZ.NIC Turris Omnia: Implement the `hw_offloaded()` callback and declare `omnia-mcu` as a hardware control trigger - STMicroelectronics ST1202: Add hardware-accelerated blink support via `blink_set()` Improvements & Fixes: - Class: Always hold the `led_access` mutex in `brightness_show()` to avoid exposing transient registration states - Class: Deactivate active hardware control triggers when writing to the `brightness` sysfs attribute - Core: Enforce strict validation in `led_trigger_is_hw_controlled()` and warn on legacy fallback paths - Flash Class: Initialize the fault variable in `flash_fault_show()` to prevent undefined behavior when callbacks perform bitwise ORs - Kinetic KTD2692: Pass the driver context directly to `regulator_disable_action()` to prevent a NULL pointer dereference during error unwinding - Maxim MAX77705: Use `fwnode_for_each_child_node_scoped()` in `max77705_add_led()` to prevent child node reference leaks on error paths - NXP PCA9532: Check the return value of `i2c_smbus_read_byte_data()` in `pca9532_getled()` to avoid integer underflow on read errors - Qualcomm WLED: Fix a NULL pointer dereference in `wled_remove()` by setting platform driver data in `wled_probe()` - Qualcomm WLED: Fix the WLED3 brightness register stride to prevent consecutive string writes from overlapping - Qualcomm WLED: Read back the hardware-programmed brightness at probe, expose it via `get_brightness()`, and prevent unbalanced OVP IRQ enabling - STMicroelectronics ST1202: Clear unused PWM pattern slots in `pattern_set()` and `blink_set()` to prevent unintended output when sharing the global sequencer - STMicroelectronics ST1202: Program and cap the channel current according to `max_brightness` across brightness, blink, and hardware pattern modes, and scale pattern brightness to the 12-bit PWM range - STMicroelectronics ST1202: Retain a reference to each child LED firmware node for the lifetime of the device - STMicroelectronics ST1202: Use only the blocking `brightness_set_blocking()` callback to avoid sleeping in atomic context during I2C transfers - TI LM3692x: Check the final register write in `lm3692x_leds_enable()` to prevent regulator/GPIO leaks and an inconsistent enabled state - TI LP8860: Fix a `device_node` reference leak in `lp8860_probe()` using `__free(device_node)` Cleanups & Refactoring: - Core: Move `led_trigger_is_hw_controlled()` and `led_trigger_group` from `led-class.c` into `led-triggers.c` - Core: Replace conditional `set_bit()`/`clear_bit()` patterns with `assign_bit()` and `__assign_bit()` - Flash Class: Simplify `flash_fault_show()` using `sysfs_emit_at()` and omit the trailing space - Maintainers: Add Griffin Kroah-Hartman as an LED subsystem reviewer - Intel SS4200: Fix a spelling typo in a comment - ISSI IS31FL32xx: Convert DT-specific parsing helpers to generic device and fwnode property APIs - NXP PCA955x: Drop redundant intermediate platform data and allocate the LED array using a flexible array member - Qualcomm LPG: Convert LED and channel parsing to fwnode APIs and avoid leaving `default_trigger` uninitialized - Skyworks AAT1290: Use `ARRAY_SIZE()` when allocating `mm_current_scale` to match the target pointer type for type-aware allocators - STMicroelectronics ST1202: Introduce a `st1202_iled_max()` helper to unify channel current ceiling calculations - STMicroelectronics ST1202: Standardize variable and macro naming, fix helper spelling, and use `u8` consistently instead of `uint8_t` - Syscon: Convert from OF-specific property helpers to the generic device property and fwnode APIs Device Tree Binding Updates: - Core: Allow PHY RX triggers (`phy[0-9]+rx`) in `linux,default-trigger` - Core: Standardize example indentation across multiple LED and backlight binding schemas - Analog Devices LTC3208: Document the LTC3208 multi-display LED driver - LaCie netxbig: Convert LED bindings to DT schema - Motorola CPCAP: Convert LED bindings to DT schemaLEDs for v7.4" * tag 'leds-next-7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/leds: (49 commits) dt-bindings: leds: lacie,netxbig-leds: Convert to DT schema leds: pca955x: Drop platform data and allocate LEDs with the device dt-bindings: leds: Use consistent indentation in the example backlight: qcom-wled: Read back the programmed brightness at probe backlight: qcom-wled: Fix unbalanced OVP IRQ enable at probe backlight: qcom-wled: Fix WLED3 brightness register stride backlight: qcom-wled: Fix NULL pointer dereference in wled_remove() dt-bindings: leds: Allow PHY RX triggers MAINTAINERS: Add myself as a LED SUBSYSTEM reviewer leds: trigger: Add led_trigger_notify_hw_control_changed() interface leds: trigger: Enforce strict checks in led_trigger_is_hw_controlled() leds: trigger: netdev: Implement hw_offloaded() callback leds: turris-omnia: Implement hw_offloaded() trigger callback and declare hw_control_trigger leds: cros_ec: Implement hw_offloaded() trigger callback leds: trigger: Add hw_offloaded() callback and provide trigger_may_offload_to_hw attribute leds: trigger: Move led_trigger_group to the right place leds: class: Remove hardware control trigger when writing brightness leds: trigger: Move led_trigger_is_hw_controlled() to the right place leds: class: Always protect brightness_show() with led_access dt-bindings: leds: leds-cpcap: Convert to DT schema ...
3 daysMerge tag 'mfd-next-7.4' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd Pull MFD updates from Lee Jones: "New Support & Features: - Cirrus Logic CS42L43: Add support for the CS42L44 variant - Khadas MCU: Add support for the VIM4 MCU variant along with per-variant fan duty-cycle levels and optional fan supply regulator support - Maxim MAX77705: Add support for the PASS2 hardware revision - MediaTek MT6397: Add AUXADC sub-device support for MT6397 - Motorola CPCAP: Support per-board sub-device compositions and add the Tegra20 Mot composition - ROHM BD73800: Add support for the BD73800 PMIC core, regulator, RTC, clock gate, and GPIO sub-devices - TI LM3533: Add VIN regulator supply support, configure initial backlight mapping mode from Device Tree, and implement the `backlight_scale` property - X-Powers AC200: Add support for the AC200 I2C mixed-signal companion IC Improvements & Fixes: - Cirrus Logic CS42L43: Synchronize SoundWire enumeration work in `remove()` before devres cleanup begins - Dialog DA903x: Manage IRQ work cancellation and sub-device removal via devres to prevent use-after-free during teardown - Dialog DA9150: Balance `enable_irq_wake()` with `disable_irq_wake()` during probe failure and driver removal - Intel LPSS: Add DMI quirks for Dell Latitude 5285 and 7275 to ignore ACPI resource conflicts on the I2C4 controller - Intel Quark I2C/GPIO: Manage the fixed-rate clock and its clkdev lookup with devres to fix a resource leak on unbind - Maxim MAX77705: Select `REGMAP_I2C` and `REGMAP_IRQ` in Kconfig to fix build errors - Qualcomm WCD934x: Initialize the parent DMA mask to suppress "DMA mask not set" warnings on child devices - Qualcomm WCD934x: Pass the valid device pointer to `dev_err_probe()` on IRQ lookup failure to avoid a NULL pointer dereference - Rockchip RK8xx: Register the poweroff handler in the atomic `SYS_OFF_MODE_POWER_OFF` phase so polling I2C transfers complete during shutdown - ST-Ericsson AB8500: Use `devm_mfd_add_devices()` to prevent leaking child devices on probe failure - TI BQ257xx: Mark self-modifying BQ25792 configuration registers as volatile - TI LM3533: Set `coherent_dma_mask` to zero to suppress "DMA mask not set" warnings - TI TPS65217: Check for errors during IRQ initialization and masking, and manage IRQ domain and wake teardown with devres - TI TWL: Unregister the auxiliary platform device via a devres action on probe failure and driver unbind Cleanups & Refactoring - Core: Convert drivers from deprecated `SIMPLE_DEV_PM_OPS()` to `DEFINE_SIMPLE_DEV_PM_OPS()` and `pm_sleep_ptr()` - Core: Fix spelling mistakes in comments across various MFD drivers and headers - Maintainers: Add ROHM BD73800 PMIC files under the ROHM PMIC entry - Maintainers: Specify the `for-mfd-next` branch for the MFD and Syscon git trees - Dialog DA9062: Use `DEFINE_RES_IRQ_NAMED()` for IRQ resource definitions - Intel LPSS: Simplify DebugFS handling by dropping redundant error checks and intermediate dentry variables, using octal permissions, and switching to `debugfs_remove()` - Khadas MCU: Convert MFD cell arrays to `const` and use `MFD_CELL_NAME()` - ST-Ericsson AB8500: Fix a spelling typo in a comment - TI LM3533: Convert from platform data to Device Tree bindings and pass only regmap and light sensor presence to child devices - TI LM3533: Remove driver-specific regmap wrappers, redundant pdata helpers, and unnecessary `extern` qualifiers, and use `dev_groups` for sysfs attributes - Wolfson WM831x: Fix a spelling typo in a comment Device Tree Binding Updates - HiSilicon Hi6421 SPMI: Fix the compatible string to match `hisilicon,hi6421-spmi` - MediaTek MT6357: Allow an `adc` child node - MediaTek MT6360: Allow two-cell interrupt specifiers with trigger flags - MediaTek MT6397: Document the `#sound-dai-cells` property - MediaTek MT6397: Document the battery-backed NVMEM layout under the RTC child node - MediaTek MT6397: Document the MT6323 PMIC EFUSE child node - Motorola CPCAP: Convert MFD and power button bindings to DT schema and document the Mapphone and Mot compositions - Qualcomm SPMI PMIC: Document the PM4125 audio codec compatible - Qualcomm SPMI PMIC: Document the PMAU0102 PMIC compatible - Qualcomm TCSR: Document the MSM8952 TCSR compatible - Rockchip RK805: Fold the pin controller binding into the RK805 PMIC DT schema - ROHM BD73800: Document the BD73800 PMIC and its regulators - ROHM PMIC: Factor out common pin properties into `rohm,pmic-pins.yaml` and reference them across BD71815, BD71828, and BD72720 bindings - ST-Ericsson AB8500: Document AB8500 and AB8505 buck converter regulators - ST-Ericsson AB8500: Document codec audio graph ports, sound DAI cells, and analog microphone wiring properties - ST-Ericsson DB8500 PRCMU: Deprecate the `db8500-prcmu-regulators` child node and make it optional - Syscon: Document the Ambarella CV75 secure scratchpad compatible - TI BQ25703A: Add the BQ25798 compatible with fallback to BQ25792 - TI Keystone: Convert Device State Control bindings to DT schema - TI LM3533: Document the LM3533 LED controller, backlight, and indicator LED bindings - TI LP3943: Convert MFD and PWM bindings to DT schema - TI TPS61050: Convert bindings to DT schema - TI TPS65086: Make the `regulators` child node optional - TI TPS65910: Document `wakeup-source` and GPIO hog child nodes - TI TWL6040: Convert bindings to DT schema and align property names with the driver - X-Powers AC200: Document the AC200 mixed-signal companion IC" * tag 'mfd-next-7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (74 commits) dt-bindings: mfd: db8500-prcmu: Deprecate EPOD regulators dt-bindings: mfd: syscon: Add Ambarella CV75 secure scratchpad dt-bindings: mfd: rockchip,rk805: Convert pinctrl to DT schema mfd: intel-lpss: Add Dell Latitude 7275 to the resource conflict quirk mfd: intel-lpss: Add resource conflict quirk for Dell Latitude 5285 mfd: tps65217: Use devres for IRQ domain and wake teardown mfd: tps65217: Check return value when masking interrupt sources mfd: tps65217: Fix NULL pointer dereference on IRQ init failure dt-bindings: mfd: qcom,spmi-pmic: Add compatibles for pm4125-codec mfd: bq257xx: Mark self-modifying BQ25792 registers volatile dt-bindings: mfd: mediatek: mt6397: describe the RTC's nvmem layout mfd: mt6397-core: Add mt6397 AUXADC support mfd: max77705: Mark PASS2 revision as supported mfd: ab8500: Fix child device leaks on probe failure dt-bindings: mfd: Add MT6397 sound DAI cells dt-bindings: mfd: mediatek: mt6397: Add mt6323 PMIC EFUSE dt-bindings: mfd: hisilicon: Fix Hi6421 SPMI compatible dt-bindings: mfd: ti,bq25703a: Expand to include BQ25798 dt-bindings: mfd: Allow MT6360 interrupt flags dt-bindings: mfd: mediatek: Allow MT6357 ADC ...
3 daysMerge tag 'ata-7.4-rc1' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/libata/linux Pull ata updates from Niklas Cassel: - Make ata_generic refuse to bind to non-IDE devices (me) - Add missing <linux/pm_runtime.h> includes (Vladimir) - Add pata_cswarp driver for the Amiga CS-Lab Warp card (Paolo) - Fix a use-after-free and a parport attach bug in pata_parport (Pei) - Switch ahci_da850 to DEFINE_SIMPLE_DEV_PM_OPS() (Li) - Documentation and kernel-doc fixes (Karl, Bart, me) - Remove the broken sata_inic162x driver (Ethan) - Fix probe() error paths in libata, libahci and several drivers (me) - Fail probe in sata_dwc_460ex if host activation fails (Nikolay) - Use the standard DMA engine API in pata_arasan_cf (Frank) - Abort multi-sector pass-through commands when multi_count is 0 (Hui) - Replace kmap_atomic() with kmap_local_page() in libata-sff (Danish) - Revert the no longer needed JMB582/JMB585 32-bit DMA quirk (Mario) - Enable SATA LED presence indication in sata_mv (Carlos) - Re-enable FBS after error handling on a port multiplier (Kyrylo) - Fix NO_FUA quirks shadowed by earlier quirk entries (me) - Do not overwrite the Marvell PATA quirk port mask in ahci (zhoumin) - Ignore libata.force transfer modes the host does not support (Rand) - Fix a race between IRQ deferral and ata_sff_flush_pio_task() (me) * tag 'ata-7.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/libata/linux: (26 commits) ata: libata-sff: fix race between IRQ deferral and ata_sff_flush_pio_task() ata: libata-core: Ignore forced transfer modes the host does not support ata: ahci: preserve preset port masks ata: libata-core: Fix NO_FUA quirks shadowed by earlier quirk entries ata: libahci: re-enable FBS after error handling on a port multiplier ata: sata_mv: enable SoC SATA LED presence indication ata: libata: Fix scsi_done() documentation Revert "ata: ahci: force 32-bit DMA for JMicron JMB582/JMB585" ata: pata_parport: fix parport attach idr_alloc for ata: libata-sff: replace kmap_atomic() with kmap_local_page() ata: libata-scsi: abort multi-sector pass-through commands when multi_count is 0 ata: pata_arasan_cf: use standard DMA engine API ata: sata_dwc_460ex: Don't enable interrupt if libATA core registration fails ata: libata-core: Fix the ata_host_register() kdoc ata: libata: Do not leave ata_host_stop() registered when activation fails ata: libahci: Free the IRQs when activating a multi-IRQ host fails ata: sata_fsl: Fix use-after-free of host_priv on probe() failure ata: ahci_st: Assert the power down reset in the probe() error path ata: ahci_st: Do not ignore errors when getting the reset controls ata: sata_inic162x: remove dangerous broken driver ...
3 daysfuse: handle extent map files in fuse_passthrough_fadvise()John Groves
This addresses a collision between the pending backing_file fadvise patch and the new extent-mapping code for famfs (which falls into the passthrough bucket. A file opened with FOPEN_PASSTHROUGH on an extent map backing has no backing file: fuse_passthrough_open() returns before setting ff->passthrough and ff->cred. fuse_file_fadvise() routes every FOPEN_PASSTHROUGH file to fuse_passthrough_fadvise(), which installed the NULL ff->cred on the task with override_creds() and then passed the NULL backing file to vfs_fadvise(). Any posix_fadvise(), readahead() or madvise(MADV_WILLNEED) on such a file oopsed. fio triggers it at file open with its default invalidate and fadvise_hint settings. Fall back to generic_fadvise() when there is no backing file, as the other passthrough helpers fall back to their extent map or generic implementations. generic_fadvise() already ignores advice on DAX inodes while keeping the EINVAL and ESPIPE checks. Reported-by: Aravind Ramesh <arramesh@micron.com> Fixes: 69f77a06ffad ("fuse: Forward vfs_fadvise to backing_file in passthrough mode") Tested-by: John Groves <john@groves.net> Signed-off-by: John Groves <john@groves.net> Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
3 daysMerge tag 'i2c-7.4-part2' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/andi.shyti/linux Pull more i2c updates from Andi Shyti: "This introduces dynamic transfer timeouts in the I2C core, already used by qcom-geni. Alongside some driver improvements and fixes, it also brings in the Rust I2C pull request. Core: - core, qcom-geni: add and use a dynamic timeout helper - acpi: fix adapter reference leak when creating I2C clients Drivers: - imx: support reversed address direction and no-start transfers - designware: queue block data reads once length is known - mt7621: skip the second data register for chunks up to 4 bytes - sh_mobile: ensure IRQs are freed before unmapping registers Rust: - Remove unsound device-to-client reference conversion" * tag 'i2c-7.4-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/andi.shyti/linux: i2c: sh_mobile: request IRQs after mapping registers i2c: imx: add I2C_M_REV_DIR_ADDR and I2C_M_NOSTART i2c: mt7621: fix copying uninitialized kernel stack with reduced page_len i2c: designware: queue only one read command for block reads i2c: acpi: Fix adapter reference leak in i2c_acpi_new_device_by_fwnode() i2c: qcom-geni: Add dynamic transfer timeout based on transfer length and frequency i2c: core: Add i2c_update_timeout() helper for dynamic transfer timeouts rust: i2c: remove TryFrom<&Device> implementation for &I2cClient
3 daysMerge tag 'driver-core-7.4-rc1-2' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/driver-core/driver-core Pull driver core fixes from Danilo Krummrich: - Make parent-lock requirements per device type instead of per bus, fixing a use-after-free on USB disconnect by limiting the requirement to USB interfaces, which retain a reference to their parent - Honor parent-lock requirements during deferred and asynchronous probing, fixing USB interface probe races, including duplicate endpoint creation attempts in sysfs * tag 'driver-core-7.4-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/driver-core/driver-core: driver core: take parent lock in async device attach driver core: take parent lock on deferred probe driver core: fix parent lock use-after-free on USB disconnect
3 daysMerge tag 'hwmon-for-v7.4' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging Pull hwmon updates from Guenter Roeck: "New drivers: - Axiado AX3000 and AX3005 PWM fan controller - AX3000/AX3005 TSADC - HONOR FMI-XX - Minisforum UM780 XTX EC monitoring and fan control - pmbus: MAX20826, MAX20855B, MAX20908, MAX20912, MAX20826, and MAX20916 - pmbus: Infineon TDA38740/TDA38725 Added support to existing drivers: - asus-ec-sensors: ROG STRIX X670E-A GAMING WIFI and ROG STRIX Z490-A GAMING - asus_rog_ryujin: ROG Ryujin III 360 - dell-smm: Dell 16 DC16250, Dell OptiPlex 7090, Dell Precision 3650 Tower, Add Latitude 5420 - it87: IT8613E - k10temp: 1ah/80h devices. Drop support for Hygon devices (support to be re-added with separate patches later) - lm63: Sensylink CTF2301 - nct6683: MSI MAG B550M MORTAR MAX WIFI, MSI MAG B650 TOMAHAWK WIFI, MSI MAG B650M MORTAR WIFI (MS-7D76), and MSI MAG B850M MORTAR WIFI - nct6775: NCT6122D and NCT6126D - pmbus/isl68137: Renesas RAA229639 and RAA229640 - pmbus/max34440: ADPM12300 - pmbus/tps25990: TPS1689 - pmbus/tps53679: TPS53622, TPS53659 and TPS536C7 - pmbus/xdpe1a2g7b: xdpe1a2g7c - sht4x: Sensirion STS4x - socfpga: Agilex 5 - yogafan: Lenovo Yoga Pro 9 16IMH9, Yoga 14cACN 2021, IdeaPad 3 15ALC6 Ub, Yoga 740-15IML Core updates: - Support for currX_emergency and inX_[l]emergency attributes Notable bug fixes and changes: - Add missing locks to corsair-cpro, ftsteutates, nct7904, and npcm750-pwm-fan drivers - Fix jiffies wraparound in tmp102 and tmp108 drivers - Documentation updates (document missing chip support, typo fixes, clarifications) - pmbus/ltc4286: Add writable shunt_resistor sysfs attribute - coretemp: Document sysfs numbering and label meaning, fix handling of isolated SMT siblings, read TjMax only when refreshing the temperature, refresh the temperature on the first read, and return -ENODATA for invalid temperature readings - spd5118: Avoid probing when 16-bit addressing is enabled, and select page 0 unconditionally during probe - arctic_fan_controller: Default PWM cache to MCU 40%, Dual-license GPL-2.0-or-later OR BSD-2-Clause, and update maintainer address Various other minor bug fixes and improvements" * tag 'hwmon-for-v7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (97 commits) hwmon: (npcm750-pwm-fan) serialize PWM register updates hwmon: (nct7904) serialise the watchdog and sensors hwmon: (ftsteutates) serialise the watchdog and sensors hwmon: (acpi_power_meter) Fix 18.45 TW bug hwmon: (sht3x) Return the consumed count for heater writes hwmon: (mcp9982) Update the interval cache only after successful writes hwmon: (gigabyte_waterforce) reject short input reports hwmon: (coretemp) Fix handling of isolated SMT siblings hwmon: (coretemp) Document sysfs numbering and label meaning hwmon: (asus_wmi_sensors) Reword BIOS upgrade advice hwmon: Replace __MODULE_STRING() with __stringify() hwmon:(pmbus/xdpe1a2g7b) Add support for xdpe1a2g7c controller dt-bindings: trivial-devices: Add support for XDPE1A2G7C hwmon: (pmbus/isl68137) Add Renesas RAA229639 and RAA229640 dt-bindings: hwmon: pmbus/isl68137: Add Renesas RAA229639 and RAA229640 hwmon: (coretemp) Read TjMax only when refreshing the temperature hwmon: (pmbus/ibm-cffps) Avoid format truncation warnings hwmon: (dell-smm) Add Dell 16 DC16250 to fan control whitelist hwmon: (nct6683) Add more MSI boards to list of tested boards hwmon: (nct6683) Add MSI B850M to list of tested boards ...
3 daysMerge tag 'tpm-v7.4-rc1-rebased' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd Pull TPM updates from Jarkko Sakkinen: "Features and Improvements: - improve tpm_crb behaviour by putting the chip into an idle state for each transmission. This improves firmware behavior as the kernel now better cancels its state as if it had never touched it in the first place. - Drop a spurious (but harmless) wmb() from tpm_pm_resume(). - tpm_tis_i2c now requests the optional reset control and deasserts it before communicating with the TPM. - replace SIMPLE_DEV_PM_OPS with DEFINE_SIMPLE_DEV_PM_OPS across the whole driver stack. - Validate during driver initialization that no duplicate banks are received. It's unlikely corruption but since it happening would cause oops I decided to retain it as a sanity check. Bug fixes: - tpm2_probe() misinterpreted a transport error on TPM2_GetCapability as the chip not being probed, and the chip was detected as a TPM 1 chip. This can happen in reality only in the extremely rare case of bus corruption. Despite the odds, a fix was landed, as it is still technically a legit bug fix. - It is not really worth the time and energy to go into details as tpm_nsc is a somewhat legacy driver, but one null pointer dereference bug and another causing use-after-free were fixed. - read() of /dev/tpm{,rm}0 with zero size caused a pending response to be consumed. Just return immediately" * tag 'tpm-v7.4-rc1-rebased' of git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd: tpm: reject duplicate PCR banks in tpm2_get_pcr_allocation tpm: use DEFINE_SIMPLE_DEV_PM_OPS and pm_sleep_ptr() char: tpm: Use SIMPLE_DEV_PM_OPS for ibmvtpm power management tpm: tis_i2c: Deassert optional reset line before probing tpm: Remove ineffective wmb() from tpm_pm_resume() tpm: Call cmd_ready/go_idle for each command transmission tpm: fix zero-length read discarding the pending response tpm: tpm_nsc: stop using the cleanup callback as dev.release tpm: tpm_nsc: fix NULL pointer dereference on init failure tpm: tpm2_probe: propagate transport errors
3 daysMerge tag 'cxl-for-7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxlLinus Torvalds
Pull CXL updates from Dave Jiang: "The headline item is the first part of support for Dynamic Capacity Devices (DCD). It covers flagging DCD support in the mailbox, reading the dynamic capacity configuration from the device, gathering DSMAS data for the DCD partitions, and configuring the dynamic capacity interrupts. It also adds a documentation update and a cleanup that enforces partition ordering. DCD is not enabled yet with these code changes. Patches are applied to reduce the whole set in order to relief the burden of very large patch set review. Zero sized HDM decoders are now allowed, along with cxl_test support for them. There is also a set of decoder hardening patches for switch decoder enumeration. Latency calculations now account for link width and use consistent units. The GPF timeout programming has been reworked. The pull also has a number of misc patches. A large number of bug fixes against pre-existing issues make up the rest of the pull. Many of these were flagged by review of patches posted to the mailing list by sashiko. Also adding Richard Cheng as a reviewer (R) to the CXL sub-system" * tag 'cxl-for-7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl: (49 commits) cxl/events: Test CME counter expiry with equality, not bitwise AND Documentation/cxl: Document DPA partition layout and ordering rules cxl/core: Enforce partition order/simplify partition calls cxl/mem: Configure dynamic capacity interrupts cxl/pci: Factor out interrupt policy check cxl/events: Split event msgnum configuration from irq setup cxl/cdat: Gather DSMAS data for DCD partitions cxl/mem: Read dynamic capacity configuration from the device cxl/mbox: Flag support for Dynamic Capacity Devices (DCD) cxl/acpi: Convert QTG _DSM latencies to picoseconds cxl: Account for link width in latency calculation cxl/port: Convert PCIe link latency to nanoseconds cxl/pci: Update only the Port GPF timeout fields cxl/pci: Program the Port GPF timeouts before caching the DVSEC cxl/pci: Use the Device GPF DVSEC for restricted endpoints cxl/port: Attach endpoints to a dport under the lock that pins it cxl/core: Hold the dport host lock across dport lookup and use cxl/port: Clear cached dport pointers when a dport is removed cxl/region: Warn on user region position mismatch cxl/acpi: Check ACPI companion before use ...
4 daysf2fs: compress: don't overwrite populated compress cache entryChao Yu
f2fs_cache_compressed_page() looks up the entry of blkaddr w/ f2fs_find_cache(), and then grabs it w/ f2fs_grab_cache() and F2FS_CACHE_LOCK_CREATE. If another reader populates the entry in between, f2fs_grab_cache() returns that uptodate entry, and we will overwrite its ino and data. Before the compress cache was converted to the generic cache, add_to_page_cache_lru() failed w/ -EEXIST in this case, and the existing page was left untouched. Normally, the racer is a reader of the same block of the same inode, so both copies are the same, let's just back off, as f2fs_ra_meta_caches() does. A block address can only be owned by one inode at a time, the block can not be freed and reused by another inode during population, since the reader holds the locks of the cluster's pagecache pages until decompression completes, and truncation must lock these pages before freeing blocks. So if the uptodate entry was cached by another inode, it's a bug, and one of the copies must be stale, let's report the bug, and drop the entry, then readers will load the block from disk. Cc: stable@kernel.org Fixes: 6a78d0488116 ("f2fs: cache: use compress cache") Signed-off-by: Chao Yu <chao@kernel.org> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
4 daysf2fs: fix to update superblock crc in sanity_check_area_boundary()Chao Yu
This patch fixes the bug reported by Sashiko: We should update superblock crc along w/ raw_super->segment_count in sanity_check_area_boundary() if sb_checksum feature is enabled. Cc: stable@kernel.org Fixes: d440c52d3151 ("f2fs: support superblock checksum") Signed-off-by: Chao Yu <chao@kernel.org> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
4 daysf2fs: fix to fetch ino via ino_of_node() under cache lockChao Yu
In f2fs_writeback_node_caches(), it's better to fetch ino via ino_of_node() under cache lock, otherwise, node cache content may become stale after cache is unlocked due to racing w/ truncation. Commit 493b9dc8b52c ("f2fs: cache: use node cache") fixes similar issue in f2fs_flush_inline_data() introduced in commit 34c061ad85a2 ("f2fs: Avoid double lock for cp_rwsem during checkpoint"). Cc: stable@kernel.org Fixes: 2049d4fcb057 ("f2fs: avoid multiple node page writes due to inline_data") Signed-off-by: Chao Yu <chao@kernel.org> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
4 dayserofs: fix disallowing superblock_share if device= is setZhan Xusheng
superblock_share together with device= is rejected in erofs_fc_fill_super(): if (test_opt(&sbi->opt, SUPERBLOCK_SHARE) && sbi->devs->extra_devices) return -EINVAL; but extra_devices is kept in sbi->devs, not in sbi->opt, and erofs_sb_share_test_super() compares only the backing inode, the fsoffset and sbi->opt. So once the image is mounted with superblock_share, a second mount with superblock_share,device= matches that superblock and get_tree_super() reuses it without calling fill_super() at all. The same command line therefore either fails with -EINVAL or succeeds with device= quietly dropped, depending on whether a compatible mount already exists. Refuse to match a context that brought device= options, so that it gets a superblock of its own and fill_super() decides as it does today. Only the incoming context can be tested: a shared superblock may have extra_devices set itself, because erofs_scan_devices() fills the device table from the image when no device= was given. Fixes: cd4108319bb3 ("erofs: reuse superblock for file-backed mounts") Signed-off-by: Zhan Xusheng <zhanxusheng@xiaomi.com> Reviewed-by: Gao Xiang <xiang@kernel.org> Signed-off-by: Gao Xiang (Docker) <xiang@kernel.org>
4 daysMerge tag 'parisc-for-7.4-rc1' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux Pull parisc updates from Helge Deller: - fix out-of-bounds read in eisa_enumerator driver - drop redundant pte_xxx() macros and use common macros - code cleanup in eisa_enumerator driver - typo fixes in comments in various header files * tag 'parisc-for-7.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux: parisc: eisa_enumerator: Code and whitespace cleanups parisc: eisa_enumerator: Fix out-of-bounds reads of the EEPROM buffer parisc: Drop redundant implementation of ptep_set_wrprotect() parisc: Drop redundant implementation of pte_same() parisc: Drop own implementations for ptep_get() and ptep_test_and_clear_young() parisc: fix typos in comments in parport.c parisc: fix typos in comments in sba_iommu.c parisc: fix typos in comments in pdc_stable.c parisc: fix typos in comments in dino.c parisc: fix typos in comments in ccio-dma.c parisc: fix typos in comments in memcpy.c parisc: fix typos in comments in mman.h parisc: fix typos in comments in special_insns.h parisc: fix typos in comments in pdcpat.h
4 daysMerge tag 'sh-for-v7.4-tag1' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/glaubitz/sh-linux Pull sh updates from John Paul Adrian Glaubitz: "Fixes and improvements for various boards as well as the generic sh kernel: - help the mach-x3proto and ecovec24 boards get rid off the use of the old platform data API in the kernel. For the former board, software nodes are being used for gpio-keys now while for the latter board, static device properties are used to describe the touchscreen (Dmitry Torokhov) - a build fix when CONFIG_BUILTIN_DTB is enabled, and fix an issue with __get_user_u64() and __put_user_u64() using wrong memory operands which could cause the kernel build to fail with "invalid 'asm'" or an internal compiler error in GCC's change_address_1 (Florian Fuchs) - update various default configuration files of several boards to replace the removed CONFIG_USB_GADGET_M66592 with the new CONFIG_USB_M66592 Kconfig option (Pengpeng Hou) - fix two issues with the SH-7785LCR evaluation board: fix a kernel memory leak which occurred as a result of the prio and sense lists being sorted too early in register_intc_controller(), and fix the the registration of the PCA9564 controller so that the RTC works properly again (Karl Mehltretter) - fix missing cookies when calling free_irq() in the maple bus driver which ensures that IRQ handlers can be properly unregistered and the kernel does not emit a WARN message (Runyu Xiao) - select BINFMT_FLAT_NO_DATA_START_OFFSET for !MMU configurations such that there is no gap at the end of text and init runs which causes the GOT register to point below the real GOT, so every GOT load reads the neighbouring slot and gets a wrong pointer (Waldemar Brodkorb)" * tag 'sh-for-v7.4-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/glaubitz/sh-linux: sh: Select BINFMT_FLAT_NO_DATA_START_OFFSET for !MMU sh: maple: Use the matching IRQ cookie when invoking free_irq() sh: sh7785lcr: Register the PCA9564 controller as I2C bus 0 sh: intc: Sort the prio and sense lists after filling them sh: defconfig: Enable the current M66592 UDC symbol sh: uaccess: Require offsettable operands for 64-bit user access sh: Fix built-in DTB build with generic rule sh: ecovec24: Use static device properties to describe the touchscreen sh: mach-x3proto: Convert gpio-keys to software nodes sh: mach-x3proto: Add software node for GPIO controller
4 daysMerge tag 'mips_7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linuxLinus Torvalds
Pull MIPS updates from Thomas Bogendoerfer: "MM: - fix huge TLB handling OCTEON: - correct register access for CN6xxxx SOCs - provide DTs for platforms where U-Boot doesn't have a DT Decstation: - fix 64bit kernels - build cleanups Others: - cleanups and fixes" * tag 'mips_7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux: (30 commits) MIPS: octeon: Add detection of UBNT Edgeroute Lite devices MIPS: octeon: Use MIPS_MACHINE for boards without provided device tree MIPS: GT64120: Remove duplicate GT_PCI1M1LD_OFS and GT_PCI1M1HD_OFS mips: dts: pic32: pic32mzda: Remove unused address-cells, size-cells property MIPS: generic: Remove undefined image 'ramdisk' docs: ABI: lefi: drop "ROM Size" in sysfs file doc. docs: ABI: lefi: use literal blocks MIPS: dec: Reorder header inclusions in setup.c MIPS: Reword KBUILD_SYM32 documentation for clarity MIPS: Eliminate redundant KBUILD_SYM32 check MIPS: decstation_64_defconfig: Compile the kernel with warnings as errors MIPS: decstation_64_defconfig: Regenerate for 7.x MIPS: dec: Add missing <linux/interrupt.h> inclusion to reset.h MIPS: Only check -msym32 when need-compiler MIPS: remove unused <asm/cmp.h> header MIPS: remove unused <asm/mips-boards/sead3-addr.h> header MIPS: remove unused <asm/amon.h> header MIPS: Octeon: offer the RedBoot parser when it is modular MIPS: Octeon: size the swiotlb for a modular OHCI platform driver MIPS: mm: do not write a huge TLB entry when the probe misses ...
4 daysMerge tag 'x86-urgent-2026-10-25' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip Pull x86 fix from Ingo Molnar: - Mark CPUID function 0x23 as being indexed - which bug could break VMs (Sean Christopherson) * tag 'x86-urgent-2026-10-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86/cpuid: Mark CPUID function 0x23 as being indexed
4 daysMerge tag 'timers-urgent-2026-10-25' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip Pull timer fixes from Ingo Molnar: - Clear timer_base::pending_map on CPU hot-unplug, that can cause temporal timeout processing anomalous on the next hot-replug (Liang Hao) - Fix PID refcount leak in the posix-cpu-timers do_cpu_nanosleep() signal path (Cen Zhang) - Require (CAP_SYS_TIME) permission to set auxiliary clocks via aux_clock_set() (Daehyeon Ko) - Update offsets on sequence counter retry in ktime_get_update_offsets_now() (Thomas Weißschuh) * tag 'timers-urgent-2026-10-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: timekeeping: Update offsets on sequence counter retry in ktime_get_update_offsets_now() timekeeping: Require permission to set auxiliary clocks posix-cpu-timers: Fix pid refcount leak in do_cpu_nanosleep() signal path timers: Clear pending_map on CPU hotplug
4 daysMerge tag 'sched-urgent-2026-10-25' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip Pull scheduler fixes from Ingo Molnar: - Fix MM CID affinity-triggered switch back to per-task mode (Hui Su) - Fix scheduling regression observed on AMD Ryzen AI HX 370 systems, caused by cache aware scheduling incorrectly overriding asym packing placement (Tim Chen) - Fix stale get_pref_llc() prototype for !CONFIG_SCHED_CACHE (Yafang Shao) * tag 'sched-urgent-2026-10-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: sched: fix stale get_pref_llc() stub for !CONFIG_SCHED_CACHE sched/cache: Honor asym packing over cache aware scheduling on hybrid systems sched/mmcid: Fix affinity-triggered switch back to per-task mode
4 daysMerge tag 'perf-urgent-2026-10-25' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip Pull perf events fixes from Ingo Molnar: - Fix Alpha build failure caused by a semantic conflict between perf and arch-alpha changes (Thomas Weißschuh) - Fix UAF in attach_task_ctx_data() (Lee Jia Jie) - Fix perf_remove_from_context() event scheduling (Peter Zijlstra) * tag 'perf-urgent-2026-10-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: perf: Fix perf_remove_from_context() event scheduling perf: Fix UAF in attach_task_ctx_data() alpha: add simd_enabled argument to perf_reg_validate()
4 daysMerge tag 'irq-urgent-2026-10-25' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip Pull kexec / irq fix from Ingo Molnar: - Fix possible hang in machine_kexec_mask_interrupts(), which incorrectly assumes that irq_set_irqchip_state() will always be able to complete in a kexec crash path, triggered on RK3399 embedded boards (Igor Velkov) * tag 'irq-urgent-2026-10-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: genirq/kexec: Do not take the bus lock of an interrupt chip on the crash path
4 daysMerge tag 'liveupdate-v7.4-rc1' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/liveupdate/linux Pull liveupdate updates from Mike Rapoport: - Several small fixes to KHO and LiveUpdate selftest - A series that renames "KHO scratch" to "KHO bootmem" because this memory is way more important in kexec'ed kernels rather than in the original cold boot kernel and the new name reflects it * tag 'liveupdate-v7.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/liveupdate/linux: kho: do not reserve empty per-node bootmem areas selftests/liveupdate: Prefer KVM and HVF over TCG in vmtest.sh kho: rename kho_scratch= commandline parameter to kho_bootmem= kho: rename KHO scratch to KHO bootmem memblock: rename KHO_SCRATCH to KHO_NOPRSRV memblock: get rid of CONFIG_MEMBLOCK_KHO_SCRATCH kho: docs: fix scratch_phys debugfs cross-reference kho: do not reserve scratch memory in the kdump kernel
4 daysMerge tag 'kexec-v7.4-rc1' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/liveupdate/linux Pull kexec updates from Mike Rapoport: - Fix probe error codes and error propagation: - make architecture functions that probe loaded image consistenly return -ENOEXEC when they do not recognize the image format - make kexec_image_probe_default() distinguish image format mismatches (-ENOEXEC) from real errors (e.g. -ENOMEM), propagating real errors immediately and only continuing to the next loader on -ENOEXEC - Make sure the next kernel does not land on hardware-poisoned pages - Remove unused arch_kexec_locate_mem_hole hook * tag 'kexec-v7.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/liveupdate/linux: kexec_file: remove unused arch_kexec_locate_mem_hole hook kexec: fix error propagation in kexec_image_probe_default() kexec: return -ENOEXEC from image probe functions on mismatch kexec: keep the next kernel off hardware-poisoned pages kexec_file: stop the top-down search before it underflows
4 daysMerge tag 'memblock-v7.4-rc1' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/mm/memblock Pull memblock updates from Mike Rapoport: "Performance improvement: - Use binary search in memblock_add_range() and memblock_isolate_range() Cleanups: - Several simplifications in memblock and mm_init that remove redundant code - After rework of sparsemem buffer preallocation, memmap_alloc() does not require exact_nid parameter. Remove that parameter, drop now unused memblock_alloc_exact_nid_raw() and adjust memblock tests accordingly memblock test updates: - add coverage for lowmem allocations - fix 32-bit build warnings" * tag 'memblock-v7.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/mm/memblock: memblock: use binary search to locate candidate regions memblock: drop for_each_memblock_type() and open code its users memblock: Remove unused memblock_alloc_exact_nid_raw() memblock tests: Move exact nid tests to memblock_alloc_range_nid() mm: Remove unused exact_nid parameter from memmap_alloc() memblock: initialize the region merge end index tools: use __pa() in virt_to_phys() memblock tests: zero-extend simulated memory addresses memblock tests: use physical addresses for region removal memblock: reject non-page-aligned reserve_mem regions memblock tests: cover allocations below the low address limit memblock tests: model the low allocation limit within dummy memory mm/mm_init: remove zone_absent_pages_in_node() memblock: remove conditional return with no effect memblock: simplify reset_all_zones_managed_pages()
4 daysMerge tag 'for-7.4-part2-tag' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux Pull more btrfs updates from David Sterba: "This removes unused code of free space caching, disabled in 7.3 (commit 545e560a5b0f: "btrfs: disable v1 space cache"). It's been the original free space cache feature, superseded by free space tree (4.5) and mkfs default since 5.15. The grace period was sufficiently long, backward compatibility still exists with a performance impact, effectively as if mounted with '-o nospace_cache'" * tag 'for-7.4-part2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux: btrfs: remove TRANS_JOIN_NOLOCK btrfs: stop reading free space inodes from the commit root btrfs: stop special-casing free space inodes in the delalloc accounting btrfs: remove the free space inode special cases from the COW paths btrfs: remove the free space inode ordered extent special cases btrfs: remove BTRFS_RESERVE_FLUSH_FREE_SPACE_INODE btrfs: remove the free space cache trimming ranges btrfs: replace btrfs_set_free_space_cache_v1_active() with a cleanup helper btrfs: remove the SPACE_CACHE mount option flag btrfs: remove btrfs_disk_cache_state btrfs: remove the v1 space cache load path btrfs: drop the transaction handle from the prealloc helpers btrfs: rename cache_write_mutex to dirty_bgs_update_mutex btrfs: remove the v1 space cache write path btrfs: remove the free space cache endio workqueue btrfs: remove the v1 space cache writeout from the transaction commit btrfs: stop enabling the v1 space cache from the on-disk state btrfs: update the inode item when removing a free space inode btrfs: drop the extent maps of the written part of a failed ordered extent btrfs: fix use-after-free on quota enable allocation failure
4 daysMerge tag 'ext4_for_linus-7.4-rc1' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 Pull ext4 updates from Ted Ts'o: "Add support for buffered iomap support in ext4. This is not enabled by default, but requires the buffered_iomap mount option, as this mode does not support online defragmentation, inline data, fsverify, fscrypt, non-extent inodes, and data=journal mode. If buffered_iomap is enabled, ext4 will fall back to the original I/O code path automatically if necessary. Large writes show significant performance improvements when buffered iomap is enabled. There are also miscellaneous bug fixes and improvements, including for fast commit and avoiding deadlocks and out-of-bound reads when handling corner cases involving corrupted file systems" * tag 'ext4_for_linus-7.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (41 commits) ext4: introduce a mount option for iomap buffered I/O path ext4: partially enable iomap for the buffered I/O path of regular files ext4: add tracepoints for EOF block zeroing and disksize-grow I/O ext4: add tracepoints for DISKSIZE_GROW_PENDING set, clear, and wait ext4: set DISKSIZE_GROW_PENDING after zeroing unaligned EOF block ext4: clear DISKSIZE_GROW_PENDING on truncate or error ext4: submit and wait for disksize-grow I/O in fallocate paths ext4: defer i_disksize update while DISKSIZE_GROW_PENDING is set ext4: advance i_disksize to i_size upon disksize-grow I/O completion ext4: submit and wait for pending disksize-grow I/O on writeback ext4: add EXT4_STATE_DISKSIZE_GROW_PENDING state bit and helpers ext4: disable online defrag when inode using iomap buffered I/O path ext4: add block mapping tracepoints for iomap buffered I/O path ext4: drain writeback before removing extents on the iomap path ext4: implement partial block zero range path using iomap ext4: implement mmap path using iomap ext4: implement writeback path using iomap ext4: rework handle credit accounting for unwritten extent conversion ext4: implement buffered write path using iomap ext4: do not use data=ordered mode for inodes using buffered iomap path ...