352af6a0 | 03-Aug-2025 |
Linus Torvalds <torvalds@linux-foundation.org> |
Merge tag 'rust-6.17' of git://git.kernel.org/pub/scm/linux/kernel/git/ojeda/linux
Pull Rust updates from Miguel Ojeda: "Toolchain and infrastructure:
- Enable a set of Clippy lints: 'ptr_as_pt
Merge tag 'rust-6.17' of git://git.kernel.org/pub/scm/linux/kernel/git/ojeda/linux
Pull Rust updates from Miguel Ojeda: "Toolchain and infrastructure:
- Enable a set of Clippy lints: 'ptr_as_ptr', 'ptr_cast_constness', 'as_ptr_cast_mut', 'as_underscore', 'cast_lossless' and 'ref_as_ptr'
These are intended to avoid type casts with the 'as' operator, which are quite powerful, into restricted variants that are less powerful and thus should help to avoid mistakes
- Remove the 'author' key now that most instances were moved to the plural one in the previous cycle
'kernel' crate:
- New 'bug' module: add 'warn_on!' macro which reuses the existing 'BUG'/'WARN' infrastructure, i.e. it respects the usual sysctls and kernel parameters:
warn_on!(value == 42);
To avoid duplicating the assembly code, the same strategy is followed as for the static branch code in order to share the assembly between both C and Rust
This required a few rearrangements on C arch headers -- the existing C macros should still generate the same outputs, thus no functional change expected there
- 'workqueue' module: add delayed work items, including a 'DelayedWork' struct, a 'impl_has_delayed_work!' macro and an 'enqueue_delayed' method, e.g.:
/// Enqueue the struct for execution on the system workqueue, /// where its value will be printed 42 jiffies later. fn print_later(value: Arc<MyStruct>) { let _ = workqueue::system().enqueue_delayed(value, 42); }
- New 'bits' module: add support for 'bit' and 'genmask' functions, with runtime- and compile-time variants, e.g.:
static_assert!(0b00010000 == bit_u8(4)); static_assert!(0b00011110 == genmask_u8(1..=4));
assert!(checked_bit_u32(u32::BITS).is_none());
- 'uaccess' module: add 'UserSliceReader::strcpy_into_buf', which reads NUL-terminated strings from userspace into a '&CStr'
Introduce 'UserPtr' newtype, similar in purpose to '__user' in C, to minimize mistakes handling userspace pointers, including mixing them up with integers and leaking them via the 'Debug' trait. Add it to the prelude, too
- Start preparations for the replacement of our custom 'CStr' type with the analogous type in the 'core' standard library. This will take place across several cycles to make it easier. For this one, it includes a new 'fmt' module, using upstream method names and some other cleanups
Replace 'fmt!' with a re-export, which helps Clippy lint properly, and clean up the found 'uninlined-format-args' instances
- 'dma' module:
- Clarify wording and be consistent in 'coherent' nomenclature
- Convert the 'read!()' and 'write!()' macros to return a 'Result'
- Add 'as_slice()', 'write()' methods in 'CoherentAllocation'
- Expose 'count()' and 'size()' in 'CoherentAllocation' and add the corresponding type invariants
- Implement 'CoherentAllocation::dma_handle_with_offset()'
- 'time' module:
- Make 'Instant' generic over clock source. This allows the compiler to assert that arithmetic expressions involving the 'Instant' use 'Instants' based on the same clock source
- Make 'HrTimer' generic over the timer mode. 'HrTimer' timers take a 'Duration' or an 'Instant' when setting the expiry time, depending on the timer mode. With this change, the compiler can check the type matches the timer mode
- Add an abstraction for 'fsleep'. 'fsleep' is a flexible sleep function that will select an appropriate sleep method depending on the requested sleep time
- Avoid 64-bit divisions on 32-bit hardware when calculating timestamps
- Seal the 'HrTimerMode' trait. This prevents users of the 'HrTimerMode' from implementing the trait on their own types
- Pass the correct timer mode ID to 'hrtimer_start_range_ns()'
- 'list' module: remove 'OFFSET' constants, allowing to remove pointer arithmetic; now 'impl_list_item!' invokes 'impl_has_list_links!' or 'impl_has_list_links_self_ptr!'. Other simplifications too
- 'types' module: remove 'ForeignOwnable::PointedTo' in favor of a constant, which avoids exposing the type of the opaque pointer, and require 'into_foreign' to return non-null
Remove the 'Either<L, R>' type as well. It is unused, and we want to encourage the use of custom enums for concrete use cases
- 'sync' module: implement 'Borrow' and 'BorrowMut' for 'Arc' types to allow them to be used in generic APIs
- 'alloc' module: implement 'Borrow' and 'BorrowMut' for 'Box<T, A>'; and 'Borrow', 'BorrowMut' and 'Default' for 'Vec<T, A>'
- 'Opaque' type: add 'cast_from' method to perform a restricted cast that cannot change the inner type and use it in callers of 'container_of!'. Rename 'raw_get' to 'cast_into' to match it
- 'rbtree' module: add 'is_empty' method
- 'sync' module: new 'aref' submodule to hold 'AlwaysRefCounted' and 'ARef', which are moved from the too general 'types' module which we want to reduce or eventually remove. Also fix a safety comment in 'static_lock_class'
'pin-init' crate:
- Add 'impl<T, E> [Pin]Init<T, E> for Result<T, E>', so results are now (pin-)initializers
- Add 'Zeroable::init_zeroed()' that delegates to 'init_zeroed()'
- New 'zeroed()', a safe version of 'mem::zeroed()' and also provide it via 'Zeroable::zeroed()'
- Implement 'Zeroable' for 'Option<&T>', 'Option<&mut T>' and for 'Option<[unsafe] [extern "abi"] fn(...args...) -> ret>' for '"Rust"' and '"C"' ABIs and up to 20 arguments
- Changed blanket impls of 'Init' and 'PinInit' from 'impl<T, E> [Pin]Init<T, E> for T' to 'impl<T> [Pin]Init<T> for T'
- Renamed 'zeroed()' to 'init_zeroed()'
- Upstream dev news: improve CI more to deny warnings, use '--all-targets'. Check the synchronization status of the two '-next' branches in upstream and the kernel
MAINTAINERS:
- Add Vlastimil Babka, Liam R. Howlett, Uladzislau Rezki and Lorenzo Stoakes as reviewers (thanks everyone)
And a few other cleanups and improvements"
* tag 'rust-6.17' of git://git.kernel.org/pub/scm/linux/kernel/git/ojeda/linux: (76 commits) rust: Add warn_on macro arm64/bug: Add ARCH_WARN_ASM macro for BUG/WARN asm code sharing with Rust riscv/bug: Add ARCH_WARN_ASM macro for BUG/WARN asm code sharing with Rust x86/bug: Add ARCH_WARN_ASM macro for BUG/WARN asm code sharing with Rust rust: kernel: move ARef and AlwaysRefCounted to sync::aref rust: sync: fix safety comment for `static_lock_class` rust: types: remove `Either<L, R>` rust: kernel: use `core::ffi::CStr` method names rust: str: add `CStr` methods matching `core::ffi::CStr` rust: str: remove unnecessary qualification rust: use `kernel::{fmt,prelude::fmt!}` rust: kernel: add `fmt` module rust: kernel: remove `fmt!`, fix clippy::uninlined-format-args scripts: rust: emit path candidates in panic message scripts: rust: replace length checks with match rust: list: remove nonexistent generic parameter in link rust: bits: add support for bits/genmask macros rust: list: remove OFFSET constants rust: list: add `impl_list_item!` examples rust: list: use fully qualified path ...
show more ...
/linux/Documentation/ABI/obsolete/automount-tracefs-debugfs/linux/Documentation/ABI/stable/sysfs-devices-node/linux/Documentation/ABI/testing/debugfs-cxl/linux/Documentation/ABI/testing/sysfs-kernel-mm-damon/linux/Documentation/PCI/endpoint/pci-test-howto.rst/linux/Documentation/admin-guide/cgroup-v2.rst/linux/Documentation/admin-guide/kernel-parameters.txt/linux/Documentation/admin-guide/mm/damon/index.rst/linux/Documentation/admin-guide/mm/damon/stat.rst/linux/Documentation/admin-guide/mm/damon/usage.rst/linux/Documentation/admin-guide/mm/transhuge.rst/linux/Documentation/core-api/memory-hotplug.rst/linux/Documentation/core-api/workqueue.rst/linux/Documentation/devicetree/bindings/clock/alphascale,asm9260-clock-controller.yaml/linux/Documentation/devicetree/bindings/clock/apm,xgene-device-clock.yaml/linux/Documentation/devicetree/bindings/clock/apm,xgene-socpll-clock.yaml/linux/Documentation/devicetree/bindings/clock/axis,artpec6-clkctrl.yaml/linux/Documentation/devicetree/bindings/clock/brcm,bcm2835-cprman.yaml/linux/Documentation/devicetree/bindings/clock/brcm,bcm53573-ilp.yaml/linux/Documentation/devicetree/bindings/clock/brcm,bcm63xx-clocks.yaml/linux/Documentation/devicetree/bindings/clock/cirrus,ep7209-clk.yaml/linux/Documentation/devicetree/bindings/clock/img,pistachio-clk.yaml/linux/Documentation/devicetree/bindings/clock/lsi,axm5516-clks.yaml/linux/Documentation/devicetree/bindings/clock/lsi,nspire-cx-clock.yaml/linux/Documentation/devicetree/bindings/clock/marvell,armada-370-corediv-clock.yaml/linux/Documentation/devicetree/bindings/clock/marvell,armada-3700-periph-clock.yaml/linux/Documentation/devicetree/bindings/clock/marvell,armada-3700-tbg-clock.yaml/linux/Documentation/devicetree/bindings/clock/marvell,armada-xp-cpu-clock.yaml/linux/Documentation/devicetree/bindings/clock/marvell,berlin2-clk.yaml/linux/Documentation/devicetree/bindings/clock/marvell,dove-divider-clock.yaml/linux/Documentation/devicetree/bindings/clock/marvell,mvebu-core-clock.yaml/linux/Documentation/devicetree/bindings/clock/marvell-armada-370-gating-clock.yaml/linux/Documentation/devicetree/bindings/clock/maxim,max9485.yaml/linux/Documentation/devicetree/bindings/clock/microchip,pic32mzda-clk.yaml/linux/Documentation/devicetree/bindings/clock/moxa,moxart-clock.yaml/linux/Documentation/devicetree/bindings/clock/nuvoton,npcm750-clk.yaml/linux/Documentation/devicetree/bindings/clock/nxp,imx95-blk-ctl.yaml/linux/Documentation/devicetree/bindings/clock/nxp,lpc1850-ccu.yaml/linux/Documentation/devicetree/bindings/clock/nxp,lpc1850-cgu.yaml/linux/Documentation/devicetree/bindings/clock/qca,ath79-pll.yaml/linux/Documentation/devicetree/bindings/clock/qcom,camcc-sm8250.yaml/linux/Documentation/devicetree/bindings/clock/qcom,dispcc-sm6125.yaml/linux/Documentation/devicetree/bindings/clock/qcom,dispcc-sm6350.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-ipq4019.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-ipq8074.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-msm8976.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-msm8994.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-msm8996.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-msm8998.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-qcm2290.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-qcs404.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-sc7180.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-sc7280.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-sc8180x.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-sc8280xp.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-sdm845.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-sdx55.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-sdx65.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-sm6115.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-sm6125.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-sm6350.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-sm8150.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-sm8250.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-sm8350.yaml/linux/Documentation/devicetree/bindings/clock/qcom,gcc-sm8450.yaml/linux/Documentation/devicetree/bindings/clock/qcom,ipq9574-cmn-pll.yaml/linux/Documentation/devicetree/bindings/clock/qcom,krait-cc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,milos-camcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,milos-dispcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,milos-gcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,milos-videocc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,mmcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,msm8998-gpucc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,qcm2290-dispcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,qcs615-dispcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,qcs615-gpucc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,qcs615-videocc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,qdu1000-ecpricc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,qdu1000-gcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,rpmhcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sa8775p-camcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sa8775p-gcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sc7180-camcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sc7180-dispcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sc7180-lpasscorecc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sc7280-camcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sc7280-dispcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sc7280-lpasscc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sdm845-camcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sdm845-dispcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sdm845-lpasscc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sdx75-gcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm4450-camcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm4450-dispcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm4450-gcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm6115-dispcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm6115-gpucc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm6125-gpucc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm6350-camcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm6375-dispcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm6375-gcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm6375-gpucc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm7150-camcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm7150-dispcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm7150-gcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm7150-videocc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm8150-camcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm8450-camcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm8450-dispcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm8450-gpucc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm8450-videocc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm8550-gcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm8550-tcsr.yaml/linux/Documentation/devicetree/bindings/clock/qcom,sm8650-gcc.yaml/linux/Documentation/devicetree/bindings/clock/qcom,x1e80100-gcc.yaml/linux/Documentation/devicetree/bindings/clock/renesas,cpg-mssr.yaml/linux/Documentation/devicetree/bindings/clock/renesas,rzg2l-cpg.yaml/linux/Documentation/devicetree/bindings/clock/samsung,exynosautov920-clock.yaml/linux/Documentation/devicetree/bindings/clock/ti/ti,autoidle.yaml/linux/Documentation/devicetree/bindings/clock/ti/ti,divider-clock.yaml/linux/Documentation/devicetree/bindings/clock/ti/ti,fixed-factor-clock.yaml/linux/Documentation/devicetree/bindings/dma/brcm,iproc-sba.yaml/linux/Documentation/devicetree/bindings/dma/fsl,mxs-dma.yaml/linux/Documentation/devicetree/bindings/dma/marvell,orion-xor.yaml/linux/Documentation/devicetree/bindings/dma/qcom,gpi.yaml/linux/Documentation/devicetree/bindings/dma/sophgo,cv1800b-dmamux.yaml/linux/Documentation/devicetree/bindings/hwmon/adi,adm1266.yaml/linux/Documentation/devicetree/bindings/hwmon/adi,ltc2992.yaml/linux/Documentation/devicetree/bindings/hwmon/adt7475.yaml/linux/Documentation/devicetree/bindings/hwmon/lltc,ltc2978.yaml/linux/Documentation/devicetree/bindings/hwmon/maxim,max20730.yaml/linux/Documentation/devicetree/bindings/hwmon/national,lm90.yaml/linux/Documentation/devicetree/bindings/hwmon/pmbus/adi,adp1050.yaml/linux/Documentation/devicetree/bindings/hwmon/pmbus/isil,isl68137.yaml/linux/Documentation/devicetree/bindings/hwmon/pmbus/ti,ucd90320.yaml/linux/Documentation/devicetree/bindings/hwmon/ti,amc6821.yaml/linux/Documentation/devicetree/bindings/hwmon/ti,ina2xx.yaml/linux/Documentation/devicetree/bindings/hwmon/ti,lm87.yaml/linux/Documentation/devicetree/bindings/mfd/motorola-cpcap.txt/linux/Documentation/devicetree/bindings/mtd/jedec,spi-nor.yaml/linux/Documentation/devicetree/bindings/mtd/nxp,lpc1773-spifi.yaml/linux/Documentation/devicetree/bindings/pci/amazon,al-alpine-v3-pcie.yaml/linux/Documentation/devicetree/bindings/pci/apm,xgene-pcie.yaml/linux/Documentation/devicetree/bindings/pci/axis,artpec6-pcie.yaml/linux/Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml/linux/Documentation/devicetree/bindings/pci/marvell,armada-3700-pcie.yaml/linux/Documentation/devicetree/bindings/pci/pci-ep.yaml/linux/Documentation/devicetree/bindings/pci/qcom,pcie-common.yaml/linux/Documentation/devicetree/bindings/pci/qcom,pcie-sa8255p.yaml/linux/Documentation/devicetree/bindings/pci/qcom,pcie-sa8775p.yaml/linux/Documentation/devicetree/bindings/pci/qcom,pcie-sc7280.yaml/linux/Documentation/devicetree/bindings/pci/qcom,pcie-sc8180x.yaml/linux/Documentation/devicetree/bindings/pci/qcom,pcie-sm8150.yaml/linux/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml/linux/Documentation/devicetree/bindings/pci/sophgo,sg2044-pcie.yaml/linux/Documentation/devicetree/bindings/pci/st,spear1340-pcie.yaml/linux/Documentation/devicetree/bindings/phy/apm,xgene-phy.yaml/linux/Documentation/devicetree/bindings/phy/brcm,ns2-drd-phy.yaml/linux/Documentation/devicetree/bindings/phy/brcm,sr-pcie-phy.yaml/linux/Documentation/devicetree/bindings/phy/brcm,sr-usb-combo-phy.yaml/linux/Documentation/devicetree/bindings/phy/hisilicon,hi6220-usb-phy.yaml/linux/Documentation/devicetree/bindings/phy/hisilicon,hix5hd2-sata-phy.yaml/linux/Documentation/devicetree/bindings/phy/hisilicon,inno-usb2-phy.yaml/linux/Documentation/devicetree/bindings/phy/img,pistachio-usb-phy.yaml/linux/Documentation/devicetree/bindings/phy/lantiq,ase-usb2-phy.yaml/linux/Documentation/devicetree/bindings/phy/marvell,armada-375-usb-cluster.yaml/linux/Documentation/devicetree/bindings/phy/marvell,armada-380-comphy.yaml/linux/Documentation/devicetree/bindings/phy/marvell,berlin2-sata-phy.yaml/linux/Documentation/devicetree/bindings/phy/marvell,berlin2-usb-phy.yaml/linux/Documentation/devicetree/bindings/phy/marvell,comphy-cp110.yaml/linux/Documentation/devicetree/bindings/phy/marvell,mmp2-usb-phy.yaml/linux/Documentation/devicetree/bindings/phy/marvell,mvebu-sata-phy.yaml/linux/Documentation/devicetree/bindings/phy/mixel,mipi-dsi-phy.yaml/linux/Documentation/devicetree/bindings/phy/motorola,cpcap-usb-phy.yaml/linux/Documentation/devicetree/bindings/phy/motorola,mapphone-mdm6600.yaml/linux/Documentation/devicetree/bindings/phy/qca,ar7100-usb-phy.yaml/linux/Documentation/devicetree/bindings/phy/qcom,m31-eusb2-phy.yaml/linux/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml/linux/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-usb43dp-phy.yaml/linux/Documentation/devicetree/bindings/phy/qcom,snps-eusb2-phy.yaml/linux/Documentation/devicetree/bindings/phy/qcom,snps-eusb2-repeater.yaml/linux/Documentation/devicetree/bindings/phy/renesas,usb2-phy.yaml/linux/Documentation/devicetree/bindings/phy/samsung,mipi-video-phy.yaml/linux/Documentation/devicetree/bindings/phy/samsung,usb3-drd-phy.yaml/linux/Documentation/devicetree/bindings/phy/st,spear1310-miphy.yaml/linux/Documentation/devicetree/bindings/phy/ti,da830-usb-phy.yaml/linux/Documentation/devicetree/bindings/phy/ti,dm8168-usb-phy.yaml/linux/Documentation/devicetree/bindings/phy/ti,keystone-usbphy.yaml/linux/Documentation/devicetree/bindings/pinctrl/amlogic,pinctrl-a4.yaml/linux/Documentation/devicetree/bindings/pinctrl/eswin,eic7700-pinctrl.yaml/linux/Documentation/devicetree/bindings/pinctrl/mediatek,mt8189-pinctrl.yaml/linux/Documentation/devicetree/bindings/pinctrl/nxp,lpc1850-scu.yaml/linux/Documentation/devicetree/bindings/pinctrl/qcom,milos-tlmm.yaml/linux/Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml/linux/Documentation/devicetree/bindings/pinctrl/rockchip,pinctrl.yaml/linux/Documentation/devicetree/bindings/pinctrl/st,stm32-hdp.yaml/linux/Documentation/devicetree/bindings/pinctrl/st,stm32-pinctrl.yaml/linux/Documentation/devicetree/bindings/power/supply/bq24190.yaml/linux/Documentation/devicetree/bindings/power/supply/bq2515x.yaml/linux/Documentation/devicetree/bindings/power/supply/bq256xx.yaml/linux/Documentation/devicetree/bindings/power/supply/bq25980.yaml/linux/Documentation/devicetree/bindings/power/supply/cw2015_battery.yaml/linux/Documentation/devicetree/bindings/power/supply/qcom,pmi8998-charger.yaml/linux/Documentation/devicetree/bindings/power/supply/richtek,rt5033-charger.yaml/linux/Documentation/devicetree/bindings/power/supply/stericsson,ab8500-btemp.yaml/linux/Documentation/devicetree/bindings/power/supply/stericsson,ab8500-chargalg.yaml/linux/Documentation/devicetree/bindings/power/supply/stericsson,ab8500-charger.yaml/linux/Documentation/devicetree/bindings/power/supply/stericsson,ab8500-fg.yaml/linux/Documentation/devicetree/bindings/power/supply/summit,smb347-charger.yaml/linux/Documentation/devicetree/bindings/power/supply/x-powers,axp20x-battery-power-supply.yaml/linux/Documentation/devicetree/bindings/remoteproc/qcom,sa8775p-pas.yaml/linux/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml/linux/Documentation/devicetree/bindings/soc/renesas/renesas.yaml/linux/Documentation/devicetree/bindings/sound/atmel,at91-ssc.yaml/linux/Documentation/devicetree/bindings/trivial-devices.yaml/linux/Documentation/devicetree/bindings/usb/qcom,snps-dwc3.yaml/linux/Documentation/devicetree/bindings/watchdog/nxp,pnx4008-wdt.yaml/linux/Documentation/driver-api/cxl/conventions.rst/linux/Documentation/driver-api/cxl/devices/device-types.rst/linux/Documentation/driver-api/cxl/index.rst/linux/Documentation/driver-api/cxl/linux/cxl-driver.rst/linux/Documentation/driver-api/cxl/theory-of-operation.rst/linux/Documentation/driver-api/soundwire/bra.rst/linux/Documentation/filesystems/proc.rst/linux/Documentation/hid/intel-thc-hid.rst/linux/Documentation/hwmon/adp1050.rst/linux/Documentation/hwmon/asus_ec_sensors.rst/linux/Documentation/hwmon/corsair-psu.rst/linux/Documentation/hwmon/tps53679.rst/linux/Documentation/mm/arch_pgtable_helpers.rst/linux/Documentation/mm/damon/design.rst/linux/Documentation/mm/damon/maintainer-profile.rst/linux/Documentation/mm/page_migration.rst/linux/Documentation/mm/physical_memory.rst/linux/Documentation/mm/process_addrs.rst/linux/Documentation/scheduler/sched-ext.rst/linux/Documentation/tools/rtla/common_timerlat_options.rst/linux/Documentation/trace/eprobetrace.rst/linux/Documentation/trace/index.rst/linux/Documentation/translations/zh_CN/core-api/memory-hotplug.rst/linux/MAINTAINERS/linux/Makefile/linux/arch/Kconfig/linux/arch/alpha/Kconfig/linux/arch/alpha/include/asm/percpu.h/linux/arch/arm/configs/multi_v7_defconfig/linux/arch/arm/configs/tegra_defconfig/linux/arch/arm/mm/fault.c/linux/arch/arm64/Kconfig/linux/arch/arm64/Kconfig.platforms/linux/arch/arm64/include/asm/asm-bug.h/linux/arch/arm64/include/asm/cfi.h/linux/arch/arm64/include/asm/mman.h/linux/arch/arm64/include/asm/pgtable-prot.h/linux/arch/arm64/include/asm/pgtable.h/linux/arch/arm64/include/asm/tlbflush.h/linux/arch/arm64/mm/fault.c/linux/arch/arm64/mm/mmap.c/linux/arch/arm64/mm/mmu.c/linux/arch/arm64/mm/ptdump_debugfs.c/linux/arch/arm64/net/bpf_jit_comp.c/linux/arch/loongarch/Kconfig/linux/arch/loongarch/configs/loongson3_defconfig/linux/arch/loongarch/include/asm/hugetlb.h/linux/arch/loongarch/include/asm/pgtable-bits.h/linux/arch/loongarch/include/asm/pgtable.h/linux/arch/loongarch/mm/pageattr.c/linux/arch/mips/configs/loongson2k_defconfig/linux/arch/mips/configs/loongson3_defconfig/linux/arch/mips/include/asm/hugetlb.h/linux/arch/openrisc/kernel/dma.c/linux/arch/parisc/Makefile/linux/arch/parisc/include/asm/pgtable.h/linux/arch/parisc/include/asm/special_insns.h/linux/arch/parisc/include/asm/uaccess.h/linux/arch/parisc/kernel/cache.c/linux/arch/parisc/kernel/entry.S/linux/arch/parisc/kernel/syscall.S/linux/arch/parisc/lib/memcpy.c/linux/arch/parisc/mm/fault.c/linux/arch/powerpc/Kconfig/linux/arch/powerpc/include/asm/book3s/64/hash-4k.h/linux/arch/powerpc/include/asm/book3s/64/hash-64k.h/linux/arch/powerpc/include/asm/book3s/64/pgtable.h/linux/arch/powerpc/include/asm/book3s/64/pkeys.h/linux/arch/powerpc/include/asm/book3s/64/radix.h/linux/arch/powerpc/include/asm/mman.h/linux/arch/powerpc/include/asm/pkeys.h/linux/arch/powerpc/kvm/book3s_hv_uvmem.c/linux/arch/powerpc/mm/book3s64/hash_hugepage.c/linux/arch/powerpc/mm/book3s64/hash_pgtable.c/linux/arch/powerpc/mm/book3s64/hugetlbpage.c/linux/arch/powerpc/mm/book3s64/pgtable.c/linux/arch/powerpc/mm/book3s64/radix_pgtable.c/linux/arch/powerpc/mm/pgtable.c/linux/arch/powerpc/platforms/pseries/cmm.c/linux/arch/powerpc/platforms/pseries/pci_dlpar.c/linux/arch/riscv/Kconfig/linux/arch/riscv/include/asm/bug.h/linux/arch/riscv/include/asm/cfi.h/linux/arch/riscv/include/asm/pgtable-64.h/linux/arch/riscv/include/asm/pgtable-bits.h/linux/arch/riscv/include/asm/pgtable.h/linux/arch/riscv/include/asm/tlbflush.h/linux/arch/riscv/kernel/cfi.c/linux/arch/riscv/mm/pageattr.c/linux/arch/riscv/mm/ptdump.c/linux/arch/riscv/mm/tlbflush.c/linux/arch/s390/Kconfig/linux/arch/s390/include/asm/percpu.h/linux/arch/s390/mm/dump_pagetables.c/linux/arch/sparc/Kconfig/linux/arch/sparc/include/asm/hugetlb.h/linux/arch/sparc/include/asm/mman.h/linux/arch/sparc/mm/hugetlbpage.c/linux/arch/sparc/mm/init_64.c/linux/arch/x86/Kconfig/linux/arch/x86/include/asm/bug.h/linux/arch/x86/include/asm/cfi.h/linux/arch/x86/include/asm/pgtable.h/linux/arch/x86/include/asm/pgtable_types.h/linux/arch/x86/include/asm/tlbflush.h/linux/arch/x86/kernel/alternative.c/linux/arch/x86/kernel/cpu/sgx/encl.c/linux/arch/x86/kernel/cpu/sgx/encl.h/linux/arch/x86/mm/pat/memtype.c/linux/arch/x86/mm/pgprot.c/linux/block/bio.c/linux/drivers/acpi/numa/hmat.c/linux/drivers/base/memory.c/linux/drivers/base/node.c/linux/drivers/block/null_blk/main.c/linux/drivers/clk/Kconfig/linux/drivers/clk/Makefile/linux/drivers/clk/at91/sam9x7.c/linux/drivers/clk/baikal-t1/clk-ccu-div.c/linux/drivers/clk/baikal-t1/clk-ccu-pll.c/linux/drivers/clk/bcm/clk-bcm2835.c/linux/drivers/clk/bcm/clk-bcm53573-ilp.c/linux/drivers/clk/berlin/berlin2-avpll.c/linux/drivers/clk/clk-asm9260.c/linux/drivers/clk/clk-ast2600.c/linux/drivers/clk/clk-axi-clkgen.c/linux/drivers/clk/clk-clps711x.c/linux/drivers/clk/clk-eyeq.c/linux/drivers/clk/clk-gate.c/linux/drivers/clk/clk-hsdk-pll.c/linux/drivers/clk/clk-pwm.c/linux/drivers/clk/clk-s2mps11.c/linux/drivers/clk/clk-scmi.c/linux/drivers/clk/clk-si5351.c/linux/drivers/clk/clk-si544.c/linux/drivers/clk/clk-si570.c/linux/drivers/clk/clk-sp7021.c/linux/drivers/clk/clk-stm32f4.c/linux/drivers/clk/clk-versaclock5.c/linux/drivers/clk/clk-versaclock7.c/linux/drivers/clk/clk.c/linux/drivers/clk/clk_test.c/linux/drivers/clk/davinci/pll.h/linux/drivers/clk/davinci/psc.c/linux/drivers/clk/hisilicon/clkgate-separated.c/linux/drivers/clk/imx/clk-busy.c/linux/drivers/clk/imx/clk-composite-8m.c/linux/drivers/clk/imx/clk-composite-93.c/linux/drivers/clk/imx/clk-cpu.c/linux/drivers/clk/imx/clk-fixup-div.c/linux/drivers/clk/imx/clk-fixup-mux.c/linux/drivers/clk/imx/clk-frac-pll.c/linux/drivers/clk/imx/clk-fracn-gppll.c/linux/drivers/clk/imx/clk-gate-exclusive.c/linux/drivers/clk/imx/clk-imx5.c/linux/drivers/clk/imx/clk-imx8-acm.c/linux/drivers/clk/imx/clk-imx8qxp-lpcg.c/linux/drivers/clk/imx/clk-imx95-blk-ctl.c/linux/drivers/clk/imx/clk-pfd.c/linux/drivers/clk/imx/clk-pll14xx.c/linux/drivers/clk/imx/clk-pllv2.c/linux/drivers/clk/imx/clk-pllv3.c/linux/drivers/clk/imx/clk-pllv4.c/linux/drivers/clk/imx/clk-scu.c/linux/drivers/clk/ingenic/cgu.h/linux/drivers/clk/kunit_clk_hw_get_dev_of_node.dtso/linux/drivers/clk/meson/Kconfig/linux/drivers/clk/meson/a1-peripherals.c/linux/drivers/clk/meson/a1-pll.c/linux/drivers/clk/meson/axg-aoclk.c/linux/drivers/clk/meson/axg-audio.c/linux/drivers/clk/meson/axg.c/linux/drivers/clk/meson/c3-peripherals.c/linux/drivers/clk/meson/c3-pll.c/linux/drivers/clk/meson/clk-cpu-dyndiv.c/linux/drivers/clk/meson/clk-dualdiv.c/linux/drivers/clk/meson/clk-mpll.c/linux/drivers/clk/meson/clk-phase.c/linux/drivers/clk/meson/clk-pll.c/linux/drivers/clk/meson/clk-regmap.c/linux/drivers/clk/meson/clk-regmap.h/linux/drivers/clk/meson/g12a-aoclk.c/linux/drivers/clk/meson/g12a.c/linux/drivers/clk/meson/gxbb-aoclk.c/linux/drivers/clk/meson/gxbb.c/linux/drivers/clk/meson/meson-aoclk.c/linux/drivers/clk/meson/meson-aoclk.h/linux/drivers/clk/meson/meson-eeclk.c/linux/drivers/clk/meson/meson-eeclk.h/linux/drivers/clk/meson/meson8-ddr.c/linux/drivers/clk/meson/meson8b.c/linux/drivers/clk/meson/s4-peripherals.c/linux/drivers/clk/meson/s4-pll.c/linux/drivers/clk/meson/sclk-div.c/linux/drivers/clk/meson/vclk.c/linux/drivers/clk/meson/vid-pll-div.c/linux/drivers/clk/microchip/clk-core.c/linux/drivers/clk/mmp/clk-gate.c/linux/drivers/clk/mvebu/armada-xp.c/linux/drivers/clk/mxs/clk-div.c/linux/drivers/clk/nuvoton/Kconfig/linux/drivers/clk/nxp/clk-lpc18xx-ccu.c/linux/drivers/clk/qcom/Kconfig/linux/drivers/clk/qcom/Makefile/linux/drivers/clk/qcom/camcc-milos.c/linux/drivers/clk/qcom/camcc-qcs615.c/linux/drivers/clk/qcom/camcc-sc8180x.c/linux/drivers/clk/qcom/camcc-sm8450.c/linux/drivers/clk/qcom/camcc-sm8550.c/linux/drivers/clk/qcom/camcc-sm8650.c/linux/drivers/clk/qcom/camcc-x1e80100.c/linux/drivers/clk/qcom/clk-alpha-pll.c/linux/drivers/clk/qcom/clk-alpha-pll.h/linux/drivers/clk/qcom/clk-rpm.c/linux/drivers/clk/qcom/clk-rpmh.c/linux/drivers/clk/qcom/clk-smd-rpm.c/linux/drivers/clk/qcom/clk-spmi-pmic-div.c/linux/drivers/clk/qcom/common.c/linux/drivers/clk/qcom/common.h/linux/drivers/clk/qcom/dispcc-milos.c/linux/drivers/clk/qcom/dispcc-qcs615.c/linux/drivers/clk/qcom/dispcc-sm8750.c/linux/drivers/clk/qcom/gcc-ipq4019.c/linux/drivers/clk/qcom/gcc-ipq5018.c/linux/drivers/clk/qcom/gcc-ipq8074.c/linux/drivers/clk/qcom/gcc-milos.c/linux/drivers/clk/qcom/gcc-qcm2290.c/linux/drivers/clk/qcom/gcc-sm8150.c/linux/drivers/clk/qcom/gcc-x1e80100.c/linux/drivers/clk/qcom/gpucc-milos.c/linux/drivers/clk/qcom/gpucc-qcs615.c/linux/drivers/clk/qcom/ipq-cmn-pll.c/linux/drivers/clk/qcom/lpassaudiocc-sc7280.c/linux/drivers/clk/qcom/lpasscorecc-sc7180.c/linux/drivers/clk/qcom/tcsrcc-sm8650.c/linux/drivers/clk/qcom/videocc-milos.c/linux/drivers/clk/qcom/videocc-qcs615.c/linux/drivers/clk/qcom/videocc-sc7180.c/linux/drivers/clk/qcom/videocc-sdm845.c/linux/drivers/clk/qcom/videocc-sm6350.c/linux/drivers/clk/qcom/videocc-sm7150.c/linux/drivers/clk/qcom/videocc-sm8150.c/linux/drivers/clk/qcom/videocc-sm8450.c/linux/drivers/clk/qcom/videocc-sm8550.c/linux/drivers/clk/renesas/Kconfig/linux/drivers/clk/renesas/Makefile/linux/drivers/clk/renesas/r7s9210-cpg-mssr.c/linux/drivers/clk/renesas/r8a77970-cpg-mssr.c/linux/drivers/clk/renesas/r9a07g043-cpg.c/linux/drivers/clk/renesas/r9a07g044-cpg.c/linux/drivers/clk/renesas/r9a08g045-cpg.c/linux/drivers/clk/renesas/r9a09g011-cpg.c/linux/drivers/clk/renesas/r9a09g047-cpg.c/linux/drivers/clk/renesas/r9a09g056-cpg.c/linux/drivers/clk/renesas/r9a09g057-cpg.c/linux/drivers/clk/renesas/r9a09g077-cpg.c/linux/drivers/clk/renesas/rcar-gen2-cpg.c/linux/drivers/clk/renesas/rcar-gen2-cpg.h/linux/drivers/clk/renesas/rcar-gen3-cpg.c/linux/drivers/clk/renesas/rcar-gen3-cpg.h/linux/drivers/clk/renesas/rcar-gen4-cpg.c/linux/drivers/clk/renesas/rcar-gen4-cpg.h/linux/drivers/clk/renesas/renesas-cpg-mssr.c/linux/drivers/clk/renesas/renesas-cpg-mssr.h/linux/drivers/clk/renesas/rzg2l-cpg.c/linux/drivers/clk/renesas/rzg2l-cpg.h/linux/drivers/clk/renesas/rzv2h-cpg.c/linux/drivers/clk/renesas/rzv2h-cpg.h/linux/drivers/clk/rockchip/clk-cpu.c/linux/drivers/clk/rockchip/clk-mmc-phase.c/linux/drivers/clk/rockchip/clk-pll.c/linux/drivers/clk/rockchip/clk-rk3568.c/linux/drivers/clk/rockchip/clk.h/linux/drivers/clk/samsung/clk-cpu.c/linux/drivers/clk/samsung/clk-exynos850.c/linux/drivers/clk/samsung/clk-exynosautov920.c/linux/drivers/clk/samsung/clk-gs101.c/linux/drivers/clk/samsung/clk-pll.c/linux/drivers/clk/sophgo/clk-sg2042-clkgen.c/linux/drivers/clk/sophgo/clk-sg2042-pll.c/linux/drivers/clk/spacemit/Kconfig/linux/drivers/clk/spacemit/ccu-k1.c/linux/drivers/clk/spacemit/ccu_mix.h/linux/drivers/clk/spacemit/ccu_pll.c/linux/drivers/clk/spear/spear1340_clock.c/linux/drivers/clk/sprd/gate.h/linux/drivers/clk/sprd/ums512-clk.c/linux/drivers/clk/starfive/clk-starfive-jh7110-sys.c/linux/drivers/clk/stm32/Kconfig/linux/drivers/clk/stm32/clk-stm32mp1.c/linux/drivers/clk/sunxi-ng/ccu-sun50i-h6-r.c/linux/drivers/clk/sunxi-ng/ccu-sun55i-a523-r.c/linux/drivers/clk/sunxi-ng/ccu-sun8i-r40.c/linux/drivers/clk/sunxi-ng/ccu-sun8i-v3s.c/linux/drivers/clk/sunxi-ng/ccu_common.c/linux/drivers/clk/sunxi-ng/ccu_gate.c/linux/drivers/clk/sunxi-ng/ccu_nk.c/linux/drivers/clk/sunxi-ng/ccu_nkmp.c/linux/drivers/clk/sunxi-ng/ccu_nm.c/linux/drivers/clk/tegra/clk-periph.c/linux/drivers/clk/tegra/clk-tegra210.c/linux/drivers/clk/tegra/clk.h/linux/drivers/clk/thead/clk-th1520-ap.c/linux/drivers/clk/ti/autoidle.c/linux/drivers/clk/ti/clk-43xx.c/linux/drivers/clk/ti/clk.c/linux/drivers/clk/ti/mux.c/linux/drivers/clk/versatile/clk-icst.c/linux/drivers/clk/visconti/pll.c/linux/drivers/clk/xilinx/clk-xlnx-clock-wizard.c/linux/drivers/clk/xilinx/xlnx_vcu.c/linux/drivers/cpufreq/rcpufreq_dt.rs/linux/drivers/cxl/acpi.c/linux/drivers/cxl/core/Makefile/linux/drivers/cxl/core/cdat.c/linux/drivers/cxl/core/core.h/linux/drivers/cxl/core/edac.c/linux/drivers/cxl/core/hdm.c/linux/drivers/cxl/core/mbox.c/linux/drivers/cxl/core/memdev.c/linux/drivers/cxl/core/port.c/linux/drivers/cxl/core/region.c/linux/drivers/cxl/core/trace.h/linux/drivers/cxl/cxl.h/linux/drivers/cxl/cxlmem.h/linux/drivers/cxl/pci.c/linux/drivers/dax/device.c/linux/drivers/dax/hmem/hmem.c/linux/drivers/dax/kmem.c/linux/drivers/dax/pmem.c/linux/drivers/dax/super.c/linux/drivers/dma/Kconfig/linux/drivers/dma/Makefile/linux/drivers/dma/cv1800b-dmamux.c/linux/drivers/dma/dma-axi-dmac.c/linux/drivers/dma/dw-edma/dw-edma-core.c/linux/drivers/dma/fsl-dpaa2-qdma/dpdmai.c/linux/drivers/dma/fsl-qdma.c/linux/drivers/dma/idxd/init.c/linux/drivers/dma/idxd/registers.h/linux/drivers/dma/mmp_tdma.c/linux/drivers/dma/mv_xor.c/linux/drivers/dma/nbpfaxi.c/linux/drivers/dma/qcom/gpi.c/linux/drivers/dma/sh/Kconfig/linux/drivers/dma/stm32/stm32-dma.c/linux/drivers/dma/stm32/stm32-dma3.c/linux/drivers/dma/stm32/stm32-mdma.c/linux/drivers/dma/sun4i-dma.c/linux/drivers/dma/ti/Kconfig/linux/drivers/firewire/core-card.c/linux/drivers/firewire/core-cdev.c/linux/drivers/firewire/core-device.c/linux/drivers/firewire/core-transaction.c/linux/drivers/firewire/net.c/linux/drivers/firewire/ohci.c/linux/drivers/gpu/drm/amd/amdgpu/amdgpu.h/linux/drivers/gpu/drm/amd/amdgpu/amdgpu_cper.c/linux/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c/linux/drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c/linux/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c/linux/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c/linux/drivers/gpu/drm/amd/amdgpu/imu_v12_0.c/linux/drivers/gpu/drm/amd/amdgpu/mmhub_v4_1_0.c/linux/drivers/gpu/drm/amd/amdgpu/psp_v14_0.c/linux/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c/linux/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c/linux/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_psr.c/linux/drivers/gpu/drm/amd/display/dc/core/dc.c/linux/drivers/gpu/drm/amd/display/dc/dce/dce_i2c_hw.c/linux/drivers/gpu/drm/amd/display/dc/dsc/dc_dsc.c/linux/drivers/gpu/drm/amd/display/dc/resource/dcn314/dcn314_resource.c/linux/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0.c/linux/drivers/gpu/drm/drm_panic_qr.rs/linux/drivers/gpu/drm/exynos/exynos_drm_gem.c/linux/drivers/gpu/drm/gma500/fbdev.c/linux/drivers/gpu/drm/i915/gem/i915_gem_mman.c/linux/drivers/gpu/drm/i915/gem/i915_gem_shmem.c/linux/drivers/gpu/drm/msm/msm_gem.c/linux/drivers/gpu/drm/nova/nova.rs/linux/drivers/gpu/drm/omapdrm/omap_gem.c/linux/drivers/gpu/drm/ttm/ttm_backup.c/linux/drivers/gpu/drm/v3d/v3d_bo.c/linux/drivers/gpu/drm/virtio/virtgpu_drv.c/linux/drivers/gpu/drm/xe/xe_configfs.c/linux/drivers/gpu/drm/xe/xe_device.c/linux/drivers/gpu/drm/xe/xe_device_sysfs.c/linux/drivers/gpu/drm/xe/xe_guc_ct.c/linux/drivers/gpu/drm/xe/xe_hw_engine_group.c/linux/drivers/gpu/drm/xe/xe_i2c.c/linux/drivers/gpu/drm/xe/xe_oa.c/linux/drivers/gpu/drm/xe/xe_uc.cdriver.rsfirmware.rsnova_core.rsregs.rsregs/macros.rsutil.rs/linux/drivers/gpu/vga/vga_switcheroo.c/linux/drivers/hid/Kconfig/linux/drivers/hid/amd-sfh-hid/amd_sfh_client.c/linux/drivers/hid/amd-sfh-hid/amd_sfh_hid.h/linux/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c/linux/drivers/hid/amd-sfh-hid/amd_sfh_pcie.h/linux/drivers/hid/hid-apple.c/linux/drivers/hid/hid-core.c/linux/drivers/hid/hid-debug.c/linux/drivers/hid/hid-ids.h/linux/drivers/hid/hid-lg4ff.c/linux/drivers/hid/hid-magicmouse.c/linux/drivers/hid/hid-mcp2221.c/linux/drivers/hid/hid-multitouch.c/linux/drivers/hid/hid-quirks.c/linux/drivers/hid/hid-uclogic-core.c/linux/drivers/hid/hid-uclogic-params.c/linux/drivers/hid/hid-uclogic-params.h/linux/drivers/hid/hid-uclogic-rdesc.c/linux/drivers/hid/hid-uclogic-rdesc.h/linux/drivers/hid/hid-universal-pidff.c/linux/drivers/hid/intel-thc-hid/Makefile/linux/drivers/hid/intel-thc-hid/intel-quicki2c/pci-quicki2c.c/linux/drivers/hid/intel-thc-hid/intel-quicki2c/quicki2c-dev.h/linux/drivers/hid/intel-thc-hid/intel-quickspi/pci-quickspi.c/linux/drivers/hid/intel-thc-hid/intel-thc/intel-thc-dev.c/linux/drivers/hid/intel-thc-hid/intel-thc/intel-thc-dev.h/linux/drivers/hid/intel-thc-hid/intel-thc/intel-thc-dma.c/linux/drivers/hid/intel-thc-hid/intel-thc/intel-thc-dma.h/linux/drivers/hid/intel-thc-hid/intel-thc/intel-thc-hw.h/linux/drivers/hid/intel-thc-hid/intel-thc/intel-thc-wot.c/linux/drivers/hid/intel-thc-hid/intel-thc/intel-thc-wot.h/linux/drivers/hid/usbhid/hid-pidff.c/linux/drivers/hid/usbhid/hid-pidff.h/linux/drivers/hwmon/adt7475.c/linux/drivers/hwmon/amc6821.c/linux/drivers/hwmon/asus-ec-sensors.c/linux/drivers/hwmon/axi-fan-control.c/linux/drivers/hwmon/corsair-psu.c/linux/drivers/hwmon/emc2305.c/linux/drivers/hwmon/gsc-hwmon.c/linux/drivers/hwmon/ibmaem.c/linux/drivers/hwmon/ina238.c/linux/drivers/hwmon/ltc4282.c/linux/drivers/hwmon/max31827.c/linux/drivers/hwmon/pmbus/Kconfig/linux/drivers/hwmon/pmbus/adp1050.c/linux/drivers/hwmon/pmbus/isl68137.c/linux/drivers/hwmon/pmbus/tps53679.c/linux/drivers/hwmon/w83627ehf.c/linux/drivers/hwtracing/intel_th/msu.c/linux/drivers/iio/adc/adi-axi-adc.c/linux/drivers/iio/dac/adi-axi-dac.c/linux/drivers/iommu/intel/iommu.c/linux/drivers/md/dm-linear.c/linux/drivers/md/dm-log-writes.c/linux/drivers/md/dm-stripe.c/linux/drivers/md/dm-target.c/linux/drivers/md/dm-writecache.c/linux/drivers/md/dm.c/linux/drivers/misc/pci_endpoint_test.c/linux/drivers/misc/vmw_balloon.c/linux/drivers/mtd/ftl.c/linux/drivers/mtd/nand/raw/atmel/nand-controller.c/linux/drivers/mtd/nand/raw/atmel/pmecc.c/linux/drivers/mtd/nand/raw/brcmnand/brcmnand.c/linux/drivers/mtd/nand/raw/fsmc_nand.c/linux/drivers/mtd/nand/raw/nand_hynix.c/linux/drivers/mtd/nand/raw/renesas-nand-controller.c/linux/drivers/mtd/nand/raw/rockchip-nand-controller.c/linux/drivers/mtd/nand/spi/alliancememory.c/linux/drivers/mtd/nand/spi/ato.c/linux/drivers/mtd/nand/spi/core.c/linux/drivers/mtd/nand/spi/esmt.c/linux/drivers/mtd/nand/spi/foresee.c/linux/drivers/mtd/nand/spi/gigadevice.c/linux/drivers/mtd/nand/spi/macronix.c/linux/drivers/mtd/nand/spi/micron.c/linux/drivers/mtd/nand/spi/paragon.c/linux/drivers/mtd/nand/spi/skyhigh.c/linux/drivers/mtd/nand/spi/toshiba.c/linux/drivers/mtd/nand/spi/winbond.c/linux/drivers/mtd/nand/spi/xtx.c/linux/drivers/mtd/nftlcore.c/linux/drivers/mtd/spi-nor/micron-st.c/linux/drivers/mtd/spi-nor/spansion.c/linux/drivers/mtd/spi-nor/swp.c/linux/drivers/nvdimm/pmem.c/linux/drivers/nvdimm/pmem.h/linux/drivers/pci/bus.c/linux/drivers/pci/controller/Kconfig/linux/drivers/pci/controller/cadence/pcie-cadence-ep.c/linux/drivers/pci/controller/cadence/pcie-cadence.h/linux/drivers/pci/controller/dwc/Kconfig/linux/drivers/pci/controller/dwc/Makefile/linux/drivers/pci/controller/dwc/pci-imx6.c/linux/drivers/pci/controller/dwc/pcie-designware-debugfs.c/linux/drivers/pci/controller/dwc/pcie-designware-host.c/linux/drivers/pci/controller/dwc/pcie-designware.c/linux/drivers/pci/controller/dwc/pcie-designware.h/linux/drivers/pci/controller/dwc/pcie-dw-rockchip.c/linux/drivers/pci/controller/dwc/pcie-qcom.c/linux/drivers/pci/controller/dwc/pcie-sophgo.c/linux/drivers/pci/controller/mobiveil/Kconfig/linux/drivers/pci/controller/mobiveil/pcie-mobiveil-host.c/linux/drivers/pci/controller/mobiveil/pcie-mobiveil.h/linux/drivers/pci/controller/pci-aardvark.c/linux/drivers/pci/controller/pci-host-common.c/linux/drivers/pci/controller/pci-host-common.h/linux/drivers/pci/controller/pci-mvebu.c/linux/drivers/pci/controller/pci-xgene-msi.c/linux/drivers/pci/controller/pci-xgene.c/linux/drivers/pci/controller/pcie-altera-msi.c/linux/drivers/pci/controller/pcie-altera.c/linux/drivers/pci/controller/pcie-brcmstb.c/linux/drivers/pci/controller/pcie-iproc-msi.c/linux/drivers/pci/controller/pcie-mediatek-gen3.c/linux/drivers/pci/controller/pcie-mediatek.c/linux/drivers/pci/controller/pcie-rcar-host.c/linux/drivers/pci/controller/pcie-rockchip-ep.c/linux/drivers/pci/controller/pcie-rockchip-host.c/linux/drivers/pci/controller/pcie-rockchip.h/linux/drivers/pci/controller/pcie-xilinx-dma-pl.c/linux/drivers/pci/controller/pcie-xilinx-nwl.c/linux/drivers/pci/controller/pcie-xilinx.c/linux/drivers/pci/controller/plda/Kconfig/linux/drivers/pci/controller/plda/pcie-plda-host.c/linux/drivers/pci/controller/plda/pcie-plda.h/linux/drivers/pci/controller/plda/pcie-starfive.c/linux/drivers/pci/controller/vmd.c/linux/drivers/pci/endpoint/Kconfig/linux/drivers/pci/endpoint/Makefile/linux/drivers/pci/endpoint/functions/pci-epf-test.c/linux/drivers/pci/endpoint/functions/pci-epf-vntb.c/linux/drivers/pci/endpoint/pci-ep-cfs.c/linux/drivers/pci/endpoint/pci-ep-msi.c/linux/drivers/pci/endpoint/pci-epf-core.c/linux/drivers/pci/hotplug/TODO/linux/drivers/pci/hotplug/pciehp_hpc.c/linux/drivers/pci/iov.c/linux/drivers/pci/msi/msi.c/linux/drivers/pci/pci-acpi.c/linux/drivers/pci/pci-driver.c/linux/drivers/pci/pci.c/linux/drivers/pci/pci.h/linux/drivers/pci/pcie/aer.c/linux/drivers/pci/pcie/aspm.c/linux/drivers/pci/pcie/portdrv.c/linux/drivers/pci/pcie/ptm.c/linux/drivers/pci/probe.c/linux/drivers/pci/quirks.c/linux/drivers/pci/setup-bus.c/linux/drivers/pci/setup-res.c/linux/drivers/phy/allwinner/phy-sun4i-usb.c/linux/drivers/phy/broadcom/phy-bcm-ns2-pcie.c/linux/drivers/phy/broadcom/phy-bcm-ns2-usbdrd.c/linux/drivers/phy/broadcom/phy-bcm-sr-pcie.c/linux/drivers/phy/broadcom/phy-brcm-sata.c/linux/drivers/phy/cadence/phy-cadence-sierra.c/linux/drivers/phy/cadence/phy-cadence-torrent.c/linux/drivers/phy/marvell/phy-pxa-usb.c/linux/drivers/phy/mediatek/phy-mtk-tphy.c/linux/drivers/phy/phy-snps-eusb2.c/linux/drivers/phy/qualcomm/Kconfig/linux/drivers/phy/qualcomm/Makefile/linux/drivers/phy/qualcomm/phy-qcom-eusb2-repeater.c/linux/drivers/phy/qualcomm/phy-qcom-m31-eusb2.c/linux/drivers/phy/qualcomm/phy-qcom-m31.c/linux/drivers/phy/qualcomm/phy-qcom-qmp-combo.c/linux/drivers/phy/qualcomm/phy-qcom-qmp-pcie.c/linux/drivers/phy/qualcomm/phy-qcom-qmp-pcs-pcie-v5_20.h/linux/drivers/phy/qualcomm/phy-qcom-qmp-pcs-usb-v8.h/linux/drivers/phy/qualcomm/phy-qcom-qmp-pcs-v5_20.h/linux/drivers/phy/qualcomm/phy-qcom-qmp-pcs-v8.h/linux/drivers/phy/qualcomm/phy-qcom-qmp-qserdes-com-v8.h/linux/drivers/phy/qualcomm/phy-qcom-qmp-qserdes-ln-shrd-v5.h/linux/drivers/phy/qualcomm/phy-qcom-qmp-qserdes-txrx-v8.h/linux/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c/linux/drivers/phy/qualcomm/phy-qcom-qmp.h/linux/drivers/phy/qualcomm/phy-qcom-qusb2.c/linux/drivers/phy/rockchip/phy-rockchip-pcie.c/linux/drivers/phy/samsung/phy-exynos-mipi-video.c/linux/drivers/phy/samsung/phy-exynos5-usbdrd.c/linux/drivers/phy/st/phy-stih407-usb.c/linux/drivers/phy/st/phy-stm32-usbphyc.c/linux/drivers/phy/ti/phy-twl4030-usb.c/linux/drivers/pinctrl/Kconfig/linux/drivers/pinctrl/Makefile/linux/drivers/pinctrl/aspeed/pinctrl-aspeed-g4.c/linux/drivers/pinctrl/aspeed/pinctrl-aspeed-g5.c/linux/drivers/pinctrl/aspeed/pinctrl-aspeed-g6.c/linux/drivers/pinctrl/aspeed/pinctrl-aspeed.c/linux/drivers/pinctrl/aspeed/pinctrl-aspeed.h/linux/drivers/pinctrl/bcm/pinctrl-bcm4908.c/linux/drivers/pinctrl/bcm/pinctrl-cygnus-mux.c/linux/drivers/pinctrl/bcm/pinctrl-ns.c/linux/drivers/pinctrl/bcm/pinctrl-ns2-mux.c/linux/drivers/pinctrl/bcm/pinctrl-nsp-mux.c/linux/drivers/pinctrl/berlin/berlin.c/linux/drivers/pinctrl/cirrus/pinctrl-cs42l43.c/linux/drivers/pinctrl/cirrus/pinctrl-lochnagar.c/linux/drivers/pinctrl/cirrus/pinctrl-madera-core.c/linux/drivers/pinctrl/core.c/linux/drivers/pinctrl/core.h/linux/drivers/pinctrl/intel/pinctrl-baytrail.c/linux/drivers/pinctrl/intel/pinctrl-cherryview.c/linux/drivers/pinctrl/intel/pinctrl-intel.c/linux/drivers/pinctrl/intel/pinctrl-lynxpoint.c/linux/drivers/pinctrl/mediatek/Kconfig/linux/drivers/pinctrl/mediatek/Makefile/linux/drivers/pinctrl/mediatek/mtk-eint.c/linux/drivers/pinctrl/mediatek/pinctrl-airoha.c/linux/drivers/pinctrl/mediatek/pinctrl-moore.c/linux/drivers/pinctrl/mediatek/pinctrl-mt8189.c/linux/drivers/pinctrl/mediatek/pinctrl-mtk-mt8189.h/linux/drivers/pinctrl/meson/pinctrl-amlogic-a4.c/linux/drivers/pinctrl/meson/pinctrl-meson-g12a.c/linux/drivers/pinctrl/nuvoton/pinctrl-ma35.c/linux/drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c/linux/drivers/pinctrl/nuvoton/pinctrl-npcm8xx.c/linux/drivers/pinctrl/nuvoton/pinctrl-wpcm450.c/linux/drivers/pinctrl/pinctrl-amd.c/linux/drivers/pinctrl/pinctrl-amdisp.c/linux/drivers/pinctrl/pinctrl-apple-gpio.c/linux/drivers/pinctrl/pinctrl-artpec6.c/linux/drivers/pinctrl/pinctrl-as3722.c/linux/drivers/pinctrl/pinctrl-at91-pio4.c/linux/drivers/pinctrl/pinctrl-aw9523.c/linux/drivers/pinctrl/pinctrl-bm1880.c/linux/drivers/pinctrl/pinctrl-da9062.c/linux/drivers/pinctrl/pinctrl-digicolor.c/linux/drivers/pinctrl/pinctrl-eic7700.c/linux/drivers/pinctrl/pinctrl-equilibrium.c/linux/drivers/pinctrl/pinctrl-falcon.c/linux/drivers/pinctrl/pinctrl-ingenic.c/linux/drivers/pinctrl/pinctrl-k210.c/linux/drivers/pinctrl/pinctrl-k230.c/linux/drivers/pinctrl/pinctrl-keembay.c/linux/drivers/pinctrl/pinctrl-lpc18xx.c/linux/drivers/pinctrl/pinctrl-max77620.c/linux/drivers/pinctrl/pinctrl-mcp23s08.c/linux/drivers/pinctrl/pinctrl-mlxbf3.c/linux/drivers/pinctrl/pinctrl-palmas.c/linux/drivers/pinctrl/pinctrl-pic32.c/linux/drivers/pinctrl/pinctrl-pistachio.c/linux/drivers/pinctrl/pinctrl-st.c/linux/drivers/pinctrl/pinctrl-tb10x.c/linux/drivers/pinctrl/pinctrl-xway.c/linux/drivers/pinctrl/pinctrl-zynq.c/linux/drivers/pinctrl/pinmux.c/linux/drivers/pinctrl/pinmux.h/linux/drivers/pinctrl/qcom/Kconfig.msm/linux/drivers/pinctrl/qcom/Makefile/linux/drivers/pinctrl/qcom/pinctrl-milos.c/linux/drivers/pinctrl/qcom/pinctrl-spmi-gpio.c/linux/drivers/pinctrl/qcom/tlmm-test.c/linux/drivers/pinctrl/renesas/Kconfig/linux/drivers/pinctrl/renesas/gpio.c/linux/drivers/pinctrl/renesas/pinctrl-rza1.c/linux/drivers/pinctrl/renesas/pinctrl-rza2.c/linux/drivers/pinctrl/renesas/pinctrl-rzg2l.c/linux/drivers/pinctrl/renesas/pinctrl-rzn1.c/linux/drivers/pinctrl/renesas/pinctrl-rzv2m.c/linux/drivers/pinctrl/samsung/pinctrl-exynos-arm64.c/linux/drivers/pinctrl/samsung/pinctrl-exynos.c/linux/drivers/pinctrl/samsung/pinctrl-samsung.h/linux/drivers/pinctrl/spear/pinctrl-plgpio.c/linux/drivers/pinctrl/starfive/pinctrl-starfive-jh7100.c/linux/drivers/pinctrl/starfive/pinctrl-starfive-jh7110.c/linux/drivers/pinctrl/stm32/Kconfig/linux/drivers/pinctrl/stm32/Makefile/linux/drivers/pinctrl/stm32/pinctrl-stm32-hdp.c/linux/drivers/pinctrl/stm32/pinctrl-stm32.c/linux/drivers/pinctrl/stm32/pinctrl-stm32.h/linux/drivers/pinctrl/stm32/pinctrl-stm32mp257.c/linux/drivers/pinctrl/sunplus/sppctl.c/linux/drivers/pinctrl/sunxi/pinctrl-sun8i-v3s.c/linux/drivers/pinctrl/sunxi/pinctrl-sunxi.c/linux/drivers/pinctrl/vt8500/pinctrl-wmt.c/linux/drivers/power/reset/Kconfig/linux/drivers/power/reset/at91-sama5d2_shdwc.c/linux/drivers/power/reset/qcom-pon.c/linux/drivers/power/supply/Makefile/linux/drivers/power/supply/bq2415x_charger.c/linux/drivers/power/supply/bq24190_charger.c/linux/drivers/power/supply/bq256xx_charger.c/linux/drivers/power/supply/bq25980_charger.c/linux/drivers/power/supply/cpcap-charger.c/linux/drivers/power/supply/max14577_charger.c/linux/drivers/power/supply/max1720x_battery.c/linux/drivers/power/supply/power_supply_core.c/linux/drivers/power/supply/qcom_battmgr.c/linux/drivers/power/supply/qcom_smbx.c/linux/drivers/power/supply/twl4030_charger.c/linux/drivers/power/supply/ug3105_battery.c/linux/drivers/pwm/pwm-axi-pwmgen.c/linux/drivers/pwm/pwm-imx-tpm.c/linux/drivers/pwm/pwm-mediatek.c/linux/drivers/regulator/act8865-regulator.c/linux/drivers/remoteproc/Kconfig/linux/drivers/remoteproc/omap_remoteproc.c/linux/drivers/remoteproc/pru_rproc.c/linux/drivers/remoteproc/qcom_q6v5_pas.c/linux/drivers/remoteproc/remoteproc_core.c/linux/drivers/remoteproc/remoteproc_virtio.c/linux/drivers/remoteproc/st_slim_rproc.c/linux/drivers/remoteproc/ti_k3_common.c/linux/drivers/remoteproc/ti_k3_r5_remoteproc.c/linux/drivers/remoteproc/xlnx_r5_remoteproc.c/linux/drivers/reset/Kconfig/linux/drivers/reset/Makefile/linux/drivers/reset/reset-spacemit.c/linux/drivers/rpmsg/virtio_rpmsg_bus.c/linux/drivers/rtc/rtc-stm32.c/linux/drivers/s390/block/dcssblk.c/linux/drivers/soundwire/amd_manager.c/linux/drivers/soundwire/bus.c/linux/drivers/soundwire/debugfs.c/linux/drivers/soundwire/intel_ace2x.c/linux/drivers/soundwire/intel_auxdevice.c/linux/drivers/soundwire/mipi_disco.c/linux/drivers/soundwire/qcom.c/linux/drivers/soundwire/stream.c/linux/drivers/spi/spi-axi-spi-engine.c/linux/drivers/spi/spi-mem.c/linux/drivers/ufs/host/ufs-qcom.c/linux/drivers/vdpa/mlx5/core/mr.c/linux/drivers/vdpa/mlx5/net/mlx5_vnet.c/linux/drivers/vdpa/vdpa_user/vduse_dev.c/linux/drivers/vfio/pci/vfio_pci_core.c/linux/drivers/vfio/pci/vfio_pci_igd.c/linux/drivers/vhost/Kconfig/linux/drivers/vhost/net.c/linux/drivers/vhost/scsi.c/linux/drivers/vhost/vhost.c/linux/drivers/vhost/vhost.h/linux/drivers/vhost/vringh.c/linux/drivers/vhost/vsock.c/linux/drivers/video/fbdev/Kconfig/linux/drivers/video/fbdev/core/Kconfig/linux/drivers/video/fbdev/core/fbcon.c/linux/drivers/video/fbdev/core/fbmem.c/linux/drivers/video/fbdev/core/svgalib.c/linux/drivers/video/fbdev/imxfb.c/linux/drivers/video/fbdev/kyro/fbdev.c/linux/drivers/video/fbdev/nvidia/nv_local.h/linux/drivers/video/fbdev/simplefb.c/linux/drivers/virtio/virtio.c/linux/drivers/virtio/virtio_balloon.c/linux/drivers/virtio/virtio_dma_buf.c/linux/drivers/virtio/virtio_mem.c/linux/drivers/virtio/virtio_mmio.c/linux/drivers/virtio/virtio_ring.c/linux/drivers/virtio/virtio_vdpa.c/linux/drivers/watchdog/dw_wdt.c/linux/drivers/watchdog/iTCO_wdt.c/linux/drivers/watchdog/it87_wdt.c/linux/drivers/watchdog/renesas_wdt.c/linux/drivers/watchdog/rti_wdt.c/linux/drivers/watchdog/sbsa_gwdt.c/linux/drivers/watchdog/watchdog_core.h/linux/drivers/watchdog/watchdog_pretimeout.c/linux/drivers/watchdog/ziirave_wdt.c/linux/fs/Kconfig/linux/fs/ceph/file.c/linux/fs/cramfs/inode.c/linux/fs/dax.c/linux/fs/direct-io.c/linux/fs/exec.c/linux/fs/ext4/file.c/linux/fs/fuse/dax.c/linux/fs/fuse/file.c/linux/fs/fuse/virtio_fs.c/linux/fs/hugetlbfs/inode.c/linux/fs/nfs/write.c/linux/fs/proc/generic.c/linux/fs/proc/inode.c/linux/fs/proc/internal.h/linux/fs/proc/meminfo.c/linux/fs/proc/page.c/linux/fs/proc/task_mmu.c/linux/fs/smb/client/cached_dir.c/linux/fs/smb/client/cached_dir.h/linux/fs/smb/client/cifs_debug.c/linux/fs/smb/client/cifsencrypt.c/linux/fs/smb/client/cifsglob.h/linux/fs/smb/client/cifsproto.h/linux/fs/smb/client/cifssmb.c/linux/fs/smb/client/connect.c/linux/fs/smb/client/fs_context.c/linux/fs/smb/client/link.c/linux/fs/smb/client/reparse.c/linux/fs/smb/client/reparse.h/linux/fs/smb/client/sess.c/linux/fs/smb/client/smb1ops.c/linux/fs/smb/client/smb2inode.c/linux/fs/smb/client/smb2ops.c/linux/fs/smb/client/smb2proto.h/linux/fs/userfaultfd.c/linux/fs/xfs/xfs_file.c/linux/include/asm-generic/Kbuild/linux/include/asm-generic/codetag.lds.h/linux/include/asm-generic/hugetlb.h/linux/include/asm-generic/unwind_user.h/linux/include/cxl/event.h/linux/include/dt-bindings/clock/nxp,imx94-clock.h/linux/include/dt-bindings/clock/qcom,ipq5018-cmn-pll.h/linux/include/dt-bindings/clock/qcom,ipq5424-cmn-pll.h/linux/include/dt-bindings/clock/qcom,milos-camcc.h/linux/include/dt-bindings/clock/qcom,milos-dispcc.h/linux/include/dt-bindings/clock/qcom,milos-gcc.h/linux/include/dt-bindings/clock/qcom,milos-gpucc.h/linux/include/dt-bindings/clock/qcom,milos-videocc.h/linux/include/dt-bindings/clock/qcom,qcs615-camcc.h/linux/include/dt-bindings/clock/qcom,qcs615-dispcc.h/linux/include/dt-bindings/clock/qcom,qcs615-gpucc.h/linux/include/dt-bindings/clock/qcom,qcs615-videocc.h/linux/include/dt-bindings/clock/qcom,x1e80100-gcc.h/linux/include/dt-bindings/clock/r9a07g043-cpg.h/linux/include/dt-bindings/clock/r9a07g044-cpg.h/linux/include/dt-bindings/clock/r9a07g054-cpg.h/linux/include/dt-bindings/clock/r9a08g045-cpg.h/linux/include/dt-bindings/clock/renesas,r9a09g077-cpg-mssr.h/linux/include/dt-bindings/clock/renesas,r9a09g087-cpg-mssr.h/linux/include/dt-bindings/clock/samsung,exynosautov920.h/linux/include/dt-bindings/pinctrl/stm32-pinfunc.h/linux/include/linux/adi-axi-common.h/linux/include/linux/alloc_tag.h/linux/include/linux/balloon_compaction.h/linux/include/linux/bitfield.h/linux/include/linux/bits.h/linux/include/linux/bpf-cgroup.h/linux/include/linux/bpf.h/linux/include/linux/cfi.h/linux/include/linux/cfi_types.h/linux/include/linux/cgroup-defs.h/linux/include/linux/cleanup.h/linux/include/linux/clk-provider.h/linux/include/linux/codetag.h/linux/include/linux/coredump.h/linux/include/linux/cpuhotplug.h/linux/include/linux/cpumask.h/linux/include/linux/damon.h/linux/include/linux/dax.h/linux/include/linux/device-mapper.h/linux/include/linux/find.h/linux/include/linux/firewire.h/linux/include/linux/fs.h/linux/include/linux/gfp.h/linux/include/linux/hid.h/linux/include/linux/highmem-internal.h/linux/include/linux/highmem.h/linux/include/linux/huge_mm.h/linux/include/linux/hugetlb.h/linux/include/linux/hypervisor.h/linux/include/linux/irq-entry-common.h/linux/include/linux/khugepaged.h/linux/include/linux/ksm.h/linux/include/linux/llist.h/linux/include/linux/maple_tree.h/linux/include/linux/memcontrol.h/linux/include/linux/memfd.h/linux/include/linux/memory-tiers.h/linux/include/linux/memory.h/linux/include/linux/memory_hotplug.h/linux/include/linux/migrate.h/linux/include/linux/mm.h/linux/include/linux/mm_types.h/linux/include/linux/mman.h/linux/include/linux/mmap_lock.h/linux/include/linux/mmdebug.h/linux/include/linux/mmzone.h/linux/include/linux/mtd/map.h/linux/include/linux/mtd/spinand.h/linux/include/linux/mutex.h/linux/include/linux/node.h/linux/include/linux/nodemask.h/linux/include/linux/page-flags.h/linux/include/linux/page-isolation.h/linux/include/linux/page_owner.h/linux/include/linux/pageblock-flags.h/linux/include/linux/pagemap.h/linux/include/linux/pagewalk.h/linux/include/linux/pci-ep-msi.h/linux/include/linux/pci-epf.h/linux/include/linux/pci-pwrctrl.h/linux/include/linux/pci.h/linux/include/linux/pci_hotplug.h/linux/include/linux/percpu-defs.h/linux/include/linux/pfn.h/linux/include/linux/pgtable.h/linux/include/linux/pinctrl/pinctrl.h/linux/include/linux/platform_data/emc2305.h/linux/include/linux/power_supply.h/linux/include/linux/proc_fs.h/linux/include/linux/rmap.h/linux/include/linux/rwsem.h/linux/include/linux/sched.h/linux/include/linux/sched/ext.h/linux/include/linux/shmem_fs.h/linux/include/linux/soc/samsung/exynos-regs-pmu.h/linux/include/linux/soundwire/sdw_amd.h/linux/include/linux/spi/spi-mem.h/linux/include/linux/swap.h/linux/include/linux/trace_events.h/linux/include/linux/unwind_deferred.h/linux/include/linux/unwind_deferred_types.h/linux/include/linux/unwind_user.h/linux/include/linux/unwind_user_types.h/linux/include/linux/userfaultfd_k.h/linux/include/linux/virtio.h/linux/include/linux/virtio_vsock.h/linux/include/linux/vmstat.h/linux/include/linux/vringh.h/linux/include/linux/watchdog.h/linux/include/linux/workqueue.h/linux/include/linux/writeback.h/linux/include/linux/zsmalloc.h/linux/include/soc/spacemit/k1-syscon.h/linux/include/sound/sdca_function.h/linux/include/sound/tas2770-tlv.h/linux/include/trace/events/btrfs.h/linux/include/trace/events/cgroup.h/linux/include/trace/events/damon.h/linux/include/trace/events/fs_dax.h/linux/include/trace/events/kmem.h/linux/include/trace/events/mmap.h/linux/include/trace/events/sched.h/linux/include/trace/events/writeback.h/linux/include/uapi/linux/pci_regs.h/linux/include/uapi/linux/pcitest.h/linux/include/uapi/linux/vhost.h/linux/init/Kconfig/linux/kernel/Makefile/linux/kernel/bpf/core.c/linux/kernel/bpf/syscall.c/linux/kernel/bpf/verifier.c/linux/kernel/cfi.c/linux/kernel/cgroup/cgroup-v1.c/linux/kernel/cgroup/cpuset.c/linux/kernel/cgroup/rstat.c/linux/kernel/events/uprobes.c/linux/kernel/exit.c/linux/kernel/fork.c/linux/kernel/irq/chip.c/linux/kernel/kexec_handover.c/linux/kernel/rcu/tree_stall.h/linux/kernel/sched/core.c/linux/kernel/sched/ext.c/linux/kernel/sched/ext.h/linux/kernel/sched/ext_idle.c/linux/kernel/sched/ext_idle.h/linux/kernel/sched/sched.h/linux/kernel/sys.c/linux/kernel/time/clocksource.c/linux/kernel/trace/Kconfig/linux/kernel/trace/Makefile/linux/kernel/trace/preemptirq_delay_test.c/linux/kernel/trace/rv/rv.c/linux/kernel/trace/trace.c/linux/kernel/trace/trace.h/linux/kernel/trace/trace_events.c/linux/kernel/trace/trace_events_filter.c/linux/kernel/trace/trace_hwlat.c/linux/kernel/unwind/Makefile/linux/kernel/unwind/deferred.c/linux/kernel/unwind/user.c/linux/kernel/vhost_task.c/linux/kernel/watchdog_buddy.c/linux/kernel/workqueue.c/linux/lib/alloc_tag.c/linux/lib/codetag.c/linux/lib/find_bit.c/linux/lib/maple_tree.c/linux/lib/test_hmm.c/linux/lib/test_maple_tree.c/linux/lib/test_vmalloc.c/linux/lib/tests/test_bits.c/linux/lib/xarray.c/linux/mm/Kconfig/linux/mm/balloon_compaction.c/linux/mm/cma.c/linux/mm/cma_debug.c/linux/mm/compaction.c/linux/mm/damon/Kconfig/linux/mm/damon/Makefile/linux/mm/damon/core.c/linux/mm/damon/lru_sort.c/linux/mm/damon/ops-common.c/linux/mm/damon/ops-common.h/linux/mm/damon/paddr.c/linux/mm/damon/reclaim.c/linux/mm/damon/stat.c/linux/mm/damon/sysfs-schemes.c/linux/mm/damon/sysfs.c/linux/mm/damon/tests/core-kunit.h/linux/mm/damon/tests/vaddr-kunit.h/linux/mm/damon/vaddr.c/linux/mm/debug.c/linux/mm/debug_vm_pgtable.c/linux/mm/execmem.c/linux/mm/filemap.c/linux/mm/gup.c/linux/mm/hmm.c/linux/mm/huge_memory.c/linux/mm/hugetlb.c/linux/mm/hugetlb_vmemmap.c/linux/mm/internal.h/linux/mm/kasan/kasan_test_c.c/linux/mm/khugepaged.c/linux/mm/ksm.c/linux/mm/list_lru.c/linux/mm/maccess.c/linux/mm/madvise.c/linux/mm/mapping_dirty_helpers.c/linux/mm/memcontrol.c/linux/mm/memfd.c/linux/mm/memory-failure.c/linux/mm/memory-tiers.c/linux/mm/memory.c/linux/mm/memory_hotplug.c/linux/mm/mempolicy.c/linux/mm/mempool.c/linux/mm/memremap.c/linux/mm/migrate.c/linux/mm/migrate_device.c/linux/mm/mlock.c/linux/mm/mm_init.c/linux/mm/mmap.c/linux/mm/mmap_lock.c/linux/mm/mprotect.c/linux/mm/mremap.c/linux/mm/nommu.c/linux/mm/page-writeback.c/linux/mm/page_alloc.c/linux/mm/page_ext.c/linux/mm/page_io.c/linux/mm/page_isolation.c/linux/mm/page_owner.c/linux/mm/page_vma_mapped.c/linux/mm/pagewalk.c/linux/mm/percpu-stats.c/linux/mm/percpu.c/linux/mm/pgtable-generic.c/linux/mm/ptdump.c/linux/mm/readahead.c/linux/mm/rmap.c/linux/mm/secretmem.c/linux/mm/shmem.c/linux/mm/show_mem.c/linux/mm/slub.c/linux/mm/swap.c/linux/mm/swap.h/linux/mm/swapfile.c/linux/mm/userfaultfd.c/linux/mm/util.c/linux/mm/vma.c/linux/mm/vma.h/linux/mm/vma_exec.c/linux/mm/vmpressure.c/linux/mm/vmscan.c/linux/mm/vmstat.c/linux/mm/zpdesc.h/linux/mm/zsmalloc.c/linux/mm/zswap.c/linux/net/core/filter.c/linux/net/netfilter/nf_bpf_link.c/linux/net/vmw_vsock/virtio_transport.c/linux/net/vmw_vsock/virtio_transport_common.c/linux/rust/Makefile/linux/rust/bindings/lib.rs/linux/rust/helpers/bug.c/linux/rust/helpers/helpers.c/linux/rust/helpers/time.c/linux/rust/kernel/.gitignore/linux/rust/kernel/alloc/allocator_test.rs/linux/rust/kernel/alloc/kbox.rs/linux/rust/kernel/alloc/kvec.rs/linux/rust/kernel/bits.rs/linux/rust/kernel/block/mq.rs/linux/rust/kernel/block/mq/operations.rs/linux/rust/kernel/block/mq/request.rs/linux/rust/kernel/bug.rs/linux/rust/kernel/clk.rs/linux/rust/kernel/configfs.rs/linux/rust/kernel/cpufreq.rs/linux/rust/kernel/cpumask.rs/linux/rust/kernel/device.rs/linux/rust/kernel/device_id.rs/linux/rust/kernel/devres.rs/linux/rust/kernel/dma.rs/linux/rust/kernel/drm/device.rs/linux/rust/kernel/drm/gem/mod.rs/linux/rust/kernel/error.rs/linux/rust/kernel/firmware.rs/linux/rust/kernel/fmt.rs/linux/rust/kernel/fs/file.rs/linux/rust/kernel/generated_arch_reachable_asm.rs.S/linux/rust/kernel/generated_arch_warn_asm.rs.S/linux/rust/kernel/init.rs/linux/rust/kernel/io.rs/linux/rust/kernel/kunit.rs/linux/rust/kernel/lib.rs/linux/rust/kernel/list.rs/linux/rust/kernel/list/impl_list_item_mod.rs/linux/rust/kernel/miscdevice.rs/linux/rust/kernel/mm/virt.rs/linux/rust/kernel/net/phy.rs/linux/rust/kernel/of.rs/linux/rust/kernel/opp.rs/linux/rust/kernel/pci.rs/linux/rust/kernel/platform.rs/linux/rust/kernel/prelude.rs/linux/rust/kernel/print.rs/linux/rust/kernel/rbtree.rs/linux/rust/kernel/revocable.rs/linux/rust/kernel/seq_file.rs/linux/rust/kernel/str.rs/linux/rust/kernel/sync.rs/linux/rust/kernel/sync/arc.rs/linux/rust/kernel/sync/aref.rs/linux/rust/kernel/time.rs/linux/rust/kernel/time/delay.rs/linux/rust/kernel/time/hrtimer.rs/linux/rust/kernel/time/hrtimer/arc.rs/linux/rust/kernel/time/hrtimer/pin.rs/linux/rust/kernel/time/hrtimer/pin_mut.rs/linux/rust/kernel/time/hrtimer/tbox.rs/linux/rust/kernel/types.rs/linux/rust/kernel/uaccess.rs/linux/rust/kernel/workqueue.rs/linux/rust/kernel/xarray.rs/linux/rust/macros/module.rs/linux/rust/pin-init/README.md/linux/rust/pin-init/examples/big_struct_in_place.rs/linux/rust/pin-init/examples/linked_list.rs/linux/rust/pin-init/examples/mutex.rs/linux/rust/pin-init/examples/pthread_mutex.rs/linux/rust/pin-init/examples/static_init.rs/linux/rust/pin-init/src/__internal.rs/linux/rust/pin-init/src/lib.rs/linux/rust/pin-init/src/macros.rs/linux/rust/uapi/lib.rs/linux/samples/damon/mtier.c/linux/samples/damon/prcl.c/linux/samples/damon/wsse.c/linux/samples/rust/rust_configfs.rs/linux/samples/rust/rust_driver_auxiliary.rs/linux/samples/rust/rust_misc_device.rs/linux/samples/rust/rust_print_main.rs/linux/scripts/Makefile.build/linux/scripts/module.lds.S/linux/scripts/rustdoc_test_gen.rs/linux/sound/hda/codecs/cirrus/Kconfig/linux/sound/hda/codecs/hdmi/Kconfig/linux/sound/hda/codecs/hdmi/Makefile/linux/sound/hda/codecs/realtek/Kconfig/linux/sound/hda/codecs/realtek/alc269.c/linux/sound/hda/codecs/side-codecs/tas2781_hda_i2c.c/linux/sound/hda/controllers/intel.c/linux/sound/hda/core/i915.c/linux/sound/soc/codecs/aw88399.c/linux/sound/soc/codecs/cs42l43-jack.c/linux/sound/soc/codecs/cs42l43.c/linux/sound/soc/codecs/cs42l43.h/linux/sound/soc/fsl/fsl_xcvr.c/linux/sound/soc/fsl/imx-card.c/linux/sound/soc/sdca/sdca_functions.c/linux/sound/soc/sdca/sdca_regmap.c/linux/sound/usb/mixer_scarlett2.c/linux/sound/usb/quirks.c/linux/tools/build/Makefile.feature/linux/tools/build/feature/Makefile/linux/tools/build/feature/test-all.c/linux/tools/build/feature/test-libbpf-strings.c/linux/tools/lib/bpf/libbpf.c/linux/tools/lib/perf/evlist.c/linux/tools/lib/perf/evsel.c/linux/tools/lib/perf/include/internal/evsel.h/linux/tools/lib/perf/include/perf/event.h/linux/tools/lib/subcmd/help.c/linux/tools/lib/subcmd/run-command.c/linux/tools/mm/show_page_info.py/linux/tools/perf/.gitignore/linux/tools/perf/Build/linux/tools/perf/Documentation/perf-check.txt/linux/tools/perf/Documentation/perf-ftrace.txt/linux/tools/perf/Documentation/perf-list.txt/linux/tools/perf/Documentation/perf-record.txt/linux/tools/perf/Documentation/perf-stat.txt/linux/tools/perf/Documentation/perf-trace.txt/linux/tools/perf/Makefile.config/linux/tools/perf/Makefile.perf/linux/tools/perf/arch/powerpc/util/Build/linux/tools/perf/arch/x86/Build/linux/tools/perf/arch/x86/include/arch-tests.h/linux/tools/perf/arch/x86/tests/Build/linux/tools/perf/arch/x86/tests/arch-tests.c/linux/tools/perf/arch/x86/tests/topdown.c/linux/tools/perf/arch/x86/util/event.c/linux/tools/perf/arch/x86/util/evlist.c/linux/tools/perf/arch/x86/util/evsel.c/linux/tools/perf/arch/x86/util/topdown.c/linux/tools/perf/arch/x86/util/topdown.h/linux/tools/perf/bench/evlist-open-close.c/linux/tools/perf/bench/inject-buildid.c/linux/tools/perf/bench/synthesize.c/linux/tools/perf/builtin-annotate.c/linux/tools/perf/builtin-buildid-cache.c/linux/tools/perf/builtin-buildid-list.c/linux/tools/perf/builtin-c2c.c/linux/tools/perf/builtin-check.c/linux/tools/perf/builtin-diff.c/linux/tools/perf/builtin-ftrace.c/linux/tools/perf/builtin-inject.c/linux/tools/perf/builtin-kallsyms.c/linux/tools/perf/builtin-kmem.c/linux/tools/perf/builtin-kvm.c/linux/tools/perf/builtin-kwork.c/linux/tools/perf/builtin-list.c/linux/tools/perf/builtin-lock.c/linux/tools/perf/builtin-mem.c/linux/tools/perf/builtin-record.c/linux/tools/perf/builtin-report.c/linux/tools/perf/builtin-sched.c/linux/tools/perf/builtin-script.c/linux/tools/perf/builtin-stat.c/linux/tools/perf/builtin-timechart.c/linux/tools/perf/builtin-top.c/linux/tools/perf/builtin-trace.c/linux/tools/perf/check-headers.sh/linux/tools/perf/include/perf/perf_dlfilter.h/linux/tools/perf/jvmti/libjvmti.c/linux/tools/perf/perf-archive.sh/linux/tools/perf/perf.c/linux/tools/perf/pmu-events/arch/arm64/common-and-microarch.json/linux/tools/perf/pmu-events/arch/arm64/fujitsu/monaka/core-imp-def.json/linux/tools/perf/pmu-events/arch/arm64/fujitsu/monaka/cycle_accounting.json/linux/tools/perf/pmu-events/arch/arm64/fujitsu/monaka/exception.json/linux/tools/perf/pmu-events/arch/arm64/fujitsu/monaka/fp_operation.json/linux/tools/perf/pmu-events/arch/arm64/fujitsu/monaka/l1d_cache.json/linux/tools/perf/pmu-events/arch/arm64/fujitsu/monaka/l1i_cache.json/linux/tools/perf/pmu-events/arch/arm64/fujitsu/monaka/l2_cache.json/linux/tools/perf/pmu-events/arch/arm64/fujitsu/monaka/l3_cache.json/linux/tools/perf/pmu-events/arch/arm64/fujitsu/monaka/ll_cache.json/linux/tools/perf/pmu-events/arch/arm64/fujitsu/monaka/pipeline.json/linux/tools/perf/pmu-events/arch/arm64/fujitsu/monaka/spec_operation.json/linux/tools/perf/pmu-events/arch/arm64/fujitsu/monaka/stall.json/linux/tools/perf/pmu-events/arch/arm64/fujitsu/monaka/sve.json/linux/tools/perf/pmu-events/arch/arm64/fujitsu/monaka/tlb.json/linux/tools/perf/pmu-events/arch/common/common/software.json/linux/tools/perf/pmu-events/arch/s390/cf_z16/pai_crypto.json/linux/tools/perf/pmu-events/arch/s390/cf_z17/basic.json/linux/tools/perf/pmu-events/arch/s390/cf_z17/crypto6.json/linux/tools/perf/pmu-events/arch/s390/cf_z17/extended.json/linux/tools/perf/pmu-events/arch/s390/cf_z17/pai_crypto.json/linux/tools/perf/pmu-events/arch/s390/cf_z17/pai_ext.json/linux/tools/perf/pmu-events/arch/s390/cf_z17/transaction.json/linux/tools/perf/pmu-events/arch/s390/mapfile.csv/linux/tools/perf/pmu-events/arch/x86/alderlake/cache.json/linux/tools/perf/pmu-events/arch/x86/alderlake/floating-point.json/linux/tools/perf/pmu-events/arch/x86/alderlake/other.json/linux/tools/perf/pmu-events/arch/x86/alderlake/pipeline.json/linux/tools/perf/pmu-events/arch/x86/alderlake/virtual-memory.json/linux/tools/perf/pmu-events/arch/x86/alderlaken/cache.json/linux/tools/perf/pmu-events/arch/x86/alderlaken/floating-point.json/linux/tools/perf/pmu-events/arch/x86/alderlaken/other.json/linux/tools/perf/pmu-events/arch/x86/alderlaken/pipeline.json/linux/tools/perf/pmu-events/arch/x86/alderlaken/virtual-memory.json/linux/tools/perf/pmu-events/arch/x86/arrowlake/cache.json/linux/tools/perf/pmu-events/arch/x86/arrowlake/frontend.json/linux/tools/perf/pmu-events/arch/x86/cascadelakex/floating-point.json/linux/tools/perf/pmu-events/arch/x86/cascadelakex/pipeline.json/linux/tools/perf/pmu-events/arch/x86/emeraldrapids/pipeline.json/linux/tools/perf/pmu-events/arch/x86/emeraldrapids/uncore-io.json/linux/tools/perf/pmu-events/arch/x86/emeraldrapids/uncore-memory.json/linux/tools/perf/pmu-events/arch/x86/grandridge/grr-metrics.json/linux/tools/perf/pmu-events/arch/x86/grandridge/uncore-interconnect.json/linux/tools/perf/pmu-events/arch/x86/grandridge/uncore-io.json/linux/tools/perf/pmu-events/arch/x86/graniterapids/cache.json/linux/tools/perf/pmu-events/arch/x86/graniterapids/counter.json/linux/tools/perf/pmu-events/arch/x86/graniterapids/gnr-metrics.json/linux/tools/perf/pmu-events/arch/x86/graniterapids/pipeline.json/linux/tools/perf/pmu-events/arch/x86/graniterapids/uncore-interconnect.json/linux/tools/perf/pmu-events/arch/x86/graniterapids/uncore-io.json/linux/tools/perf/pmu-events/arch/x86/icelakex/pipeline.json/linux/tools/perf/pmu-events/arch/x86/icelakex/uncore-cache.json/linux/tools/perf/pmu-events/arch/x86/lunarlake/cache.json/linux/tools/perf/pmu-events/arch/x86/lunarlake/pipeline.json/linux/tools/perf/pmu-events/arch/x86/lunarlake/virtual-memory.json/linux/tools/perf/pmu-events/arch/x86/mapfile.csv/linux/tools/perf/pmu-events/arch/x86/meteorlake/cache.json/linux/tools/perf/pmu-events/arch/x86/meteorlake/frontend.json/linux/tools/perf/pmu-events/arch/x86/meteorlake/pipeline.json/linux/tools/perf/pmu-events/arch/x86/pantherlake/cache.json/linux/tools/perf/pmu-events/arch/x86/pantherlake/counter.json/linux/tools/perf/pmu-events/arch/x86/pantherlake/frontend.json/linux/tools/perf/pmu-events/arch/x86/pantherlake/memory.json/linux/tools/perf/pmu-events/arch/x86/pantherlake/pipeline.json/linux/tools/perf/pmu-events/arch/x86/pantherlake/virtual-memory.json/linux/tools/perf/pmu-events/arch/x86/sapphirerapids/pipeline.json/linux/tools/perf/pmu-events/arch/x86/sapphirerapids/uncore-io.json/linux/tools/perf/pmu-events/arch/x86/sapphirerapids/uncore-memory.json/linux/tools/perf/pmu-events/arch/x86/sierraforest/frontend.json/linux/tools/perf/pmu-events/arch/x86/sierraforest/pipeline.json/linux/tools/perf/pmu-events/arch/x86/sierraforest/srf-metrics.json/linux/tools/perf/pmu-events/arch/x86/sierraforest/uncore-cache.json/linux/tools/perf/pmu-events/arch/x86/sierraforest/uncore-interconnect.json/linux/tools/perf/pmu-events/arch/x86/sierraforest/uncore-io.json/linux/tools/perf/pmu-events/arch/x86/skylakex/pipeline.json/linux/tools/perf/pmu-events/arch/x86/tigerlake/pipeline.json/linux/tools/perf/pmu-events/empty-pmu-events.c/linux/tools/perf/pmu-events/jevents.py/linux/tools/perf/pmu-events/pmu-events.h/linux/tools/perf/scripts/python/flamegraph.py/linux/tools/perf/tests/Build/linux/tools/perf/tests/backward-ring-buffer.c/linux/tools/perf/tests/bp_account.c/linux/tools/perf/tests/builtin-test.c/linux/tools/perf/tests/code-reading.c/linux/tools/perf/tests/dlfilter-test.c/linux/tools/perf/tests/dwarf-unwind.c/linux/tools/perf/tests/event-times.c/linux/tools/perf/tests/event_update.c/linux/tools/perf/tests/expand-cgroup.c/linux/tools/perf/tests/hists_cumulate.c/linux/tools/perf/tests/hists_filter.c/linux/tools/perf/tests/hists_link.c/linux/tools/perf/tests/hists_output.c/linux/tools/perf/tests/hwmon_pmu.c/linux/tools/perf/tests/keep-tracking.c/linux/tools/perf/tests/make/linux/tools/perf/tests/mmap-basic.c/linux/tools/perf/tests/mmap-thread-lookup.c/linux/tools/perf/tests/openat-syscall-all-cpus.c/linux/tools/perf/tests/openat-syscall-tp-fields.c/linux/tools/perf/tests/openat-syscall.c/linux/tools/perf/tests/parse-events.c/linux/tools/perf/tests/parse-metric.c/linux/tools/perf/tests/pe-file-parsing.c/linux/tools/perf/tests/perf-record.c/linux/tools/perf/tests/perf-targz-src-pkg/linux/tools/perf/tests/perf-time-to-tsc.c/linux/tools/perf/tests/pmu-events.c/linux/tools/perf/tests/sample-parsing.c/linux/tools/perf/tests/sdt.c/linux/tools/perf/tests/shell/amd-ibs-swfilt.sh/linux/tools/perf/tests/shell/annotate.sh/linux/tools/perf/tests/shell/buildid.sh/linux/tools/perf/tests/shell/coresight/asm_pure_loop.sh/linux/tools/perf/tests/shell/coresight/memcpy_thread_16k_10.sh/linux/tools/perf/tests/shell/coresight/thread_loop_check_tid_10.sh/linux/tools/perf/tests/shell/coresight/thread_loop_check_tid_2.sh/linux/tools/perf/tests/shell/coresight/unroll_loop_thread_10.sh/linux/tools/perf/tests/shell/diff.sh/linux/tools/perf/tests/shell/drm_pmu.sh/linux/tools/perf/tests/shell/ftrace.sh/linux/tools/perf/tests/shell/header.sh/linux/tools/perf/tests/shell/lib/perf_has_symbol.sh/linux/tools/perf/tests/shell/lib/perf_json_output_lint.py/linux/tools/perf/tests/shell/lib/probe_vfs_getname.sh/linux/tools/perf/tests/shell/lib/setup_python.sh/linux/tools/perf/tests/shell/lib/waiting.sh/linux/tools/perf/tests/shell/list.sh/linux/tools/perf/tests/shell/lock_contention.sh/linux/tools/perf/tests/shell/perf-report-hierarchy.sh/linux/tools/perf/tests/shell/probe_vfs_getname.sh/linux/tools/perf/tests/shell/record+probe_libc_inet_pton.sh/linux/tools/perf/tests/shell/record+script_probe_vfs_getname.sh/linux/tools/perf/tests/shell/record+zstd_comp_decomp.sh/linux/tools/perf/tests/shell/record.sh/linux/tools/perf/tests/shell/record_bpf_filter.sh/linux/tools/perf/tests/shell/record_offcpu.sh/linux/tools/perf/tests/shell/record_sideband.sh/linux/tools/perf/tests/shell/sched.sh/linux/tools/perf/tests/shell/script.sh/linux/tools/perf/tests/shell/stat+csv_summary.sh/linux/tools/perf/tests/shell/stat+shadow_stat.sh/linux/tools/perf/tests/shell/stat_all_pfm.sh/linux/tools/perf/tests/shell/stat_bpf_counters.sh/linux/tools/perf/tests/shell/stat_bpf_counters_cgrp.sh/linux/tools/perf/tests/shell/test_arm_callgraph_fp.sh/linux/tools/perf/tests/shell/test_arm_coresight.sh/linux/tools/perf/tests/shell/test_arm_coresight_disasm.sh/linux/tools/perf/tests/shell/test_arm_spe.sh/linux/tools/perf/tests/shell/test_arm_spe_fork.sh/linux/tools/perf/tests/shell/test_bpf_metadata.sh/linux/tools/perf/tests/shell/test_intel_pt.sh/linux/tools/perf/tests/shell/trace+probe_vfs_getname.sh/linux/tools/perf/tests/shell/trace_btf_enum.sh/linux/tools/perf/tests/shell/trace_btf_general.sh/linux/tools/perf/tests/shell/trace_exit_race.sh/linux/tools/perf/tests/shell/trace_record_replay.sh/linux/tools/perf/tests/shell/trace_summary.sh/linux/tools/perf/tests/subcmd-help.c/linux/tools/perf/tests/switch-tracking.c/linux/tools/perf/tests/symbols.c/linux/tools/perf/tests/task-exit.c/linux/tools/perf/tests/tests-scripts.c/linux/tools/perf/tests/tests.h/linux/tools/perf/tests/thread-map.c/linux/tools/perf/tests/topology.c/linux/tools/perf/tests/util.c/linux/tools/perf/tests/workloads/noploop.c/linux/tools/perf/trace/beauty/Build/linux/tools/perf/ui/browser.h/linux/tools/perf/ui/browsers/annotate.c/linux/tools/perf/ui/browsers/header.c/linux/tools/perf/ui/browsers/hists.c/linux/tools/perf/ui/browsers/scripts.c/linux/tools/perf/ui/tui/setup.c/linux/tools/perf/util/Build/linux/tools/perf/util/affinity.c/linux/tools/perf/util/affinity.h/linux/tools/perf/util/amd-sample-raw.c/linux/tools/perf/util/annotate.c/linux/tools/perf/util/annotate.h/linux/tools/perf/util/arm-spe.c/linux/tools/perf/util/auxtrace.c/linux/tools/perf/util/auxtrace.h/linux/tools/perf/util/bpf-event.c/linux/tools/perf/util/bpf-event.h/linux/tools/perf/util/bpf-filter.c/linux/tools/perf/util/bpf-filter.h/linux/tools/perf/util/bpf_ftrace.c/linux/tools/perf/util/bpf_skel/augmented_raw_syscalls.bpf.c/linux/tools/perf/util/bpf_skel/func_latency.bpf.c/linux/tools/perf/util/bpf_skel/perf_version.h/linux/tools/perf/util/bpf_trace_augment.c/linux/tools/perf/util/branch.c/linux/tools/perf/util/build-id.c/linux/tools/perf/util/build-id.h/linux/tools/perf/util/cap.c/linux/tools/perf/util/cap.h/linux/tools/perf/util/cgroup.c/linux/tools/perf/util/cgroup.h/linux/tools/perf/util/comm.c/linux/tools/perf/util/data-convert-bt.c/linux/tools/perf/util/data-convert-json.c/linux/tools/perf/util/db-export.c/linux/tools/perf/util/debug.c/linux/tools/perf/util/debug.h/linux/tools/perf/util/debuginfo.c/linux/tools/perf/util/disasm.c/linux/tools/perf/util/dlfilter.c/linux/tools/perf/util/drm_pmu.c/linux/tools/perf/util/drm_pmu.h/linux/tools/perf/util/dso.c/linux/tools/perf/util/dso.h/linux/tools/perf/util/dsos.c/linux/tools/perf/util/env.c/linux/tools/perf/util/env.h/linux/tools/perf/util/event.c/linux/tools/perf/util/event.h/linux/tools/perf/util/evlist.c/linux/tools/perf/util/evlist.h/linux/tools/perf/util/evsel.c/linux/tools/perf/util/evsel.h/linux/tools/perf/util/expr.c/linux/tools/perf/util/ftrace.h/linux/tools/perf/util/genelf.c/linux/tools/perf/util/header.c/linux/tools/perf/util/header.h/linux/tools/perf/util/hist.c/linux/tools/perf/util/hist.h/linux/tools/perf/util/hwmon_pmu.c/linux/tools/perf/util/hwmon_pmu.h/linux/tools/perf/util/intel-tpebs.c/linux/tools/perf/util/jitdump.c/linux/tools/perf/util/machine.c/linux/tools/perf/util/machine.h/linux/tools/perf/util/map.c/linux/tools/perf/util/map.h/linux/tools/perf/util/metricgroup.c/linux/tools/perf/util/metricgroup.h/linux/tools/perf/util/parse-events.c/linux/tools/perf/util/parse-events.h/linux/tools/perf/util/parse-events.l/linux/tools/perf/util/parse-events.y/linux/tools/perf/util/pfm.c/linux/tools/perf/util/pmu.c/linux/tools/perf/util/pmu.h/linux/tools/perf/util/pmus.c/linux/tools/perf/util/pmus.h/linux/tools/perf/util/print-events.c/linux/tools/perf/util/print-events.h/linux/tools/perf/util/probe-event.c/linux/tools/perf/util/probe-file.c/linux/tools/perf/util/probe-finder.c/linux/tools/perf/util/python.c/linux/tools/perf/util/s390-cpumsf.c/linux/tools/perf/util/sample-raw.c/linux/tools/perf/util/sample-raw.h/linux/tools/perf/util/sample.h/linux/tools/perf/util/scripting-engines/trace-event-python.c/linux/tools/perf/util/session.c/linux/tools/perf/util/session.h/linux/tools/perf/util/sha1.c/linux/tools/perf/util/sha1.h/linux/tools/perf/util/sort.c/linux/tools/perf/util/sort.h/linux/tools/perf/util/spark.c/linux/tools/perf/util/spark.h/linux/tools/perf/util/srcline.c/linux/tools/perf/util/stat-display.c/linux/tools/perf/util/stat-shadow.c/linux/tools/perf/util/stat.c/linux/tools/perf/util/stat.h/linux/tools/perf/util/symbol-minimal.c/linux/tools/perf/util/symbol.c/linux/tools/perf/util/symbol_conf.h/linux/tools/perf/util/synthetic-events.c/linux/tools/perf/util/synthetic-events.h/linux/tools/perf/util/target.c/linux/tools/perf/util/target.h/linux/tools/perf/util/thread.c/linux/tools/perf/util/thread.h/linux/tools/perf/util/thread_map.c/linux/tools/perf/util/thread_map.h/linux/tools/perf/util/tool.c/linux/tools/perf/util/tool.h/linux/tools/perf/util/tool_pmu.c/linux/tools/perf/util/tool_pmu.h/linux/tools/perf/util/top.c/linux/tools/perf/util/top.h/linux/tools/perf/util/tp_pmu.c/linux/tools/perf/util/tp_pmu.h/linux/tools/perf/util/trace_augment.h/linux/tools/perf/util/unwind-libdw.c/linux/tools/sched_ext/scx_qmap.bpf.c/linux/tools/testing/cxl/Kbuild/linux/tools/testing/cxl/config_check.c/linux/tools/testing/cxl/test/cxl.c/linux/tools/testing/nvdimm/pmem-dax.c/linux/tools/testing/nvdimm/test/iomap.c/linux/tools/testing/nvdimm/test/nfit_test.h/linux/tools/testing/radix-tree/maple.c/linux/tools/testing/selftests/alsa/utimer-test.c/linux/tools/testing/selftests/bpf/progs/verifier_ctx.c/linux/tools/testing/selftests/cgroup/lib/cgroup_util.c/linux/tools/testing/selftests/cgroup/lib/include/cgroup_util.h/linux/tools/testing/selftests/cgroup/test_core.c/linux/tools/testing/selftests/cgroup/test_cpu.c/linux/tools/testing/selftests/cgroup/test_kmem.c/linux/tools/testing/selftests/cgroup/test_zswap.c/linux/tools/testing/selftests/damon/Makefile/linux/tools/testing/selftests/damon/_common.sh/linux/tools/testing/selftests/damon/_damon_sysfs.py/linux/tools/testing/selftests/damon/drgn_dump_damon_status.py/linux/tools/testing/selftests/damon/lru_sort.sh/linux/tools/testing/selftests/damon/reclaim.sh/linux/tools/testing/selftests/damon/sysfs.py/linux/tools/testing/selftests/damon/sysfs.sh/linux/tools/testing/selftests/damon/sysfs_memcg_path_leak.sh/linux/tools/testing/selftests/damon/sysfs_update_removed_scheme_dir.sh/linux/tools/testing/selftests/drivers/dma-buf/udmabuf.c/linux/tools/testing/selftests/hid/tests/base.py/linux/tools/testing/selftests/hid/tests/base_device.py/linux/tools/testing/selftests/hid/tests/test_apple_keyboard.py/linux/tools/testing/selftests/hid/tests/test_gamepad.py/linux/tools/testing/selftests/hid/tests/test_ite_keyboard.py/linux/tools/testing/selftests/hid/tests/test_multitouch.py/linux/tools/testing/selftests/hid/tests/test_sony.py/linux/tools/testing/selftests/hid/tests/test_tablet.py/linux/tools/testing/selftests/hid/tests/test_wacom_generic.py/linux/tools/testing/selftests/mm/.gitignore/linux/tools/testing/selftests/mm/cow.c/linux/tools/testing/selftests/mm/guard-regions.c/linux/tools/testing/selftests/mm/gup_longterm.c/linux/tools/testing/selftests/mm/hugetlb-madvise.c/linux/tools/testing/selftests/mm/khugepaged.c/linux/tools/testing/selftests/mm/ksm_functional_tests.c/linux/tools/testing/selftests/mm/ksm_tests.c/linux/tools/testing/selftests/mm/merge.c/linux/tools/testing/selftests/mm/migration.c/linux/tools/testing/selftests/mm/mremap_test.c/linux/tools/testing/selftests/mm/pagemap_ioctl.c/linux/tools/testing/selftests/mm/run_vmtests.sh/linux/tools/testing/selftests/mm/soft-dirty.c/linux/tools/testing/selftests/mm/split_huge_page_test.c/linux/tools/testing/selftests/mm/thp_settings.c/linux/tools/testing/selftests/mm/thp_settings.h/linux/tools/testing/selftests/mm/thuge-gen.c/linux/tools/testing/selftests/mm/uffd-unit-tests.c/linux/tools/testing/selftests/mm/vm_util.c/linux/tools/testing/selftests/mm/vm_util.h/linux/tools/testing/selftests/pci_endpoint/pci_endpoint_test.c/linux/tools/testing/selftests/proc/.gitignore/linux/tools/testing/selftests/proc/Makefile/linux/tools/testing/selftests/proc/proc-maps-race.c/linux/tools/testing/selftests/sched_ext/maximal.bpf.c/linux/tools/testing/vma/vma.c/linux/tools/testing/vma/vma_internal.h/linux/tools/tracing/rtla/src/Build/linux/tools/tracing/rtla/src/actions.c/linux/tools/tracing/rtla/src/actions.h/linux/tools/tracing/rtla/src/timerlat.bpf.c/linux/tools/tracing/rtla/src/timerlat.c/linux/tools/tracing/rtla/src/timerlat.h/linux/tools/tracing/rtla/src/timerlat_bpf.c/linux/tools/tracing/rtla/src/timerlat_bpf.h/linux/tools/tracing/rtla/src/timerlat_hist.c/linux/tools/tracing/rtla/src/timerlat_top.c/linux/tools/tracing/rtla/tests/engine.sh/linux/tools/tracing/rtla/tests/hwnoise.t/linux/tools/tracing/rtla/tests/osnoise.t/linux/tools/tracing/rtla/tests/scripts/check-priority.sh/linux/tools/tracing/rtla/tests/timerlat.t |
f411b7ed | 04-Jul-2025 |
Tamir Duberstein <tamird@gmail.com> |
rust: kernel: remove `fmt!`, fix clippy::uninlined-format-args
Rather than export a macro that delegates to `core::format_args`, simply re-export `core::format_args` as `fmt` from the prelude. This
rust: kernel: remove `fmt!`, fix clippy::uninlined-format-args
Rather than export a macro that delegates to `core::format_args`, simply re-export `core::format_args` as `fmt` from the prelude. This exposes clippy warnings which were previously obscured by this macro, such as:
warning: variables can be used directly in the `format!` string --> ../drivers/cpufreq/rcpufreq_dt.rs:21:43 | 21 | let prop_name = CString::try_from_fmt(fmt!("{}-supply", name)).ok()?; | ^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#uninlined_format_args = note: `-W clippy::uninlined-format-args` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::uninlined_format_args)]` help: change this to | 21 - let prop_name = CString::try_from_fmt(fmt!("{}-supply", name)).ok()?; 21 + let prop_name = CString::try_from_fmt(fmt!("{name}-supply")).ok()?; |
Thus fix them in the same commit. This could possibly be fixed in two stages, but the diff is small enough (outside of kernel/str.rs) that I hope it can be taken in a single commit.
Signed-off-by: Tamir Duberstein <tamird@gmail.com> Reviewed-by: Benno Lossin <lossin@kernel.org> Reviewed-by: Alice Ryhl <aliceryhl@google.com> Acked-by: Danilo Krummrich <dakr@kernel.org> Link: https://lore.kernel.org/r/20250704-core-cstr-prepare-v1-1-a91524037783@gmail.com Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
show more ...
|
14ae91a8 | 13-Jul-2025 |
Rhys Lloyd <krakow20@gmail.com> |
gpu: nova-core: fix bounds check in PmuLookupTableEntry::new
data is sliced from 2..6, but the bounds check data.len() < 5 does not satisfy those bounds.
Fixes: 47c4846e4319 ("gpu: nova-core: vbios
gpu: nova-core: fix bounds check in PmuLookupTableEntry::new
data is sliced from 2..6, but the bounds check data.len() < 5 does not satisfy those bounds.
Fixes: 47c4846e4319 ("gpu: nova-core: vbios: Add support for FWSEC ucode extraction") Reviewed-by: Alexandre Courbot <acourbot@nvidia.com> Reviewed-by: Joel Fernandes <joelagnelf@nvidia.com> Signed-off-by: Rhys Lloyd <krakow20@gmail.com> Link: https://lore.kernel.org/r/20250713025108.9364-2-krakow20@gmail.com Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
show more ...
|
7feefbd2 | 08-Jul-2025 |
Alexandre Courbot <acourbot@nvidia.com> |
gpu: nova-core: convert `/*` comments to `//`
The second form is preferred, and there was no reason to use the first.
Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kerne
gpu: nova-core: convert `/*` comments to `//`
The second form is preferred, and there was no reason to use the first.
Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250708-nova-docs-v4-4-9d188772c4c7@nvidia.com Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
0b980688 | 08-Jul-2025 |
Joel Fernandes <joelagnelf@nvidia.com> |
gpu: nova-core: Clarify falcon code
Add documentation strings, comments and AES mode for completeness to the Falcon signatures.
Signed-off-by: Joel Fernandes <joelagnelf@nvidia.com> Signed-off-by:
gpu: nova-core: Clarify falcon code
Add documentation strings, comments and AES mode for completeness to the Falcon signatures.
Signed-off-by: Joel Fernandes <joelagnelf@nvidia.com> Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250708-nova-docs-v4-3-9d188772c4c7@nvidia.com Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
4d3e8913 | 08-Jul-2025 |
Joel Fernandes <joelagnelf@nvidia.com> |
gpu: nova-core: Clarify sysmembar operations
sysmembar is a critical operation that the GSP falcon needs to perform in the reset sequence. Add some code comments to clarify.
[acourbot@nvdidia.com:
gpu: nova-core: Clarify sysmembar operations
sysmembar is a critical operation that the GSP falcon needs to perform in the reset sequence. Add some code comments to clarify.
[acourbot@nvdidia.com: move relevant documentation to SysmemFlush type]
Signed-off-by: Joel Fernandes <joelagnelf@nvidia.com> Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250708-nova-docs-v4-2-9d188772c4c7@nvidia.com [ Minor grammar fix in the PFB register documentation. - Danilo ] Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
4a4d4e32 | 08-Jul-2025 |
Joel Fernandes <joelagnelf@nvidia.com> |
gpu: nova-core: Add code comments related to devinit
Add several code comments to reduce acronym soup and explain how devinit magic and bootflow works before driver loads. These are essential for de
gpu: nova-core: Add code comments related to devinit
Add several code comments to reduce acronym soup and explain how devinit magic and bootflow works before driver loads. These are essential for debug and development of the nova driver.
[acourbot@nvidia.com: reformat and reword a couple of sentences]
Signed-off-by: Joel Fernandes <joelagnelf@nvidia.com> Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250708-nova-docs-v4-1-9d188772c4c7@nvidia.com Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
4092e1b4 | 24-Jun-2025 |
Alexandre Courbot <acourbot@nvidia.com> |
gpu: nova-core: replace `Duration` with `Delta`
The kernel's `Delta` type was not available when the `wait_on` function was introduced. Now that it is, switch to it as it is more compact than `Durat
gpu: nova-core: replace `Duration` with `Delta`
The kernel's `Delta` type was not available when the `wait_on` function was introduced. Now that it is, switch to it as it is more compact than `Duration` and cannot panic.
Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250624-nova-delta-v1-1-b37d75a593ac@nvidia.com Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
43ad65ec | 24-Jun-2025 |
Danilo Krummrich <dakr@kernel.org> |
gpu: nova-core: consider `clippy::cast_lossless`
Fix all warnings caused by `clippy::cast_lossless`, which is going to be enabled by [1].
Cc: Alexandre Courbot <acourbot@nvidia.com> Cc: Miguel Ojed
gpu: nova-core: consider `clippy::cast_lossless`
Fix all warnings caused by `clippy::cast_lossless`, which is going to be enabled by [1].
Cc: Alexandre Courbot <acourbot@nvidia.com> Cc: Miguel Ojeda <ojeda@kernel.org> Link: https://lore.kernel.org/r/20250615-ptr-as-ptr-v12-5-f43b024581e8@gmail.com [1] Reviewed-by: Alexandre Courbot <acourbot@nvidia.com> Tested-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250624132337.2242-2-dakr@kernel.org Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
1b8233bb | 24-Jun-2025 |
Danilo Krummrich <dakr@kernel.org> |
gpu: nova-core: impl From for u32 for enums used from register!
Implement From for u32 for all enum types used within the register!() macro.
This avoids a conflict with [1] as reported in [2].
Cc:
gpu: nova-core: impl From for u32 for enums used from register!
Implement From for u32 for all enum types used within the register!() macro.
This avoids a conflict with [1] as reported in [2].
Cc: Alexandre Courbot <acourbot@nvidia.com> Cc: Miguel Ojeda <ojeda@kernel.org> Link: https://lore.kernel.org/r/20250615-ptr-as-ptr-v12-5-f43b024581e8@gmail.com [1] Link: https://lore.kernel.org/all/20250624173114.3be38990@canb.auug.org.au/ [2] Reviewed-by: Alexandre Courbot <acourbot@nvidia.com> Tested-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250624132337.2242-1-dakr@kernel.org Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
bfb9e46b | 09-Jun-2025 |
Guilherme Giacomo Simoes <trintaeoitogc@gmail.com> |
rust: macros: remove `module!`'s deprecated `author` key
Commit 38559da6afb2 ("rust: module: introduce `authors` key") introduced a new `authors` key to support multiple module authors, while keepin
rust: macros: remove `module!`'s deprecated `author` key
Commit 38559da6afb2 ("rust: module: introduce `authors` key") introduced a new `authors` key to support multiple module authors, while keeping the old `author` key for backward compatibility.
Now that most in-tree modules have migrated to `authors`, remove: 1. The deprecated `author` key support from the module macro 2. Legacy `author` entries from remaining modules
Signed-off-by: Guilherme Giacomo Simoes <trintaeoitogc@gmail.com> Acked-by: Andreas Hindborg <a.hindborg@kernel.org> Reviewed-by: Benno Lossin <lossin@kernel.org> Acked-by: Danilo Krummrich <dakr@kernel.org> Acked-by: Viresh Kumar <viresh.kumar@linaro.org> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Link: https://lore.kernel.org/r/20250609122200.179307-1-trintaeoitogc@gmail.com [ Reworded slightly. - Miguel ] Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
show more ...
|
3606620b | 19-Jun-2025 |
Alexandre Courbot <acourbot@nvidia.com> |
gpu: nova-core: update and annotate TODO list
A few new dependencies are required to remove some of the TODO items:
- A way to safely convert from byte slices to types implementing `FromBytes`, -
gpu: nova-core: update and annotate TODO list
A few new dependencies are required to remove some of the TODO items:
- A way to safely convert from byte slices to types implementing `FromBytes`, - A way to obtain slices and write into a `CoherentAllocation`, - Several improvements to the `register!()` macro, - Alignment operations to powers of two, and an equivalent to the C `fls`, - Support for `xa_alloc` in the XAlloc bindings.
Some items have also become obsolete:
- The auxiliary bus abstractions have been implemented and are in use, - The ELF utilities are not considered for being part of the core kernel bindings anymore. - VBIOS, falcon and GPU timer have been completed.
We now have quite a few TODO entries in the code, so annotate them with a 4 letter code representing the corresponding task in `todo.rst`. This allows to easily find which part of the code corresponds to a given entry (and conversely).
Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250619-nova-frts-v6-24-ecf41ef99252@nvidia.com Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
859aa3d9 | 19-Jun-2025 |
Alexandre Courbot <acourbot@nvidia.com> |
gpu: nova-core: load and run FWSEC-FRTS
With all the required pieces in place, load FWSEC-FRTS onto the GSP falcon, run it, and check that it successfully carved out the WPR2 region out of framebuff
gpu: nova-core: load and run FWSEC-FRTS
With all the required pieces in place, load FWSEC-FRTS onto the GSP falcon, run it, and check that it successfully carved out the WPR2 region out of framebuffer memory.
Reviewed-by: Lyude Paul <lyude@redhat.com> Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250619-nova-frts-v6-23-ecf41ef99252@nvidia.com Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
31f0feef | 19-Jun-2025 |
Alexandre Courbot <acourbot@nvidia.com> |
gpu: nova-core: extract FWSEC from BIOS and patch it to run FWSEC-FRTS
The FWSEC firmware needs to be extracted from the VBIOS and patched with the desired command, as well as the right signature. D
gpu: nova-core: extract FWSEC from BIOS and patch it to run FWSEC-FRTS
The FWSEC firmware needs to be extracted from the VBIOS and patched with the desired command, as well as the right signature. Do this so we are ready to load and run this firmware into the GSP falcon and create the FRTS region.
[joelagnelf@nvidia.com: give better names to FalconAppifHdrV1's fields]
Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250619-nova-frts-v6-22-ecf41ef99252@nvidia.com Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
43688451 | 19-Jun-2025 |
Alexandre Courbot <acourbot@nvidia.com> |
gpu: nova-core: add types for patching firmware binaries
Some of the firmwares need to be patched at load-time with a signature. Add a couple of types and traits that sub-modules can use to implemen
gpu: nova-core: add types for patching firmware binaries
Some of the firmwares need to be patched at load-time with a signature. Add a couple of types and traits that sub-modules can use to implement this behavior, while ensuring that the correct kind of signature is applied to the firmware.
Reviewed-by: Lyude Paul <lyude@redhat.com> Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250619-nova-frts-v6-21-ecf41ef99252@nvidia.com Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
80213934 | 19-Jun-2025 |
Alexandre Courbot <acourbot@nvidia.com> |
gpu: nova-core: compute layout of the FRTS region
FWSEC-FRTS is run with the desired address of the FRTS region as parameter, which we need to compute depending on some hardware parameters.
Do this
gpu: nova-core: compute layout of the FRTS region
FWSEC-FRTS is run with the desired address of the FRTS region as parameter, which we need to compute depending on some hardware parameters.
Do this in a `FbLayout` structure, that will be later extended to describe more memory regions used to boot the GSP.
Reviewed-by: Lyude Paul <lyude@redhat.com> Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250619-nova-frts-v6-20-ecf41ef99252@nvidia.com [ In doc-comment of FbLayout s/bootup process/boot process/ - Danilo ] Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
47c4846e | 19-Jun-2025 |
Joel Fernandes <joelagnelf@nvidia.com> |
gpu: nova-core: vbios: Add support for FWSEC ucode extraction
Using the support for navigating the VBIOS, add support to extract vBIOS ucode data required for GSP to boot. The main data extracted fr
gpu: nova-core: vbios: Add support for FWSEC ucode extraction
Using the support for navigating the VBIOS, add support to extract vBIOS ucode data required for GSP to boot. The main data extracted from the vBIOS is the FWSEC-FRTS firmware which runs on the GSP processor. This firmware runs in high secure mode, and sets up the WPR2 (Write protected region) before the Booter runs on the SEC2 processor.
Tested on my Ampere GA102 and boot is successful.
Cc: Alexandre Courbot <acourbot@nvidia.com> Cc: John Hubbard <jhubbard@nvidia.com> Cc: Shirish Baskaran <sbaskaran@nvidia.com> Cc: Alistair Popple <apopple@nvidia.com> Cc: Timur Tabi <ttabi@nvidia.com> Cc: Ben Skeggs <bskeggs@nvidia.com> Signed-off-by: Joel Fernandes <joelagnelf@nvidia.com> [ acourbot@nvidia.com: remove now-unneeded Devres acquisition ] Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250619-nova-frts-v6-19-ecf41ef99252@nvidia.com [ Re-format and use markdown in comments. - Danilo ] Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
dc70c6ae | 19-Jun-2025 |
Joel Fernandes <joelagnelf@nvidia.com> |
gpu: nova-core: vbios: Add support to look up PMU table in FWSEC
The PMU table in the FWSEC image has to be located to locate the start of the Falcon ucode in the same or another FWSEC image. Add su
gpu: nova-core: vbios: Add support to look up PMU table in FWSEC
The PMU table in the FWSEC image has to be located to locate the start of the Falcon ucode in the same or another FWSEC image. Add support for the same.
Signed-off-by: Joel Fernandes <joelagnelf@nvidia.com> Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250619-nova-frts-v6-18-ecf41ef99252@nvidia.com [ Re-format and use markdown in comments. - Danilo ] Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
6fda04e7 | 19-Jun-2025 |
Joel Fernandes <joelagnelf@nvidia.com> |
gpu: nova-core: vbios: Add base support for VBIOS construction and iteration
Add support for navigating the VBIOS images required for extracting ucode data for GSP to boot. Later patches will build
gpu: nova-core: vbios: Add base support for VBIOS construction and iteration
Add support for navigating the VBIOS images required for extracting ucode data for GSP to boot. Later patches will build on this.
Debug log messages will show the BIOS images:
[102141.013287] NovaCore: Found BIOS image at offset 0x0, size: 0xfe00, type: PciAt [102141.080692] NovaCore: Found BIOS image at offset 0xfe00, size: 0x14800, type: Efi [102141.098443] NovaCore: Found BIOS image at offset 0x24600, size: 0x5600, type: FwSec [102141.415095] NovaCore: Found BIOS image at offset 0x29c00, size: 0x60800, type: FwSec
Cc: Alexandre Courbot <acourbot@nvidia.com> Cc: John Hubbard <jhubbard@nvidia.com> Cc: Shirish Baskaran <sbaskaran@nvidia.com> Cc: Alistair Popple <apopple@nvidia.com> Cc: Timur Tabi <ttabi@nvidia.com> Cc: Ben Skeggs <bskeggs@nvidia.com> [ acourbot@nvidia.com: fix clippy warnings, read_more() function ] Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Signed-off-by: Joel Fernandes <joelagnelf@nvidia.com> Link: https://lore.kernel.org/r/20250619-nova-frts-v6-17-ecf41ef99252@nvidia.com [ Replace extend_with() and copy_from_slice() with extend_from_slice(); re-format and use markdown in comments. - Danilo ] Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
d0c167eb | 19-Jun-2025 |
Alexandre Courbot <acourbot@nvidia.com> |
gpu: nova-core: firmware: add ucode descriptor used by FWSEC-FRTS
FWSEC-FRTS is the first firmware we need to run on the GSP falcon in order to initiate the GSP boot process. Introduce the structure
gpu: nova-core: firmware: add ucode descriptor used by FWSEC-FRTS
FWSEC-FRTS is the first firmware we need to run on the GSP falcon in order to initiate the GSP boot process. Introduce the structure that describes it.
Reviewed-by: Lyude Paul <lyude@redhat.com> Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250619-nova-frts-v6-16-ecf41ef99252@nvidia.com Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
69f5cd67 | 19-Jun-2025 |
Alexandre Courbot <acourbot@nvidia.com> |
gpu: nova-core: add falcon register definitions and base code
Booting the GSP on Ampere requires an intricate dance between the GSP and SEC2 falcons, where the GSP starts by running the FWSEC firmwa
gpu: nova-core: add falcon register definitions and base code
Booting the GSP on Ampere requires an intricate dance between the GSP and SEC2 falcons, where the GSP starts by running the FWSEC firmware to create the WPR2 region , and then SEC2 loads the actual RISC-V firmware into the GSP.
Add the common Falcon code and HAL for Ampere GPUs, and instantiate the GSP and SEC2 Falcons that will be required to perform that dance and boot the GSP.
Thanks to Ben Skeggs for pointing out an important bug in the memory scrubbing code that could lead to a race condition and ultimately a failure to boot the GSP!
Reviewed-by: Lyude Paul <lyude@redhat.com> Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250619-nova-frts-v6-15-ecf41ef99252@nvidia.com Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|
6554ad65 | 19-Jun-2025 |
Alexandre Courbot <acourbot@nvidia.com> |
gpu: nova-core: register sysmem flush page
Reserve a page of system memory so sysmembar can perform a read on it if a system write occurred since the last flush. Do this early as it can be required
gpu: nova-core: register sysmem flush page
Reserve a page of system memory so sysmembar can perform a read on it if a system write occurred since the last flush. Do this early as it can be required to e.g. reset the GPU falcons.
Chipsets capabilities differ in that respect, so this commit also introduces the FB HAL.
Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Link: https://lore.kernel.org/r/20250619-nova-frts-v6-14-ecf41ef99252@nvidia.com [ * Use kernel::page::PAGE_SIZE instead of kernel::bindings::PAGE_SIZE. * Get rid of the Option for SysmemFlush. * Slightly reword SysmemFlush doc-comments.
- Danilo ] Signed-off-by: Danilo Krummrich <dakr@kernel.org>
show more ...
|