Linux 6.1.120
Subsystems (2)
Greg Kroah-Hartman
maintainerI'm announcing the release of the 6.1.120 kernel.
All users of the 6.1 kernel series must upgrade.
The updated 6.1.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-6.1.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary
thanks,
greg k-h
------------
Documentation/ABI/testing/sysfs-bus-pci | 11 Documentation/ABI/testing/sysfs-fs-f2fs | 7 Documentation/RCU/stallwarn.rst | 2 Documentation/devicetree/bindings/clock/adi,axi-clkgen.yaml | 22 Documentation/devicetree/bindings/iio/dac/adi,ad3552r.yaml | 2 Documentation/devicetree/bindings/serial/rs485.yaml | 19 Documentation/devicetree/bindings/sound/mt6359.yaml | 10 Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 Documentation/driver-api/fpga/fpga-bridge.rst | 7 Documentation/driver-api/fpga/fpga-mgr.rst | 34 Documentation/filesystems/mount_api.rst | 3 Documentation/locking/seqlock.rst | 2 Documentation/networking/j1939.rst | 2 Makefile | 2 arch/arm/boot/dts/sun9i-a80-cubieboard4.dts | 4 arch/arm/kernel/entry-armv.S | 8 arch/arm/kernel/head.S | 4 arch/arm/kernel/psci_smp.c | 7 arch/arm/mm/idmap.c | 7 arch/arm/mm/ioremap.c | 35 arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi | 3 arch/arm64/boot/dts/freescale/imx8mm-verdin.dtsi | 2 arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi | 2 arch/arm64/boot/dts/mediatek/mt8173-elm-hana.dtsi | 8 arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi-burnet.dts | 3 arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi-cozmo.dts | 2 arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi-damu.dts | 3 arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi-fennel.dtsi | 3 arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi | 56 arch/arm64/boot/dts/mediatek/mt8183-kukui-kakadu.dtsi | 4 arch/arm64/boot/dts/mediatek/mt8183-kukui-kodama.dtsi | 4 arch/arm64/boot/dts/mediatek/mt8183-kukui-krane.dtsi | 4 arch/arm64/boot/dts/mediatek/mt8195-cherry.dtsi | 2 arch/arm64/boot/dts/mediatek/mt8195.dtsi | 2 arch/arm64/kernel/fpsimd.c | 1 arch/arm64/kernel/process.c | 2 arch/arm64/kernel/ptrace.c | 6 arch/arm64/kernel/smccc-call.S | 35 arch/arm64/kernel/vmlinux.lds.S | 6 arch/arm64/kvm/arm.c | 2 arch/arm64/kvm/mmio.c | 36 arch/arm64/kvm/pmu-emul.c | 1 arch/arm64/kvm/vgic/vgic-its.c | 32 arch/arm64/kvm/vgic/vgic-mmio-v3.c | 7 arch/arm64/kvm/vgic/vgic.h | 24 arch/arm64/mm/context.c | 4 arch/arm64/net/bpf_jit_comp.c | 47 arch/loongarch/Makefile | 21 arch/loongarch/include/asm/hugetlb.h | 10 arch/loongarch/include/asm/page.h | 5 arch/loongarch/include/asm/percpu.h | 6 arch/loongarch/mm/tlb.c | 2 arch/loongarch/net/bpf_jit.c | 2 arch/loongarch/vdso/Makefile | 2 arch/m68k/coldfire/device.c | 8 arch/m68k/include/asm/mcfgpio.h | 2 arch/m68k/include/asm/mvme147hw.h | 4 arch/m68k/kernel/early_printk.c | 9 arch/m68k/mvme147/config.c | 30 arch/m68k/mvme147/mvme147.h | 6 arch/m68k/mvme16x/config.c | 2 arch/m68k/mvme16x/mvme16x.h | 6 arch/microblaze/kernel/microblaze_ksyms.c | 10 arch/mips/boot/dts/loongson/ls7a-pch.dtsi | 73 arch/mips/include/asm/switch_to.h | 2 arch/parisc/kernel/ftrace.c | 2 arch/powerpc/Kconfig | 4 arch/powerpc/Makefile | 13 arch/powerpc/include/asm/cache.h | 4 arch/powerpc/include/asm/dtl.h | 4 arch/powerpc/include/asm/fadump.h | 7 arch/powerpc/include/asm/page_32.h | 4 arch/powerpc/include/asm/sstep.h | 5 arch/powerpc/include/asm/vdso.h | 1 arch/powerpc/kernel/fadump.c | 23 arch/powerpc/kernel/prom_init.c | 29 arch/powerpc/kernel/setup-common.c | 6 arch/powerpc/kernel/setup_64.c | 1 arch/powerpc/kernel/vdso/Makefile | 57 arch/powerpc/kexec/file_load_64.c | 9 arch/powerpc/kvm/book3s_hv.c | 10 arch/powerpc/kvm/book3s_hv_nested.c | 14 arch/powerpc/lib/sstep.c | 12 arch/powerpc/mm/fault.c | 10 arch/powerpc/platforms/pseries/dtl.c | 8 arch/powerpc/platforms/pseries/lpar.c | 8 arch/s390/kernel/entry.S | 4 arch/s390/kernel/kprobes.c | 6 arch/s390/kernel/perf_cpum_sf.c | 4 arch/s390/kernel/syscalls/Makefile | 2 arch/sh/kernel/cpu/proc.c | 2 arch/um/drivers/net_kern.c | 2 arch/um/drivers/ubd_kern.c | 2 arch/um/drivers/vector_kern.c | 3 arch/um/kernel/physmem.c | 6 arch/um/kernel/process.c | 2 arch/um/kernel/sysrq.c | 2 arch/x86/crypto/aegis128-aesni-asm.S | 29 arch/x86/events/amd/core.c | 10 arch/x86/events/intel/core.c | 34 arch/x86/events/intel/pt.c | 11 arch/x86/events/intel/pt.h | 2 arch/x86/include/asm/amd_nb.h | 5 arch/x86/include/asm/barrier.h | 18 arch/x86/include/asm/cpufeatures.h | 1 arch/x86/include/asm/processor.h | 18 arch/x86/kernel/cpu/amd.c | 3 arch/x86/kernel/cpu/common.c | 7 arch/x86/kernel/cpu/hygon.c | 3 arch/x86/kvm/mmu/mmu.c | 5 arch/x86/kvm/mmu/paging_tmpl.h | 5 arch/x86/kvm/mmu/spte.c | 18 arch/x86/pci/acpi.c | 119 block/blk-merge.c | 10 block/blk-mq.c | 6 block/blk-mq.h | 13 crypto/api.c | 63 crypto/internal.h | 8 crypto/pcrypt.c | 12 drivers/acpi/arm64/gtdt.c | 2 drivers/acpi/cppc_acpi.c | 1 drivers/base/bus.c | 2 drivers/base/core.c | 69 drivers/base/property.c | 6 drivers/base/regmap/regmap-irq.c | 4 drivers/base/regmap/regmap.c | 12 drivers/block/brd.c | 66 drivers/block/ublk_drv.c | 17 drivers/block/virtio_blk.c | 46 drivers/bluetooth/btusb.c | 2 drivers/clk/clk-apple-nco.c | 3 drivers/clk/clk-axi-clkgen.c | 22 drivers/clk/imx/clk-fracn-gppll.c | 10 drivers/clk/imx/clk-lpcg-scu.c | 37 drivers/clk/imx/clk-scu.c | 2 drivers/clk/qcom/gcc-qcs404.c | 1 drivers/clk/renesas/rzg2l-cpg.c | 11 drivers/clk/sunxi-ng/ccu-sun20i-d1.c | 2 drivers/clocksource/Kconfig | 3 drivers/clocksource/timer-ti-dm-systimer.c | 4 drivers/comedi/comedi_fops.c | 12 drivers/counter/stm32-timer-cnt.c | 16 drivers/counter/ti-ecap-capture.c | 7 drivers/cpufreq/cppc_cpufreq.c | 6 drivers/cpufreq/loongson2_cpufreq.c | 4 drivers/cpufreq/mediatek-cpufreq-hw.c | 2 drivers/crypto/bcm/cipher.c | 5 drivers/crypto/caam/caampkc.c | 11 drivers/crypto/caam/qi.c | 2 drivers/crypto/cavium/cpt/cptpf_main.c | 6 drivers/crypto/hisilicon/hpre/hpre_main.c | 35 drivers/crypto/hisilicon/qm.c | 47 drivers/crypto/hisilicon/sec2/sec_main.c | 35 drivers/crypto/hisilicon/zip/zip_main.c | 35 drivers/crypto/inside-secure/safexcel_hash.c | 2 drivers/crypto/qat/qat_common/adf_hw_arbiter.c | 4 drivers/dax/pmem/Makefile | 7 drivers/dax/pmem/pmem.c | 10 drivers/dma-buf/dma-fence-array.c | 28 drivers/dma-buf/dma-fence-unwrap.c | 126 drivers/edac/bluefield_edac.c | 2 drivers/edac/fsl_ddr_edac.c | 22 drivers/edac/igen6_edac.c | 2 drivers/firmware/arm_scpi.c | 3 drivers/firmware/efi/tpm.c | 17 drivers/firmware/google/gsmi.c | 6 drivers/firmware/smccc/smccc.c | 4 drivers/fpga/fpga-bridge.c | 57 drivers/fpga/fpga-mgr.c | 82 drivers/gpio/gpio-exar.c | 10 drivers/gpio/gpio-grgpio.c | 26 drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c | 1 drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c | 2 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 48 drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 5 drivers/gpu/drm/amd/amdgpu/hdp_v5_2.c | 6 drivers/gpu/drm/amd/amdgpu/vega20_ih.c | 27 drivers/gpu/drm/amd/amdkfd/kfd_process.c | 5 drivers/gpu/drm/amd/display/dc/bios/bios_parser.c | 14 drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c | 3 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hwseq.c | 7 drivers/gpu/drm/amd/display/dc/dcn32/dcn32_hwseq.c | 11 drivers/gpu/drm/amd/display/dc/dcn32/dcn32_resource.c | 3 drivers/gpu/drm/amd/display/dc/dml/dcn20/display_rq_dlg_calc_20.c | 2 drivers/gpu/drm/amd/display/dc/dml/dcn32/dcn32_fpu.c | 7 drivers/gpu/drm/amd/display/dc/dml/dml1_display_rq_dlg_calc.c | 2 drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c | 2 drivers/gpu/drm/bridge/analogix/anx7625.c | 2 drivers/gpu/drm/bridge/ite-it6505.c | 11 drivers/gpu/drm/bridge/tc358767.c | 7 drivers/gpu/drm/display/drm_dp_dual_mode_helper.c | 4 drivers/gpu/drm/display/drm_dp_mst_topology.c | 55 drivers/gpu/drm/drm_mm.c | 2 drivers/gpu/drm/drm_panel_orientation_quirks.c | 19 drivers/gpu/drm/etnaviv/etnaviv_buffer.c | 3 drivers/gpu/drm/etnaviv/etnaviv_drv.c | 10 drivers/gpu/drm/etnaviv/etnaviv_dump.c | 7 drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 48 drivers/gpu/drm/etnaviv/etnaviv_gpu.h | 21 drivers/gpu/drm/fsl-dcu/Kconfig | 1 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c | 15 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.h | 3 drivers/gpu/drm/imx/dcss/dcss-crtc.c | 6 drivers/gpu/drm/imx/ipuv3-crtc.c | 6 drivers/gpu/drm/mcde/mcde_drv.c | 1 drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 4 drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 2 drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c | 2 drivers/gpu/drm/msm/msm_debugfs.c | 12 drivers/gpu/drm/msm/msm_drv.h | 9 drivers/gpu/drm/msm/msm_gpu.h | 15 drivers/gpu/drm/msm/msm_gpu_devfreq.c | 148 drivers/gpu/drm/omapdrm/dss/base.c | 25 drivers/gpu/drm/omapdrm/dss/omapdss.h | 3 drivers/gpu/drm/omapdrm/omap_drv.c | 4 drivers/gpu/drm/omapdrm/omap_gem.c | 10 drivers/gpu/drm/panel/panel-simple.c | 28 drivers/gpu/drm/panfrost/panfrost_gpu.c | 1 drivers/gpu/drm/radeon/r600_cs.c | 2 drivers/gpu/drm/scheduler/sched_main.c | 8 drivers/gpu/drm/sti/sti_cursor.c | 3 drivers/gpu/drm/sti/sti_gdp.c | 3 drivers/gpu/drm/sti/sti_hqvdp.c | 3 drivers/gpu/drm/sti/sti_mixer.c | 2 drivers/gpu/drm/ttm/ttm_bo_util.c | 13 drivers/gpu/drm/ttm/ttm_tt.c | 12 drivers/gpu/drm/v3d/v3d_mmu.c | 29 drivers/gpu/drm/v3d/v3d_perfmon.c | 2 drivers/gpu/drm/vc4/vc4_drv.h | 1 drivers/gpu/drm/vc4/vc4_hdmi.c | 6 drivers/gpu/drm/vc4/vc4_hvs.c | 31 drivers/hid/hid-ids.h | 1 drivers/hid/hid-magicmouse.c | 56 drivers/hid/wacom_sys.c | 3 drivers/hid/wacom_wac.c | 4 drivers/hwmon/nct6775-core.c | 7 drivers/hwmon/tps23861.c | 2 drivers/i3c/master.c | 201 drivers/i3c/master/dw-i3c-master.c | 5 drivers/i3c/master/i3c-master-cdns.c | 5 drivers/i3c/master/mipi-i3c-hci/core.c | 4 drivers/i3c/master/mipi-i3c-hci/dma.c | 2 drivers/i3c/master/svc-i3c-master.c | 148 drivers/iio/adc/ad7780.c | 2 drivers/iio/adc/ad7923.c | 4 drivers/iio/inkern.c | 2 drivers/iio/light/al3010.c | 11 drivers/iio/light/ltr501.c | 2 drivers/iio/magnetometer/yamaha-yas530.c | 13 drivers/infiniband/hw/bnxt_re/ib_verbs.c | 7 drivers/infiniband/hw/bnxt_re/qplib_fp.h | 2 drivers/infiniband/hw/hns/hns_roce_cq.c | 4 drivers/infiniband/hw/hns/hns_roce_device.h | 1 drivers/infiniband/hw/hns/hns_roce_hem.c | 76 drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 172 drivers/infiniband/hw/hns/hns_roce_hw_v2.h | 6 drivers/infiniband/hw/hns/hns_roce_mr.c | 11 drivers/infiniband/hw/hns/hns_roce_qp.c | 54 drivers/infiniband/hw/hns/hns_roce_srq.c | 4 drivers/iommu/arm/arm-smmu/arm-smmu.c | 11 drivers/iommu/intel/iommu.c | 40 drivers/iommu/io-pgtable-arm.c | 18 drivers/leds/flash/leds-mt6360.c | 3 drivers/leds/led-class.c | 14 drivers/leds/leds-lp55xx-common.c | 3 drivers/mailbox/arm_mhuv2.c | 8 drivers/mailbox/mtk-cmdq-mailbox.c | 12 drivers/md/bcache/closure.c | 10 drivers/md/bcache/super.c | 2 drivers/md/dm-thin.c | 1 drivers/media/dvb-frontends/ts2020.c | 8 drivers/media/i2c/adv7604.c | 5 drivers/media/i2c/adv7842.c | 13 drivers/media/i2c/dw9768.c | 10 drivers/media/i2c/tc358743.c | 4 drivers/media/platform/allegro-dvt/allegro-core.c | 4 drivers/media/platform/amphion/vpu_drv.c | 2 drivers/media/platform/amphion/vpu_v4l2.c | 2 drivers/media/platform/aspeed/aspeed-video.c | 4 drivers/media/platform/nxp/imx-jpeg/mxc-jpeg.c | 4 drivers/media/platform/qcom/venus/core.c | 2 drivers/media/platform/qcom/venus/core.h | 11 drivers/media/platform/qcom/venus/vdec.c | 4 drivers/media/platform/qcom/venus/venc.c | 72 drivers/media/platform/samsung/exynos4-is/media-dev.h | 5 drivers/media/radio/wl128x/fmdrv_common.c | 3 drivers/media/test-drivers/vivid/vivid-vid-cap.c | 15 drivers/media/usb/cx231xx/cx231xx-cards.c | 2 drivers/media/usb/gspca/ov534.c | 2 drivers/media/usb/uvc/uvc_driver.c | 113 drivers/media/v4l2-core/v4l2-dv-timings.c | 132 drivers/memory/renesas-rpc-if.c | 42 drivers/message/fusion/mptsas.c | 4 drivers/mfd/da9052-spi.c | 2 drivers/mfd/intel_soc_pmic_bxtwc.c | 126 drivers/mfd/rt5033.c | 4 drivers/mfd/tps65010.c | 8 drivers/misc/apds990x.c | 12 drivers/misc/eeprom/eeprom_93cx6.c | 10 drivers/mmc/core/bus.c | 2 drivers/mmc/core/card.h | 7 drivers/mmc/core/core.c | 3 drivers/mmc/core/quirks.h | 9 drivers/mmc/core/sd.c | 2 drivers/mmc/host/mmc_spi.c | 9 drivers/mmc/host/mtk-sd.c | 9 drivers/mmc/host/sdhci-pci-core.c | 72 drivers/mmc/host/sdhci-pci.h | 1 drivers/mtd/hyperbus/rpc-if.c | 31 drivers/mtd/nand/raw/atmel/pmecc.c | 8 drivers/mtd/nand/raw/atmel/pmecc.h | 2 drivers/mtd/spi-nor/core.c | 2 drivers/mtd/ubi/attach.c | 12 drivers/mtd/ubi/fastmap-wl.c | 19 drivers/mtd/ubi/wl.c | 11 drivers/mtd/ubi/wl.h | 3 drivers/net/can/c_can/c_can_main.c | 26 drivers/net/can/dev/dev.c | 2 drivers/net/can/ifi_canfd/ifi_canfd.c | 58 drivers/net/can/m_can/m_can.c | 33 drivers/net/can/sja1000/sja1000.c | 67 drivers/net/can/spi/hi311x.c | 50 drivers/net/can/spi/mcp251xfd/mcp251xfd-tef.c | 29 drivers/net/can/sun4i_can.c | 22 drivers/net/can/usb/ems_usb.c | 58 drivers/net/can/usb/gs_usb.c | 104 drivers/net/dsa/qca/qca8k-8xxx.c | 2 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c | 9 drivers/net/ethernet/broadcom/bnxt/bnxt.c | 8 drivers/net/ethernet/broadcom/tg3.c | 3 drivers/net/ethernet/cavium/liquidio/lio_main.c | 11 drivers/net/ethernet/chelsio/cxgb4/cxgb4_ptp.c | 13 drivers/net/ethernet/freescale/fec_mpc52xx_phy.c | 2 drivers/net/ethernet/freescale/fec_ptp.c | 13 drivers/net/ethernet/freescale/fs_enet/mii-bitbang.c | 2 drivers/net/ethernet/google/gve/gve_main.c | 7 drivers/net/ethernet/google/gve/gve_rx.c | 4 drivers/net/ethernet/google/gve/gve_tx.c | 4 drivers/net/ethernet/intel/igb/igb_main.c | 4 drivers/net/ethernet/intel/ixgbe/ixgbe_common.h | 2 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c | 2 drivers/net/ethernet/intel/ixgbevf/ipsec.c | 1 drivers/net/ethernet/marvell/octeontx2/af/rpm.c | 2 drivers/net/ethernet/marvell/octeontx2/nic/cn10k.c | 5 drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c | 4 drivers/net/ethernet/marvell/octeontx2/nic/otx2_dcbnl.c | 5 drivers/net/ethernet/marvell/octeontx2/nic/otx2_dmac_flt.c | 9 drivers/net/ethernet/marvell/octeontx2/nic/otx2_ethtool.c | 10 drivers/net/ethernet/marvell/octeontx2/nic/otx2_flows.c | 10 drivers/net/ethernet/marvell/pxa168_eth.c | 14 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_encap.c | 13 drivers/net/ethernet/mellanox/mlxsw/spectrum.h | 1 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c | 5 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c | 4 drivers/net/ethernet/qlogic/qed/qed_mcp.c | 4 drivers/net/ethernet/qlogic/qede/qede_ptp.c | 13 drivers/net/ethernet/realtek/r8169_main.c | 14 drivers/net/ethernet/rocker/rocker_main.c | 2 drivers/net/ethernet/sfc/ptp.c | 7 drivers/net/ethernet/sfc/siena/ptp.c | 7 drivers/net/ethernet/stmicro/stmmac/dwmac-socfpga.c | 2 drivers/net/ethernet/ti/am65-cpts.c | 5 drivers/net/geneve.c | 2 drivers/net/mdio/mdio-ipq4019.c | 5 drivers/net/netdevsim/ipsec.c | 11 drivers/net/phy/sfp.c | 3 drivers/net/usb/lan78xx.c | 40 drivers/net/usb/qmi_wwan.c | 1 drivers/net/usb/r8152.c | 1 drivers/net/veth.c | 44 drivers/net/vrf.c | 24 drivers/net/wireless/ath/ath10k/mac.c | 4 drivers/net/wireless/ath/ath5k/pci.c | 2 drivers/net/wireless/ath/ath9k/htc_hst.c | 3 drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c | 2 drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c | 3 drivers/net/wireless/intel/ipw2x00/libipw_rx.c | 8 drivers/net/wireless/intel/iwlwifi/fw/init.c | 4 drivers/net/wireless/intel/iwlwifi/mvm/d3.c | 2 drivers/net/wireless/intel/iwlwifi/mvm/tx.c | 12 drivers/net/wireless/intersil/p54/p54spi.c | 4 drivers/net/wireless/marvell/mwifiex/fw.h | 2 drivers/net/wireless/marvell/mwifiex/main.c | 4 drivers/net/wireless/realtek/rtlwifi/efuse.c | 11 drivers/net/wireless/realtek/rtw89/mac80211.c | 4 drivers/net/wireless/realtek/rtw89/util.h | 18 drivers/net/wireless/silabs/wfx/main.c | 17 drivers/nvdimm/dax_devs.c | 4 drivers/nvdimm/nd.h | 7 drivers/nvme/host/pci.c | 55 drivers/pci/controller/dwc/pci-keystone.c | 12 drivers/pci/controller/pcie-rockchip-ep.c | 16 drivers/pci/controller/pcie-rockchip.h | 4 drivers/pci/endpoint/pci-epc-core.c | 13 drivers/pci/hotplug/cpqphp_pci.c | 19 drivers/pci/pci-sysfs.c | 26 drivers/pci/pci.c | 7 drivers/pci/pci.h | 1 drivers/pci/probe.c | 30 drivers/pci/quirks.c | 15 drivers/pci/slot.c | 4 drivers/perf/arm-cmn.c | 4 drivers/perf/arm_smmuv3_pmu.c | 19 drivers/pinctrl/freescale/Kconfig | 2 drivers/pinctrl/pinctrl-k210.c | 2 drivers/pinctrl/pinctrl-zynqmp.c | 1 drivers/pinctrl/qcom/pinctrl-spmi-gpio.c | 4 drivers/pinctrl/qcom/pinctrl-spmi-mpp.c | 1 drivers/platform/chrome/cros_ec_typec.c | 1 drivers/platform/x86/dell/dell-smbios-base.c | 1 drivers/platform/x86/dell/dell-wmi-base.c | 6 drivers/platform/x86/intel/bxtwc_tmu.c | 22 drivers/platform/x86/panasonic-laptop.c | 10 drivers/platform/x86/thinkpad_acpi.c | 28 drivers/power/supply/bq27xxx_battery.c | 37 drivers/power/supply/power_supply_core.c | 2 drivers/ptp/ptp_clock.c | 3 drivers/ptp/ptp_dte.c | 5 drivers/pwm/pwm-imx27.c | 98 drivers/regulator/rk808-regulator.c | 2 drivers/remoteproc/qcom_q6v5_mss.c | 6 drivers/remoteproc/qcom_q6v5_pas.c | 44 drivers/rpmsg/qcom_glink_native.c | 101 drivers/rtc/interface.c | 7 drivers/rtc/rtc-ab-eoz9.c | 7 drivers/rtc/rtc-abx80x.c | 2 drivers/rtc/rtc-cmos.c | 31 drivers/rtc/rtc-rzn1.c | 8 drivers/rtc/rtc-st-lpc.c | 5 drivers/s390/cio/cio.c | 6 drivers/s390/cio/device.c | 18 drivers/scsi/bfa/bfad.c | 3 drivers/scsi/hisi_sas/hisi_sas_v3_hw.c | 1 drivers/scsi/lpfc/lpfc_hbadisc.c | 3 drivers/scsi/lpfc/lpfc_scsi.c | 13 drivers/scsi/lpfc/lpfc_sli.c | 11 drivers/scsi/qedf/qedf_main.c | 1 drivers/scsi/qedi/qedi_main.c | 1 drivers/scsi/qla2xxx/qla_attr.c | 1 drivers/scsi/qla2xxx/qla_bsg.c | 124 drivers/scsi/qla2xxx/qla_mid.c | 1 drivers/scsi/qla2xxx/qla_os.c | 15 drivers/scsi/scsi_debug.c | 2 drivers/scsi/st.c | 31 drivers/sh/intc/core.c | 2 drivers/soc/fsl/rcpm.c | 1 drivers/soc/imx/soc-imx8m.c | 107 drivers/soc/qcom/qcom-geni-se.c | 3 drivers/soc/qcom/socinfo.c | 8 drivers/soc/ti/smartreflex.c | 4 drivers/soc/ti/ti_sci_pm_domains.c | 4 drivers/soc/xilinx/xlnx_event_manager.c | 4 drivers/spi/atmel-quadspi.c | 2 drivers/spi/spi-fsl-lpspi.c | 14 drivers/spi/spi-mpc52xx.c | 1 drivers/spi/spi-rpc-if.c | 14 drivers/spi/spi-tegra210-quad.c | 2 drivers/spi/spi-zynqmp-gqspi.c | 2 drivers/spi/spi.c | 13 drivers/staging/media/atomisp/pci/sh_css_params.c | 2 drivers/thermal/intel/int340x_thermal/int3400_thermal.c | 2 drivers/thermal/thermal_core.c | 2 drivers/tty/serial/8250/8250_dw.c | 5 drivers/tty/serial/8250/8250_fintek.c | 14 drivers/tty/serial/8250/8250_omap.c | 4 drivers/tty/serial/amba-pl011.c | 79 drivers/tty/serial/sc16is7xx.c | 5 drivers/tty/tty_ldisc.c | 2 drivers/ufs/core/ufs-sysfs.c | 6 drivers/ufs/core/ufshcd.c | 11 drivers/ufs/host/ufs-exynos.c | 16 drivers/ufs/host/ufs-renesas.c | 9 drivers/usb/chipidea/udc.c | 2 drivers/usb/dwc3/core.h | 1 drivers/usb/dwc3/ep0.c | 7 drivers/usb/dwc3/gadget.c | 104 drivers/usb/dwc3/gadget.h | 1 drivers/usb/gadget/composite.c | 18 drivers/usb/host/ehci-spear.c | 7 drivers/usb/host/xhci-dbgcap.c | 135 drivers/usb/host/xhci-dbgcap.h | 2 drivers/usb/host/xhci-ring.c | 18 drivers/usb/misc/chaoskey.c | 35 drivers/usb/misc/iowarrior.c | 50 drivers/usb/misc/yurex.c | 5 drivers/usb/musb/musb_gadget.c | 13 drivers/usb/typec/tcpm/wcove.c | 4 drivers/vdpa/mlx5/core/mr.c | 4 drivers/vfio/pci/mlx5/cmd.c | 47 drivers/vfio/pci/vfio_pci_config.c | 16 drivers/video/fbdev/efifb.c | 11 drivers/video/fbdev/sh7760fb.c | 11 drivers/watchdog/apple_wdt.c | 2 drivers/watchdog/iTCO_wdt.c | 21 drivers/watchdog/mtk_wdt.c | 6 drivers/watchdog/rti_wdt.c | 3 drivers/xen/xenbus/xenbus_probe.c | 8 fs/btrfs/ctree.c | 10 fs/btrfs/ctree.h | 2 fs/btrfs/extent-tree.c | 3 fs/btrfs/inode.c | 14 fs/btrfs/ioctl.c | 36 fs/btrfs/ref-verify.c | 1 fs/btrfs/root-tree.c | 10 fs/btrfs/volumes.c | 42 fs/cachefiles/ondemand.c | 4 fs/ceph/super.c | 10 fs/eventpoll.c | 6 fs/exfat/namei.c | 1 fs/ext4/ext4.h | 1 fs/ext4/fsmap.c | 54 fs/ext4/mballoc.c | 18 fs/ext4/mballoc.h | 1 fs/ext4/super.c | 33 fs/f2fs/file.c | 8 fs/f2fs/gc.c | 2 fs/f2fs/inode.c | 4 fs/f2fs/segment.c | 74 fs/f2fs/segment.h | 41 fs/fscache/volume.c | 3 fs/hfsplus/hfsplus_fs.h | 3 fs/hfsplus/wrapper.c | 2 fs/inode.c | 10 fs/jffs2/compr_rtime.c | 3 fs/jffs2/erase.c | 7 fs/jfs/jfs_dmap.c | 6 fs/jfs/jfs_dtree.c | 15 fs/jfs/xattr.c | 2 fs/nfs/internal.h | 2 fs/nfs/nfs4proc.c | 8 fs/nfsd/export.c | 5 fs/nfsd/nfs4callback.c | 16 fs/nfsd/nfs4proc.c | 7 fs/nfsd/nfs4recover.c | 3 fs/nfsd/nfs4state.c | 19 fs/nilfs2/dir.c | 2 fs/notify/fsnotify.c | 23 fs/ntfs3/record.c | 32 fs/ocfs2/aops.h | 2 fs/ocfs2/dlmglue.c | 1 fs/ocfs2/file.c | 4 fs/ocfs2/localalloc.c | 19 fs/ocfs2/namei.c | 4 fs/overlayfs/inode.c | 7 fs/overlayfs/util.c | 3 fs/proc/kcore.c | 11 fs/proc/softirqs.c | 2 fs/quota/dquot.c | 2 fs/smb/client/cached_dir.c | 2 fs/smb/client/cifssmb.c | 2 fs/smb/client/smb2ops.c | 8 fs/smb/server/smb2pdu.c | 6 fs/ubifs/super.c | 6 fs/ubifs/tnc_commit.c | 2 fs/udf/inode.c | 46 fs/unicode/mkutf8data.c | 70 fs/unicode/utf8-core.c | 2 fs/unicode/utf8data.c_shipped | 6703 +++++----- fs/xfs/libxfs/xfs_sb.c | 7 fs/xfs/xfs_log_recover.c | 5 include/drm/display/drm_dp_mst_helper.h | 7 include/drm/ttm/ttm_tt.h | 7 include/linux/arm-smccc.h | 30 include/linux/blkdev.h | 2 include/linux/bpf.h | 7 include/linux/cache.h | 6 include/linux/crypto.h | 1 include/linux/devfreq.h | 7 include/linux/dma-mapping.h | 5 include/linux/eeprom_93cx6.h | 11 include/linux/eventpoll.h | 2 include/linux/fpga/fpga-bridge.h | 10 include/linux/fpga/fpga-mgr.h | 26 include/linux/fwnode.h | 2 include/linux/hisi_acc_qm.h | 8 include/linux/i3c/master.h | 35 include/linux/jiffies.h | 2 include/linux/leds.h | 2 include/linux/lockdep.h | 2 include/linux/mmc/card.h | 1 include/linux/netdevice.h | 30 include/linux/netpoll.h | 2 include/linux/pci-epc.h | 2 include/linux/pci.h | 6 include/linux/property.h | 20 include/linux/rbtree_latch.h | 2 include/linux/scatterlist.h | 2 include/linux/seqlock.h | 107 include/linux/slab.h | 14 include/linux/sock_diag.h | 10 include/linux/util_macros.h | 56 include/media/v4l2-dv-timings.h | 18 include/memory/renesas-rpc-if.h | 18 include/net/bluetooth/hci_sync.h | 12 include/net/sock.h | 2 include/trace/trace_events.h | 36 include/uapi/linux/rtnetlink.h | 2 include/ufs/ufshcd.h | 19 init/initramfs.c | 15 io_uring/io_uring.c | 12 io_uring/tctx.c | 13 ipc/namespace.c | 4 kernel/bpf/devmap.c | 6 kernel/bpf/helpers.c | 6 kernel/bpf/lpm_trie.c | 55 kernel/bpf/syscall.c | 3 kernel/bpf/verifier.c | 41 kernel/cgroup/cgroup.c | 21 kernel/dma/debug.c | 8 kernel/kcsan/debugfs.c | 74 kernel/printk/printk.c | 2 kernel/rcu/tasks.h | 82 kernel/sched/core.c | 4 kernel/sched/fair.c | 2 kernel/time/ntp.c | 2 kernel/time/sched_clock.c | 2 kernel/time/time.c | 2 kernel/time/timekeeping.c | 4 kernel/trace/bpf_trace.c | 6 kernel/trace/ftrace.c | 3 kernel/trace/trace_clock.c | 2 kernel/trace/trace_eprobe.c | 5 kernel/trace/trace_event_perf.c | 6 kernel/trace/trace_syscalls.c | 12 kernel/trace/tracing_map.c | 6 lib/maple_tree.c | 13 lib/stackinit_kunit.c | 1 lib/string_helpers.c | 2 mm/damon/vaddr-test.h | 1 mm/damon/vaddr.c | 4 mm/kasan/report.c | 65 mm/mmap.c | 4 mm/page_alloc.c | 15 mm/swap.c | 20 mm/vmstat.c | 1 net/9p/trans_xen.c | 9 net/bluetooth/hci_core.c | 13 net/bluetooth/hci_sync.c | 132 net/bluetooth/hci_sysfs.c | 15 net/bluetooth/l2cap_sock.c | 1 net/bluetooth/mgmt.c | 61 net/bluetooth/rfcomm/sock.c | 20 net/can/af_can.c | 1 net/can/j1939/transport.c | 2 net/core/dev.c | 61 net/core/filter.c | 95 net/core/gen_estimator.c | 2 net/core/neighbour.c | 1 net/core/netpoll.c | 2 net/core/rtnetlink.c | 2 net/core/skmsg.c | 4 net/core/sock_diag.c | 114 net/dccp/feat.c | 6 net/ethtool/bitset.c | 48 net/hsr/hsr_device.c | 4 net/hsr/hsr_forward.c | 2 net/ieee802154/socket.c | 12 net/ipv4/af_inet.c | 22 net/ipv4/cipso_ipv4.c | 2 net/ipv4/inet_connection_sock.c | 2 net/ipv4/inet_diag.c | 11 net/ipv4/ip_output.c | 13 net/ipv4/ipmr.c | 42 net/ipv4/ipmr_base.c | 3 net/ipv4/tcp.c | 2 net/ipv4/tcp_bpf.c | 18 net/ipv4/tcp_fastopen.c | 7 net/ipv4/udp.c | 2 net/ipv6/addrconf.c | 41 net/ipv6/af_inet6.c | 24 net/ipv6/ip6_fib.c | 2 net/ipv6/ip6_output.c | 13 net/ipv6/ip6mr.c | 38 net/ipv6/ipv6_sockglue.c | 3 net/ipv6/route.c | 16 net/iucv/af_iucv.c | 26 net/llc/af_llc.c | 2 net/mac80211/main.c | 2 net/mptcp/protocol.c | 4 net/netfilter/ipset/ip_set_bitmap_ip.c | 7 net/netfilter/ipset/ip_set_core.c | 5 net/netfilter/ipvs/ip_vs_proto.c | 4 net/netfilter/nf_tables_api.c | 19 net/netfilter/nft_set_hash.c | 16 net/netfilter/nft_socket.c | 2 net/netfilter/xt_LED.c | 4 net/netlink/diag.c | 1 net/packet/af_packet.c | 12 net/packet/diag.c | 1 net/rfkill/rfkill-gpio.c | 8 net/rxrpc/af_rxrpc.c | 7 net/sched/act_api.c | 2 net/sched/cls_flower.c | 5 net/sched/sch_cbs.c | 2 net/sched/sch_tbf.c | 18 net/smc/af_smc.c | 2 net/smc/smc_diag.c | 1 net/sunrpc/cache.c | 4 net/sunrpc/xprtrdma/svc_rdma.c | 40 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c | 8 net/sunrpc/xprtsock.c | 1 net/tipc/diag.c | 1 net/tipc/udp_media.c | 2 net/unix/diag.c | 1 net/vmw_vsock/diag.c | 1 net/xdp/xsk_buff_pool.c | 5 net/xdp/xsk_diag.c | 1 net/xdp/xskmap.c | 2 samples/bpf/test_cgrp2_sock.c | 4 samples/bpf/xdp_adjust_tail_kern.c | 1 scripts/mod/file2alias.c | 5 scripts/mod/modpost.c | 4 security/apparmor/capability.c | 2 security/apparmor/policy_unpack_test.c | 6 sound/core/pcm_native.c | 6 sound/hda/intel-dsp-config.c | 4 sound/pci/hda/patch_realtek.c | 157 sound/soc/amd/yc/acp6x-mach.c | 39 sound/soc/codecs/da7219.c | 9 sound/soc/codecs/hdmi-codec.c | 140 sound/soc/fsl/fsl_micfil.c | 4 sound/soc/generic/audio-graph-card2.c | 3 sound/soc/intel/atom/sst/sst_acpi.c | 64 sound/soc/intel/avs/pcm.c | 2 sound/soc/intel/boards/bytcr_rt5640.c | 48 sound/soc/stm/stm32_sai_sub.c | 6 sound/usb/6fire/chip.c | 10 sound/usb/caiaq/audio.c | 10 sound/usb/caiaq/audio.h | 1 sound/usb/caiaq/device.c | 19 sound/usb/caiaq/input.c | 12 sound/usb/caiaq/input.h | 1 sound/usb/clock.c | 24 sound/usb/endpoint.c | 14 sound/usb/mixer.c | 58 sound/usb/mixer_maps.c | 10 sound/usb/quirks-table.h | 14 sound/usb/quirks.c | 58 sound/usb/usbaudio.h | 4 sound/usb/usx2y/us122l.c | 5 sound/usb/usx2y/usbusx2y.c | 2 tools/bpf/bpftool/jit_disasm.c | 51 tools/bpf/bpftool/main.h | 25 tools/bpf/bpftool/map.c | 1 tools/bpf/bpftool/prog.c | 22 tools/lib/bpf/libbpf.c | 4 tools/lib/bpf/linker.c | 2 tools/lib/thermal/Makefile | 4 tools/lib/thermal/commands.c | 52 tools/perf/builtin-ftrace.c | 2 tools/perf/builtin-stat.c | 52 tools/perf/builtin-trace.c | 16 tools/perf/util/cs-etm.c | 25 tools/perf/util/evlist.c | 19 tools/perf/util/evlist.h | 1 tools/perf/util/probe-finder.c | 21 tools/perf/util/probe-finder.h | 4 tools/scripts/Makefile.arch | 4 tools/testing/selftests/arm64/mte/check_tags_inclusion.c | 4 tools/testing/selftests/arm64/mte/mte_common_util.c | 4 tools/testing/selftests/arm64/pauth/pac.c | 3 tools/testing/selftests/bpf/network_helpers.h | 44 tools/testing/selftests/bpf/test_progs.c | 9 tools/testing/selftests/bpf/test_sockmap.c | 165 tools/testing/selftests/mount_setattr/mount_setattr_test.c | 2 tools/testing/selftests/net/pmtu.sh | 2 tools/testing/selftests/resctrl/resctrl_val.c | 3 tools/testing/selftests/vDSO/parse_vdso.c | 3 tools/testing/selftests/watchdog/watchdog-test.c | 6 tools/testing/selftests/wireguard/netns.sh | 1 tools/tracing/rtla/src/utils.c | 4 tools/tracing/rtla/src/utils.h | 2 tools/verification/dot2/automata.py | 18 773 files changed, 11342 insertions(+), 7062 deletions(-)
Abel Vesa (1):
remoteproc: qcom: q6v5: Use _clk_get_optional for aggre2_clk
Adrian Hunter (1):
perf/x86/intel/pt: Fix buffer full but size is 0 case
Ahmed Ehab (1):
locking/lockdep: Avoid creating new name string literals in lockdep_set_subclass()
Ahsan Atta (1):
crypto: qat - remove faulty arbiter config reset
Ajay Kaher (1):
ptp: Add error handling for adjfine callback in ptp_clock_adjtime
Aleksandr Mishin (1):
acpi/arm64: Adjust error handling procedure in gtdt_parse_timer_block()
Alex Deucher (2):
drm/amdgpu/hdp5.2: do a posting read when flushing HDP drm/amdgpu: rework resume handling for display (v2)
Alex Hung (4):
drm/amd/display: Check null-initialized variables drm/amd/display: Initialize denominators' default to 1 drm/amd/display: Check phantom_stream before it is used drm/amd/display: Check BIOS images before it is used
Alex Zenla (2):
9p/xen: fix init sequence
9p/xen: fix release of IRQ
Alexander Hölzl (1):
can: j1939: fix error in J1939 documentation.
Alexander Kozhinov (1):
can: gs_usb: add usb endpoint address detection at driver probe step
Alexander Shiyan (1):
media: i2c: tc358743: Fix crash in the probe error path when using polling
Alexander Stein (1):
spi: spi-fsl-lpspi: downgrade log level for pio mode
Alexander Sverdlin (1):
watchdog: rti: of: honor timeout-sec property
Alexandru Ardelean (1):
util_macros.h: fix/rework find_closest() macros
Alexis Lothoré (eBPF Foundation) (1):
selftests/bpf: add missing header include for htons
Alper Nebi Yasak (1):
wifi: mwifiex: Fix memcpy() field-spanning write warning in mwifiex_config_scan()
Amadeusz Sławiński (1):
ASoC: Intel: avs: Fix return status of avs_pcm_hw_constraints_init()
Amir Goldstein (1):
fsnotify: fix sending inotify event with unexpected filename
Amir Mohammadi (1):
bpftool: fix potential NULL pointer dereferencing in prog_dump()
Andre Przywara (4):
kselftest/arm64: mte: fix printf type warnings about __u64 kselftest/arm64: mte: fix printf type warnings about longs
ARM: dts: cubieboard4: Fix DCDC5 regulator constraints
clk: sunxi-ng: d1: Fix PLL_AUDIO0 preset
Andrej Shadura (1):
Bluetooth: Fix type of len in rfcomm_sock_getsockopt{,_old}()
Andrew Lunn (1):
dsa: qca8k: Use nested lock to avoid splat
Andrey Konovalov (1):
kasan: suppress recursive reports for HW_TAGS
Andrii Nakryiko (2):
libbpf: fix sym_is_subprog() logic for weak global subprogs
libbpf: never interpret subprogs in .text as entry programs
André Almeida (1):
unicode: Fix utf8_load() error path
Andy Shevchenko (7):
regmap: irq: Set lockdep class for hierarchical IRQ domains drm/mm: Mark drm_mm_interval_tree*() functions with __maybe_unused
mfd: intel_soc_pmic_bxtwc: Use IRQ domain for USB Type-C device
mfd: intel_soc_pmic_bxtwc: Use IRQ domain for TMU device
mfd: intel_soc_pmic_bxtwc: Use IRQ domain for PMIC devices device property: Constify device child node APIs
iio: light: ltr501: Add LTER0303 to the supported devices
Andy-ld Lu (1):
mmc: mtk-sd: Fix error handle of probe function
Angelo Dureghello (1):
dt-bindings: iio: dac: ad3552r: fix maximum spi speed
Anil Gurumurthy (1):
scsi: qla2xxx: Supported speed displayed incorrectly for VPorts
Antonio Quartulli (1):
m68k: coldfire/device.c: only build FEC when HW macros are defined
Arnaldo Carvalho de Melo (1):
perf ftrace latency: Fix unit on histogram first entry when using --use-nsec
Arnd Bergmann (2):
x86/amd_nb: Fix compile-testing without CONFIG_AMD_NB
serial: amba-pl011: fix build regression
Artem Sadovnikov (1):
jfs: xattr: check invalid xattr size more strictly
Avihai Horon (1):
vfio/pci: Properly hide first-in-list PCIe extended capability
Baochen Qiang (2):
wifi: ath10k: fix invalid VHT parameters in supported_vht_mcs_rate_nss1
wifi: ath10k: fix invalid VHT parameters in supported_vht_mcs_rate_nss2
Barnabás Czémán (3):
power: supply: bq27xxx: Fix registers of bq27426
pinctrl: qcom-pmic-gpio: add support for PM8937
pinctrl: qcom: spmi-mpp: Add PM8937 compatible
Bart Van Assche (2):
power: supply: core: Remove might_sleep() from power_supply_put()
scsi: ufs: core: Make DMA mask configuration more flexible
Bartosz Golaszewski (4):
mmc: mmc_spi: drop buggy snprintf()
pinctrl: zynqmp: drop excess struct member description
lib: string_helpers: silence snprintf() output truncation warning
gpio: grgpio: use a helper variable to store the address of ofdev->dev
Baruch Siach (1):
doc: rcu: update printed dynticks counter bits
Ben Greear (1):
mac80211: fix user-power when emulating chanctx
Benjamin Große (1):
usb: add support for new USB device ID 0x17EF:0x3098 for the r8152 driver
Benjamin Peterson (3):
perf trace: avoid garbage when not printing a trace event's arguments perf trace: Do not lose last events in a race
perf trace: Avoid garbage when not printing a syscall's arguments
Benoît Monin (1):
net: usb: qmi_wwan: add Quectel RG650V
Benoît Sevens (1):
ALSA: usb-audio: Fix potential out-of-bound accesses for Extigy and Mbox devices
Bibo Mao (1):
LoongArch: Add architecture specific huge_pte_clear()
Biju Das (2):
mtd: hyperbus: rpc-if: Add missing MODULE_DEVICE_TABLE
clk: renesas: rzg2l: Fix FOUTPOSTDIV clk
Bin Liu (1):
serial: 8250: omap: Move pm_runtime_get_sync
Bjorn Andersson (1):
rpmsg: glink: Fix GLINK command prefix
Björn Töpel (1):
tools: Override makefile ARCH variable if defined, but empty
Boris Burkov (2):
btrfs: qgroup: fix qgroup prealloc rsv leak in subvolume operations
btrfs: do not clear read-only when adding sprout device
Borislav Petkov (AMD) (1):
x86/barrier: Do not serialize MSR accesses on AMD
Brahmajit Das (1):
drm/display: Fix building with GCC 15
Breno Leitao (5):
ipmr: Fix access to mfc_cache_list without lock held
spi: tegra210-quad: Avoid shift-out-of-bounds
netpoll: Use rcu_access_pointer() in netpoll_poll_lock perf/x86/amd: Warn only on new bits set
netpoll: Use rcu_access_pointer() in __netpoll_setup
Callahan Kovacs (1):
HID: magicmouse: Apple Magic Trackpad 2 USB-C driver support
Carlos Song (2):
i3c: master: support to adjust first broadcast address speed
i3c: master: svc: use slow speed for first broadcast address
Catalin Marinas (4):
mm/slab: decouple ARCH_KMALLOC_MINALIGN from ARCH_DMA_MINALIGN
powerpc: move the ARCH_DMA_MINALIGN definition to asm/cache.h
dma: allow dma_get_cache_alignment() to be overridden by the arch code
arm64: Ensure bits ASID[15:8] are masked out when the kernel uses 8-bit ASIDs
Chao Yu (2):
f2fs: fix to account dirty data in __get_secs_required()
f2fs: fix to avoid forcing direct write to use buffered IO on inline_data inode
Charles Han (3):
soc: qcom: Add check devm_kasprintf() returned value
clk: clk-apple-nco: Add NULL check in applnco_probe
gpio: grgpio: Add NULL check in grgpio_probe
Chen Ridong (4):
crypto: caam - add error check to caam_rsa_set_priv_key_form
crypto: bcm - add error check in the ahash_hmac_init function Revert "cgroup: Fix memory leak caused by missing cgroup_bpf_offline" cgroup/bpf: only cgroup v2 can be attached by bpf programs
Chen-Yu Tsai (6):
arm64: dts: mediatek: mt8173-elm-hana: Add vdd-supply to second source trackpad
arm64: dts: mediatek: mt8183-kukui-jacuzzi: Fix DP bridge supply names
arm64: dts: mediatek: mt8183-kukui-jacuzzi: Add supplies for fixed regulators Revert "arm64: dts: mediatek: mt8195-cherry: Mark USB 3.0 on xhci1 as disabled"
arm64: dts: mediatek: mt8195-cherry: Mark USB 3.0 on xhci1 as disabled drm/bridge: it6505: Fix inverted reset polarity
ChenXiaoSong (1):
btrfs: add might_sleep() annotations
Cheng Ming Lin (1):
mtd: spi-nor: core: replace dummy buswidth from addr to data
Chengchang Tang (1):
RDMA/hns: Add clear_hem return value to log
Chih-Kang Chang (1):
wifi: rtw89: avoid to add interface to list twice when SER
Christian Brauner (1):
epoll: annotate racy check
Christian König (1):
dma-buf: fix dma_fence_array_signaled v4
Christoph Hellwig (8):
nvme-pci: fix freeing of the HMB descriptor table
block: fix bio_split_rw_at to take zone_write_granularity into account
nvme-pci: reverse request order in nvme_queue_rqs
virtio_blk: reverse request order in virtio_queue_rqs
f2fs: remove struct segment_allocation default_salloc_ops
f2fs: open code allocate_segment_by_default
f2fs: remove the unused flush argument to change_curseg
block: return unsigned int from bdev_io_min
Christophe JAILLET (3):
crypto: caam - Fix the pointer passed to caam_qi_shutdown()
crypto: cavium - Fix an error handling path in cpt_ucode_load_fw()
iio: light: al3010: Fix an error handling path in al3010_probe()
Christophe Leroy (2):
powerpc/vdso: Flag VDSO64 entry points as functions powerpc/vdso: Refactor CFLAGS for CVDSO build
Chuck Lever (5):
svcrdma: Address an integer overflow
NFSD: Prevent NULL dereference in nfsd4_process_cb_update()
NFSD: Cap the number of bytes copied by nfs4_reset_recoverydir()
NFSD: Fix nfsd4_shutdown_copy()
NFSD: Prevent a potential integer overflow
Chun-Tse Shao (1):
perf/arm-smmuv3: Fix lockdep assert in ->event_init()
Clark Wang (1):
pwm: imx27: Workaround of the pwm output bug when decrease the duty cycle
Claudiu Beznea (1):
serial: sh-sci: Clean sci_ports[0] after at earlycon exit
Cosmin Tanislav (1):
regmap: detach regmap from dev on regmap_exit
Csókás, Bence (1):
spi: atmel-quadspi: Fix register name in verbose logging function
Damien Le Moal (1):
PCI: rockchip-ep: Fix address translation unit programming
Dan Carpenter (3):
soc: qcom: geni-se: fix array underflow in geni_se_clk_tbl_get()
mailbox: arm_mhuv2: clean up loop in get_irq_chan_comb()
sh: intc: Fix use-after-free bug in register_intc_controller()
Daniel Borkmann (2):
bpf: Fix helper writes to read-only maps
net: Move {l,t,d}stats allocation to core and convert veth & vrf
Daniel Gabay (1):
wifi: iwlwifi: mvm: Use the sync timepoint API in suspend
Daniel Lezcano (2):
tools/lib/thermal: Make more generic the command encoding function thermal/lib: Fix memory leak on error in thermal_genl_auto()
Daniel Palmer (2):
m68k: mvme147: Fix SCSI controller IRQ numbers
m68k: mvme147: Reinstate early console
Daolong Zhu (4):
arm64: dts: mt8183: fennel: add i2c2's i2c-scl-internal-delay-ns
arm64: dts: mt8183: burnet: add i2c2's i2c-scl-internal-delay-ns
arm64: dts: mt8183: cozmo: add i2c2's i2c-scl-internal-delay-ns
arm64: dts: mt8183: Damu: add i2c2's i2c-scl-internal-delay-nsDario Binacchi (9):
can: c_can: c_can_handle_bus_err(): update statistics if skb allocation fails
can: sun4i_can: sun4i_can_err(): call can_change_state() even if cf is NULL
can: hi311x: hi3110_can_ist(): fix potential use-after-free
can: m_can: m_can_handle_lec_err(): fix {rx,tx}_errors statistics
can: ifi_canfd: ifi_canfd_handle_lec_err(): fix {rx,tx}_errors statistics
can: hi311x: hi3110_can_ist(): fix {rx,tx}_errors statistics
can: sja1000: sja1000_err(): fix {rx,tx}_errors statistics
can: sun4i_can: sun4i_can_err(): fix {rx,tx}_errors statistics
can: ems_usb: ems_usb_rx_err(): fix {rx,tx}_errors statistics
Dave Stevenson (5):
drm/vc4: hvs: Don't write gamma luts on 2711
drm/vc4: hvs: Fix dlist debug not resetting the next entry pointer drm/vc4: hvs: Remove incorrect limit from hvs_dlist debugfs function drm/vc4: hvs: Correct logic on stopping an HVS channel drm/vc4: hvs: Set AXI panic modes for the HVS
David Disseldorp (1):
initramfs: avoid filename buffer overrun
David Given (1):
media: uvcvideo: Add a quirk for the Kaiweets KTI-W02 infrared camera
David Thompson (1):
EDAC/bluefield: Fix potential integer overflow
David Wang (1):
proc/softirqs: replace seq_printf with seq_put_decimal_ull_width
Defa Li (1):
i3c: Use i3cdev->desc->info instead of calling i3c_device_get_info() to avoid deadlock
Dikshita Agarwal (1):
venus: venc: add handling for VIDIOC_ENCODER_CMD
Dinesh Kumar (1):
ALSA: hda/realtek: Fix Internal Speaker and Mic boost of Infinix Y4 Max
Dipendra Khadka (6):
octeontx2-pf: handle otx2_mbox_get_rsp errors in otx2_common.c
octeontx2-pf: handle otx2_mbox_get_rsp errors in otx2_ethtool.c
octeontx2-pf: handle otx2_mbox_get_rsp errors in otx2_flows.c
octeontx2-pf: handle otx2_mbox_get_rsp errors in cn10k.c
octeontx2-pf: handle otx2_mbox_get_rsp errors in otx2_dmac_flt.c
octeontx2-pf: handle otx2_mbox_get_rsp errors in otx2_dcbnl.c
Dmitry Antipov (5):
Bluetooth: fix use-after-free in device_for_each_child()
ocfs2: fix uninitialized value in ocfs2_file_read_iter()
netfilter: x_tables: fix LED ID check in led_tg_check()
can: j1939: j1939_session_new(): fix skb reference counting
rocker: fix link status detection in rocker_carrier_init()
Dmitry Baryshkov (1):
remoteproc: qcom: pas: add minidump_id to SM8350 resources
Dmitry Kandybka (1):
mptcp: fix possible integer overflow in mptcp_reset_tout_timer
Dmitry Torokhov (1):
rtc: cmos: avoid taking rtc_lock for extended period of time
Dom Cobley (2):
drm/vc4: hdmi: Avoid hang with debug registers when suspended drm/vc4: hdmi: Avoid log spam for audio start failure
Dong Aisheng (1):
clk: imx: clk-scu: fix clk enable state save and restore
Doug Brown (1):
drm/etnaviv: fix power register offset on GC300
Dragan Simic (1):
arm64: dts: allwinner: pinephone: Add mount matrix to accelerometer
Eduard Zingerman (1):
selftests/bpf: Fix backtrace printing for selftests crashes
Edward Adam Davis (1):
USB: chaoskey: Fix possible deadlock chaoskey_list_lock
Elena Salomatkina (1):
net/sched: cbs: Fix integer overflow in cbs_set_port_rate()
Eric Biggers (1):
crypto: x86/aegis128 - access 32-bit arguments as 32-bit
Eric Dumazet (7):
sock_diag: add module pointer to "struct sock_diag_handler"
sock_diag: allow concurrent operations
sock_diag: allow concurrent operation in sock_diag_rcv_msg()
net: use unrcu_pointer() helper
net: hsr: fix hsr_init_sk() vs network/transport headers.
net: hsr: avoid potential out-of-bound access in fill_frame_info()
geneve: do not assume mac header is set in geneve_xmit_skb()
Eryk Zagorski (1):
ALSA: usb-audio: Fix Yamaha P-125 Quirk Entry
Esben Haabendal (1):
pinctrl: freescale: fix COMPILE_TEST error with PINCTRL_IMX_SCU
Esther Shimanovich (1):
PCI: Detect and trust built-in Thunderbolt chips
Everest K.C (1):
crypto: cavium - Fix the if condition to exit loop after timeout
Filip Brozovic (1):
serial: 8250_fintek: Add support for F81216E
Filipe Manana (3):
btrfs: don't loop for nowait writes when checking for cross references
btrfs: ref-verify: fix use-after-free after invalid ref action
btrfs: fix missing snapshot drew unlock when root is dead during swap activation
Florian Westphal (1):
netfilter: nf_tables: must hold rcu read lock while iterating object type list
Francesco Dolcini (2):
arm64: dts: freescale: imx8mm-verdin: Fix SD regulator startup delay
arm64: dts: freescale: imx8mp-verdin: Fix SD regulator startup delay
Frank Li (10):
i3c: master: Fix miss free init_dyn_addr at i3c_master_put_i3c_addrs()
i3c: master: add enable(disable) hot join in sys entry
i3c: master: svc: add hot join support
i3c: master: fix kernel-doc check warning
i3c: master: svc: Modify enabled_events bit 7:0 to act as IBI enable counter
i3c: master: Replace hard code 2 with macro I3C_ADDR_SLOT_STATUS_BITS
i3c: master: Extend address status bit to 4 and add I3C_ADDR_SLOT_EXT_DESIRED
i3c: master: Fix dynamic address leak when 'assigned-address' is present
i3c: master: Remove i3c_dev_disable_ibi_locked(olddev) on device hotjoin
i3c: master: svc: fix possible assignment of the same address to two devices
Fuad Tabba (1):
KVM: arm64: Change kvm_handle_mmio_return() return polarity
Gabor Juhos (1):
clk: qcom: gcc-qcs404: fix initial rate of GPLL3
Gabriele Monaco (1):
verification/dot2: Improve dot parser robustness
Gaosheng Cui (2):
drivers: soc: xilinx: add the missing kfree in xlnx_add_cb_for_suspend()
media: platform: allegro-dvt: Fix possible memory leak in allocate_buffers_internal()
Gautam Menghani (3):
KVM: PPC: Book3S HV: Stop using vc->dpdes for nested KVM guests
KVM: PPC: Book3S HV: Avoid returning to nested hypervisor on pending doorbells powerpc/pseries: Fix KVM guest detection for disabling hardlockup detector
Geert Uytterhoeven (4):
m68k: mvme16x: Add and use "mvme16x.h"
memory: renesas-rpc-if: Improve Runtime PM handling
memory: renesas-rpc-if: Pass device instead of rpcif to rpcif_*()
memory: renesas-rpc-if: Remove Runtime PM wrappers
Ghanshyam Agrawal (3):
jfs: array-index-out-of-bounds fix in dtReadFirst
jfs: fix shift-out-of-bounds in dbSplit
jfs: fix array-index-out-of-bounds in jfs_readdir
Greg Kroah-Hartman (2):
Revert "serial: sh-sci: Clean sci_ports[0] after at earlycon exit" Linux 6.1.120
Gregory Price (1):
tpm: fix signed/unsigned bug when checking event logs
Guilherme G. Piccoli (1):
wifi: rtlwifi: Drastically reduce the attempts to read efuse in case of failures
Gwendal Grignou (1):
scsi: ufs: core: sysfs: Prevent div by zero
Hangbin Liu (3):
netdevsim: copy addresses for both in and out paths
wireguard: selftests: load nf_conntrack if not present net/ipv6: delete temporary address if mngtmpaddr is removed or unmanaged
Hans Verkuil (1):
media: v4l2-core: v4l2-dv-timings: check cvt/gtf result
Hans de Goede (6):
ASoC: Intel: bytcr_rt5640: Add support for non ACPI instantiated codec
ASoC: Intel: bytcr_rt5640: Add DMI quirk for Vexia Edu Atla 10 tablet
ASoC: Intel: sst: Support LPE0F28 ACPI HID
drm: panel-orientation-quirks: Make Lenovo Yoga Tab 3 X90F DMI match less strict
ASoC: Intel: sst: Fix used of uninitialized ctx to log an error
mmc: sdhci-pci: Add DMI quirk for missing CD GPIO on Vexia Edu Atla 10 tablet
Hariprasad Kelam (1):
octeontx2-af: RPM: Fix mismatch in lmac type
Harith G (1):
ARM: 9420/1: smp: Fix SMP for xip kernels
Harshit Mogalapalli (1):
dax: delete a stale directory pmem
Heiner Kallweit (1):
r8169: don't apply UDP padding quirk on RTL8126A
Heming Zhao (1):
ocfs2: Revert "ocfs2: fix the la space leak when unmounting an ocfs2 volume"
Herbert Xu (2):
crypto: api - Add crypto_tfm_get
crypto: api - Add crypto_clone_tfm
Hilda Wu (1):
Bluetooth: btusb: Add RTL8852BE device 0489:e123 to device tables
Hou Tao (4):
bpf: Handle BPF_EXIST and BPF_NOEXIST for LPM trie
bpf: Remove unnecessary kfree(im_node) in lpm_trie_update_elem
bpf: Handle in-place update for full LPM trie correctly
bpf: Fix exact match conditions in trie_get_next_key()
Hsin-Te Yuan (2):
arm64: dts: mt8183: krane: Fix the address of eeprom at i2c4
arm64: dts: mt8183: kukui: Fix the address of eeprom at i2c4
Hsin-Yi Wang (1):
arm64: dts: mt8183: jacuzzi: Move panel under aux-bus
Huacai Chen (2):
sh: cpuinfo: Fix a warning for CONFIG_CPUMASK_OFFSTACK
LoongArch: Fix sleeping in atomic context for PREEMPT_RT
Hubert Wiśniewski (1):
usb: musb: Fix hardware lockup on first Rx endpoint request
Hugo Villeneuve (1):
serial: sc16is7xx: fix invalid FIFO access with special register set
Ian Rogers (2):
perf stat: Fix affinity memory leaks on error path perf probe: Fix libdw memory leak
Ido Schimmel (1):
mlxsw: spectrum_acl_tcam: Fix NULL pointer dereference in error path
Ignat Korchagin (7):
af_packet: avoid erroring out after sock_init_data() in packet_create()
Bluetooth: L2CAP: do not leave dangling sk pointer on error in l2cap_sock_create()
Bluetooth: RFCOMM: avoid leaving dangling sk pointer in rfcomm_sock_alloc()
net: af_can: do not leave a dangling sk pointer in can_create()
net: ieee802154: do not leave a dangling sk pointer in ieee802154_create()
net: inet: do not leave a dangling sk pointer in inet_create()
net: inet6: do not leave a dangling sk pointer in inet6_create()
Igor Artemiev (1):
drm/radeon/r600_cs: Fix possible int overflow in r600_packet3_check()
Igor Prusov (1):
dt-bindings: vendor-prefixes: Add NeoFidelity, Inc
Ilpo Järvinen (1):
PCI: cpqphp: Fix PCIBIOS_* return value confusion
Ilya Zverev (1):
ASoC: amd: yc: Add a quirk for microfone on Lenovo ThinkPad P14s Gen 5 21MES00B00
Imre Deak (3):
drm/dp_mst: Fix MST sideband message body length check drm/dp_mst: Verify request type in the corresponding down message reply drm/dp_mst: Fix resetting msg rx state after topology removal
Inochi Amaoto (1):
serial: 8250_dw: Add Sophgo SG2044 quirk
Ivan Solodovnikov (1):
dccp: Fix memory leak in dccp_feat_change_recv
Jacob Keller (3):
ptp: convert remaining drivers to adjfine interface
ixgbevf: stop attempting IPSEC offload on Mailbox API 1.5
ixgbe: downgrade logging of unsupported VF API version to debug
Jakob Hauser (1):
iio: magnetometer: yas530: use signed integer type for clamp limits
Jakub Kicinski (1):
net/neighbor: clear error in case strict check is not set
James Clark (1):
perf cs-etm: Don't flush when packet_queue fills up
Jammy Huang (1):
media: aspeed: Fix memory overwrite if timing is 1600x900
Jan Kara (3):
ext4: make 'abort' mount option handling standard
ext4: avoid remount errors with 'abort' mount option
udf: Fold udf_getblk() into udf_bread()
Jan Stancek (1):
tools/rtla: fix collision with glibc sched_attr/sched_set_attr
Jann Horn (1):
comedi: Flush partial mappings in error case
Jared Kangas (1):
kasan: make report_lock a raw spinlock
Jarkko Nikula (1):
i3c: mipi-i3c-hci: Mask ring interrupts before ring stop request
Jason Gerecke (1):
HID: wacom: Interpret tilt data from Intuos Pro BT as signed values
Jason-JH.Lin (1):
mailbox: mtk-cmdq: Move devm_mbox_controller_register() after devm_pm_runtime_enable()
Javier Carrasco (5):
clocksource/drivers/timer-ti-dm: Fix child node refcount handling
wifi: brcmfmac: release 'root' node in all execution paths platform/chrome: cros_ec_typec: fix missing fwnode reference decrement
soc: fsl: rcpm: fix missing of_node_put() in copy_ippdexpcr1_setting()
leds: flash: mt6360: Fix device_for_each_child_node() refcounting in error paths
Jean-Michel Hautbois (1):
m68k: mcfgpio: Fix incorrect register offset for CONFIG_M5441x
Jens Axboe (1):
io_uring/tctx: work around xa_store() allocation error issue
Jeongjun Park (4):
wifi: ath9k: add range check for conn_rsp_epid in htc_connect_service()
usb: using mutex lock and supporting O_NONBLOCK flag in iowarrior_read()
ext4: supress data-race warnings in ext4_free_inodes_{count,set}()
netfilter: ipset: add missing range check in bitmap_ip_uadt
Jianbo Liu (1):
net/mlx5e: Remove workaround to avoid syndrome for internal port
Jiapeng Chong (1):
wifi: ipw2x00: libipw_rx_any(): fix bad alignment
Jiasheng Jiang (2):
counter: stm32-timer-cnt: Add check for clk_enable()
counter: ti-ecap-capture: Add check for clk_enable()
Jiayuan Chen (2):
bpf: fix filed access without lock
bpf: fix recursive lock when verdict program return SK_PASS
Jing Zhang (1):
KVM: arm64: vgic-its: Add a data length check in vgic_its_save_*
Jinghao Jia (1):
ipvs: fix UB due to uninitialized stack access in ip_vs_protocol_init()
Jinjie Ruan (22):
spi: spi-fsl-lpspi: Use IRQF_NO_AUTOEN flag in request_irq()
soc: ti: smartreflex: Use IRQF_NO_AUTOEN flag in request_irq()
spi: zynqmp-gqspi: Undo runtime PM changes at driver exit time
wifi: p54: Use IRQF_NO_AUTOEN flag in request_irq()
wifi: mwifiex: Use IRQF_NO_AUTOEN flag in request_irq() drm/imx/dcss: Use IRQF_NO_AUTOEN flag in request_irq() drm/imx/ipuv3: Use IRQF_NO_AUTOEN flag in request_irq() drm/msm/adreno: Use IRQF_NO_AUTOEN flag in request_irq()
mfd: tps65010: Use IRQF_NO_AUTOEN flag in request_irq() to fix race
cpufreq: CPPC: Fix possible null-ptr-deref for cpufreq_cpu_get_raw()
cpufreq: CPPC: Fix possible null-ptr-deref for cppc_get_cpu_cost()
cpufreq: CPPC: Fix wrong return value in cppc_get_cpu_cost()
cpufreq: CPPC: Fix wrong return value in cppc_get_cpu_power()
misc: apds990x: Fix missing pm_runtime_disable()
apparmor: test: Fix memory leak for aa_unpack_strdup()
cpufreq: mediatek-hw: Fix wrong return value in mtk_cpufreq_get_cpu_power()
rtc: st-lpc: Use IRQF_NO_AUTOEN flag in request_irq()
media: i2c: dw9768: Fix pm_runtime_set_suspended() with runtime pm enabled
media: amphion: Fix pm_runtime_set_suspended() with runtime pm enabled
media: venus: Fix pm_runtime_set_suspended() with runtime pm enabled
media: gspca: ov534-ov772x: Fix off-by-one error in set_frame_rate()
i3c: master: svc: Fix pm_runtime_set_suspended() with runtime pm enabled
Jiri Olsa (1):
fs/proc/kcore.c: Clear ret value in read_kcore_iter after successful iov_iter_zero
Jiri Wiesner (1):
net/ipv6: release expired exception dst cached in socket
Joaquín Ignacio Aramendía (3):
drm: panel-orientation-quirks: Add quirk for AYA NEO 2 model
drm: panel-orientation-quirks: Add quirk for AYA NEO Founder edition
drm: panel-orientation-quirks: Add quirk for AYA NEO GEEK
Joe Hattori (1):
media: platform: exynos4-is: Fix an OF node reference leak in fimc_md_is_isp_available
Johan Hovold (1):
pinctrl: qcom: spmi: fix debugfs drive strength
John Garry (1):
scsi: scsi_debug: Fix hrtimer support for ndelay
John Watts (1):
ASoC: audio-graph-card2: Purge absent supplies for device tree nodes
Jonas Gorski (1):
mips: asm: fix warning when disabling MIPS_FP_SUPPORT
Jonas Karlman (1):
ASoC: hdmi-codec: reorder channel allocation list
Jonathan Cameron (2):
device property: Add cleanup.h based fwnode_handle_put() scope based cleanup. device property: Introduce device_for_each_child_node_scoped()
Jonathan Marek (1):
rpmsg: glink: use only lower 16-bits of param2 for CMD_OPEN name length
Jordy Zomer (2):
ksmbd: fix Out-of-Bounds Read in ksmbd_vfs_stream_read
ksmbd: fix Out-of-Bounds Write in ksmbd_vfs_stream_write
Josef Bacik (1):
btrfs: don't BUG_ON on ENOMEM from btrfs_lookup_extent_info() in walk_down_proc()
Josh Poimboeuf (1):
parisc/ftrace: Fix function graph tracing disablement
Junxian Huang (4):
RDMA/hns: Use dev_* printings in hem code instead of ibdev_* RDMA/hns: Remove unnecessary QP type checks
RDMA/hns: Fix out-of-order issue of requester when setting FENCE RDMA/hns: Fix NULL pointer derefernce in hns_roce_map_mr_sg()
Justin Tee (1):
scsi: lpfc: Validate hdwq pointers before dereferencing in reset/errata paths
K Prateek Nayak (3):
sched/core: Remove the unnecessary need_resched() check in nohz_csd_func() sched/fair: Check idle_cpu() before need_resched() to detect ilb CPU turning busy sched/core: Prevent wakeup of ksoftirqd during idle load balance
Kai Mäkisara (2):
scsi: st: Don't modify unknown block number in MTIOCGET
scsi: st: Add MTIOCGET and MTLOAD to ioctls allowed after device reset
Kailang Yang (3):
ALSA: hda/realtek: Update ALC256 depop procedure
ALSA: hda/realtek: Update ALC225 depop procedure
ALSA: hda/realtek: Set PCBeep to default value for ALC274
Kaixin Wang (1):
i3c: master: svc: Fix use after free vulnerability in svc_i3c_master Driver Due to Race Condition
Kan Liang (1):
perf/x86/intel: Hide Topdown metrics events if the feature is not enumerated
Kartik Rajput (1):
serial: amba-pl011: Fix RX stall when DMA is used
Kashyap Desai (1):
RDMA/bnxt_re: Check cqe flags to know imm_data vs inv_irkey
Kees Cook (2):
lib: stackinit: hide never-taken branch from compiler
smb: client: memcpy() with surrounding object base address
Keita Aihara (1):
mmc: core: Add SD card quirk for broken poweroff notification
Keith Busch (1):
PCI: Add 'reset_subordinate' to reset hierarchy below bridge
Kent Overstreet (1):
closures: Change BUG_ON() to WARN_ON()
Kinsey Moore (1):
jffs2: Prevent rtime decompress memory corruption
Kishon Vijay Abraham I (2):
PCI: keystone: Set mode as Root Complex for "ti,keystone-pcie" compatible
PCI: keystone: Add link up check to ks_pcie_other_map_bus()
Konstantin Komarov (2):
fs/ntfs3: Fixed overflow check in mi_enum_attr() fs/ntfs3: Sequential field availability check in mi_enum_attr()
Kory Maincent (1):
ethtool: Fix wrong mod state in case of verbose and no_mask bitset
Kuan-Wei Chiu (1):
tracing: Fix cmp_entries_dup() to respect sort() comparison rules
Kuniyuki Iwashima (2):
tcp: Fix use-after-free of nreq in reqsk_timer_handler().
tipc: Fix use-after-free of kernel socket in cleanup_bearer().
Kunkun Jiang (2):
KVM: arm64: vgic-its: Clear DTE when MAPD unmaps a device
KVM: arm64: vgic-its: Clear ITE when DISCARD frees an ITE
Kuro Chung (1):
drm/bridge: it6505: update usleep_range for RC circuit charge time
Kurt Borja (2):
platform/x86: dell-smbios-base: Extends support to Alienware products platform/x86: dell-wmi-base: Handle META key Lock/Unlock events
Lang Yu (1):
drm/amdgpu: refine error handling in amdgpu_ttm_tt_pin_userptr
Larysa Zaremba (1):
xsk: always clear DMA mapping information when unmapping the pool
Leo Yan (1):
perf probe: Correct demangled symbols in C++ program
Levi Yun (3):
trace/trace_event_perf: remove duplicate samples on the first tracepoint event perf stat: Close cork_fd when create_perf_stat_counter() failed
dma-debug: fix a possible deadlock on radix_lock
Li Huafei (2):
crypto: inside-secure - Fix the return value of safexcel_xcbcmac_cra_init()
media: atomisp: Add check for rgby_data memory allocation failure
Li Lingfeng (1):
nfs: ignore SB_RDONLY when mounting nfs
Li Zetao (1):
media: ts2020: fix null-ptr-deref in ts2020_probe()
Li Zhijian (2):
selftests/watchdog-test: Fix system accidentally reset after watchdog-test fs/inode: Prevent dump_mapping() accessing invalid dentry.d_name.name
Liao Chen (2):
drm/bridge: it6505: Enable module autoloading drm/mcde: Enable module autoloading
Liequan Che (1):
bcache: revert replacing IS_ERR_OR_NULL with IS_ERR again
Lifeng Zheng (1):
ACPI: CPPC: Fix _CPC register setting issue
Linus Torvalds (1):
Revert "unicode: Don't special case ignorable code points"
Linus Walleij (3):
ARM: 9429/1: ioremap: Sync PGDs for VMALLOC shadow
ARM: 9430/1: entry: Do a dummy read from VMAP shadow
ARM: 9431/1: mm: Pair atomic_set_release() with _read_acquire()
Liu Jian (1):
sunrpc: clear XPRT_SOCK_UPD_TIMEOUT when reset transport
Lizhi Xu (1):
btrfs: add a sanity check for btrfs root in btrfs_search_slot()
Long Li (1):
xfs: remove unknown compat feature check in superblock write validation
LongPing Wei (1):
f2fs: fix the wrong f2fs_bug_on condition in f2fs_do_replace_block
Louis Leseur (1):
net/qed: allow old cards not supporting "num_images" to work
Lucas Stach (2):
drm/etnaviv: hold GPU lock across perfmon sampling drm/etnaviv: flush shader L1 cache after user commandstream
Luis Chamberlain (1):
sunrpc: simplify two-level sysctl registration for svcrdma_parm_table
Luiz Augusto von Dentz (5):
Bluetooth: hci_sync: Add helper functions to manipulate cmd_sync queue
Bluetooth: MGMT: Fix possible crash on mgmt_index_removed
Bluetooth: MGMT: Fix slab-use-after-free Read in set_powered_sync
Bluetooth: hci_core: Fix not checking skb length on hci_acldata_packet
Bluetooth: MGMT: Fix possible deadlocks
Lukas Wunner (1):
PCI: Fix use-after-free of slot->bus on hot remove
Lukasz Luba (1):
drm/msm/gpu: Check the status of registration to PM QoS
Luo Qiu (1):
firmware: arm_scpi: Check the DVFS OPP count returned by the firmware
Luo Yifan (2):
ASoC: stm: Prevent potential division by zero in stm32_sai_mclk_round_rate()
ASoC: stm: Prevent potential division by zero in stm32_sai_get_clk_div()
Ma Ke (3):
drm/sti: avoid potential dereference of error pointers in sti_hqvdp_atomic_check drm/sti: avoid potential dereference of error pointers in sti_gdp_atomic_check drm/sti: avoid potential dereference of error pointers
Ma Wupeng (1):
ipc: fix memleak if msg_init_ns failed in create_ipc_ns
Maciej Fijalkowski (2):
bpf: fix OOB devmap writes when deleting elements
xsk: fix OOB map writes when deleting elements
Macpaul Lin (2):
arm64: dts: mt8195: Fix dtbs_check error for infracfg_ao node
ASoC: dt-bindings: mt6359: Update generic node name and dmic-mode
Manikandan Muralidharan (1):
drm/panel: simple: Add Microchip AC69T88A LVDS Display panel
Manikanta Mylavarapu (1):
soc: qcom: socinfo: fix revision check in qcom_socinfo_probe()
Manivannan Sadhasivam (1):
PCI: endpoint: Use a separate lock for protecting epc->pci_epf list
Marc Kleine-Budde (6):
can: gs_usb: remove leading space from goto labels
can: gs_usb: gs_usb_probe(): align block comment
can: gs_usb: uniformly use "parent" as variable name for struct gs_usb
can: gs_usb: add VID/PID for Xylanta SAINT3 product family
can: dev: can_set_termination(): allow sleeping GPIOs
can: mcp251xfd: mcp251xfd_get_tef_len(): work around erratum DS80000789E 6.
Marc Zyngier (1):
KVM: arm64: vgic-v3: Sanitise guest writes to GICR_INVLPIR
Marcelo Dalmas (1):
ntp: Remove invalid cast in time offset math
Marco Elver (3):
kcsan, seqlock: Support seqcount_latch_t
kcsan, seqlock: Fix incorrect assumption in read_seqbegin()
kcsan: Turn report_filterlist_lock into a raw_spinlock
Marco Pagani (2):
fpga: bridge: add owner module and take its refcount
fpga: manager: add owner module and take its refcount
Marcus Folkesson (1):
mfd: da9052-spi: Change read-mask to write-mask
Marek Vasut (1):
soc: imx8m: Probe the SoC driver as platform driver
Marie Ramlow (1):
ALSA: usb-audio: add mixer mapping for Corsair HS80
Mark Brown (3):
clocksource/drivers:sp804: Make user selectable kselftest/arm64: Don't leak pipe fds in pac.exec_sign_all() arm64/sve: Discard stale CPU state when handling SVE traps
Mark Rutland (2):
arm64: ptrace: fix partial SETREGSET for NT_ARM_TAGGED_ADDR_CTRL
arm64: smccc: Remove broken support for SMCCCv1.3 SVE discard hint
Markus Petri (1):
ASoC: amd: yc: Support dmic on another model of Lenovo Thinkpad E14 Gen 6
Martin Ottens (1):
net/sched: tbf: correct backlog statistic for GSO packets
Masahiro Yamada (3):
arm64: fix .data.rel.ro size assertion when CONFIG_LTO_CLANG s390/syscalls: Avoid creation of arch/arch/ directory
modpost: remove incorrect code in do_eisa_entry()
Masami Hiramatsu (Google) (1):
tracing/eprobe: Fix to release eprobe when failed to add dyn_event
Mathias Nyman (1):
xhci: dbc: Fix STALL transfer event handling
Mathieu Desnoyers (1):
tracing/ftrace: disable preemption in syscall probe
Matthias Schiffer (1):
drm: fsl-dcu: enable PIXCLK on LS1021A
Maurice Lambert (1):
netlink: typographical error in nlmsg_type constants definition
Maxime Chevallier (2):
net: stmmac: dwmac-socfpga: Set RX watchdog interrupt as broken
rtc: ab-eoz9: don't fail temperature reads on undervoltage notification
Maíra Canal (2):
drm/v3d: Address race-condition in MMU flush drm/v3d: Enable Performance Counters before clearing them
MengEn Sun (1):
vmstat: call fold_vm_zone_numa_events() before show per zone NUMA event
Mengyuan Lou (1):
PCI: Add ACS quirk for Wangxun FF5xxx NICs
Michael Ellerman (3):
powerpc/pseries: Fix dtl_access_lock to be a rw_semaphore selftests/mount_setattr: Fix failures on 64K PAGE_SIZE kernels powerpc/prom_init: Fixup missing powermac #size-cells
Michael Grzeschik (1):
usb: dwc3: ep0: Don't reset resource alloc flag (including ep0)
Michal Luczaj (2):
llc: Improve setsockopt() handling of malformed user input
rxrpc: Improve setsockopt() handling of malformed user input
Michal Pecio (1):
usb: xhci: Fix TD invalidation under pending Set TR Dequeue
Michal Simek (2):
microblaze: Export xmb_manager functions
dt-bindings: serial: rs485: Fix rs485-rts-delay property
Michal Suchanek (1):
powerpc/sstep: make emulate_vsx_load and emulate_vsx_store static
Michal Vokáč (1):
leds: lp55xx: Remove redundant test for invalid channel number
Michal Vrastil (1):
Revert "usb: gadget: composite: fix OS descriptors w_value logic"
Miguel Ojeda (1):
time: Fix references to _msecs_to_jiffies() handling of values
Mikhail Rudenko (1):
regulator: rk808: Add apply_bit for BUCK3 on RK809
Ming Lei (2):
ublk: fix ublk_ch_mmap() for 64K page size
ublk: fix error code for unsupported command
Ming Qian (3):
media: amphion: Set video drvdata before register video device
media: imx-jpeg: Set video drvdata before register video device
media: imx-jpeg: Ensure power suppliers be suspended before detach them
Mingwei Zheng (1):
net: rfkill: gpio: Add check for clk_enable()
Miquel Raynal (1):
mtd: rawnand: atmel: Fix possible memory leak
Miri Korenblit (1):
wifi: iwlwifi: mvm: avoid NULL pointer dereference
Mirsad Todorovac (1):
fs/proc/kcore.c: fix coccinelle reported ERROR instances
Mostafa Saleh (1):
iommu/io-pgtable-arm: Fix stage-2 map/unmap for concatenated tables
Muchun Song (1):
block: fix ordering between checking BLK_MQ_S_STOPPED request adding
Mukesh Ojha (1):
leds: class: Protect brightness_show() with led_cdev->led_access mutex
Murad Masimov (1):
hwmon: (tps23861) Fix reporting of negative temperatures
Namhyung Kim (1):
perf/arm-cmn: Ensure port and device id bits are set properly
Namjae Jeon (1):
exfat: fix uninit-value in __exfat_get_dentry_set
Nathan Chancellor (7):
powerpc: Fix stack protector Kconfig test for clang
powerpc: Adjust adding stack protector flags to KBUILD_CLAGS for clang powerpc/vdso: Remove unused '-s' flag from ASFLAGS powerpc/vdso: Improve linker flags
powerpc/vdso: Remove an unsupported flag from vgettimeofday-32.o with clang powerpc/vdso: Include CLANG_FLAGS explicitly in ldflags-y powerpc/vdso: Drop -mstack-protector-guard flags in 32-bit files with clang
Nazar Bilinskyi (1):
ALSA: hda/realtek: Enable mute and micmute LED on HP ProBook 430 G8
Nick Chan (1):
watchdog: apple: Actually flush writes after requesting watchdog restart
Nicolas Bouchinet (1):
tty: ldsic: fix tty_ldisc_autoload sysctl's proc_handler
Nihar Chaithanya (1):
jfs: add a check to prevent array-index-out-of-bounds in dbAdjTree
Nikolay Kuratov (1):
KVM: x86/mmu: Ensure that kvm_release_pfn_clean() takes exact pfn from kvm_faultin_pfn()
Nobuhiro Iwamatsu (1):
rtc: abx80x: Fix WDT bit position of the status register
Norbert van Bolhuis (1):
wifi: brcmfmac: Fix oops due to NULL pointer dereference in brcmf_sdiod_sglist_rw()
Nuno Sa (3):
dt-bindings: clock: axi-clkgen: include AXI clk
clk: clk-axi-clkgen: make sure to enable the AXI bus clock
iio: adc: ad7923: Fix buffer overflow for tx_buf and ring_xfer
Ojaswin Mujoo (1):
quota: flush quota_release_work upon quota writeback
Oleksandr Ocheretnyi (1):
iTCO_wdt: mask NMI_NOW bit for update_no_reboot_bit() call
Oleksandr Tymoshenko (1):
ovl: properly handle large files in ovl_security_fileattr
Oleksij Rempel (3):
net: usb: lan78xx: Fix double free issue with interrupt buffer allocation
net: usb: lan78xx: Fix memory leak on device unplug by freeing PHY device
net: usb: lan78xx: Fix refcounting and autosuspend on invalid WoL configuration
Oliver Neukum (2):
usb: yurex: make waiting on yurex_write interruptible
USB: chaoskey: fail open after removal
Oliver Upton (1):
KVM: arm64: Don't retire aborted MMIO instruction
Orange Kao (1):
EDAC/igen6: Avoid segmentation fault on module unload
Pablo Neira Ayuso (3):
netfilter: nf_tables: skip transaction if update object is not implemented
netfilter: nft_socket: remove WARN_ON_ONCE on maximum cgroup level
netfilter: nft_set_hash: skip duplicated elements pending gc run
Pali Rohár (1):
cifs: Fix buffer overflow when parsing NFS reparse points
Paolo Abeni (4):
ipv6: release nexthop on device removal
selftests: net: really check for bg process completion
ip6mr: fix tables suspicious RCU usage
ipmr: fix tables suspicious RCU usage
Parker Newman (1):
misc: eeprom: eeprom_93cx6: Add quirk for extra read clock cycle
Patrick Donnelly (1):
ceph: extract entity name from device id
Paul Aurich (1):
smb: cached directories can be more than root file handle
Pavan Chebbi (1):
tg3: Set coherent DMA mask bits to 31 for BCM57766 chipsets
Pavel Begunkov (1):
io_uring: wake up optimisations
Pei Xiao (3):
hwmon: (nct6775-core) Fix overflows seen when writing limit attributes drm/sti: Add __iomem for mixer_dbg_mxn's parameter
spi: mpc52xx: Add cancel_work_sync before module remove
Peilin Ye (2):
bpf: Fix dev's rx stats for bpf_redirect_peer traffic
veth: Use tstats per-CPU traffic counters
Peng Fan (3):
clk: imx: lpcg-scu: SW workaround for errata (e10858)
clk: imx: fracn-gppll: correct PLL initialization flow
clk: imx: fracn-gppll: fix pll power up
Peter Griffin (1):
scsi: ufs: exynos: Fix hibern8 notify callbacks
Peter Wang (1):
scsi: ufs: core: Add missing post notify for power mode change
Peter Zijlstra (1):
seqlock/latch: Provide raw_read_seqcount_latch_retry()
Phil Sutter (1):
netfilter: ipset: Hold module reference while requesting a module
Philipp Stanner (1):
drm/sched: memset() 'job' in drm_sched_job_init()
Pin-yen Lin (1):
drm/bridge: anx7625: Drop EDID cache on bridge power off
Piyush Raj Chouhan (1):
ALSA: hda/realtek: Add subwoofer quirk for Infinix ZERO BOOK 13
Pratyush Brahma (1):
iommu/arm-smmu: Defer probe of clients after smmu device bound
Prike Liang (2):
drm/amdgpu: Dereference the ATCS ACPI buffer drm/amdgpu: set the right AMDGPU sg segment limitation
Priyanka Singh (1):
EDAC/fsl_ddr: Fix bad bit shift operations
Qi Han (2):
f2fs: compress: fix inconsistent update of i_blocks in release_compress_blocks and reserve_compress_blocks
f2fs: fix f2fs_bug_on when uninstalling filesystem call f2fs_evict_inode.
Qingfang Deng (1):
jffs2: fix use of uninitialized variable
Qiu-ji Chen (3):
xen: Fix the issue of resource not being properly released in xenbus_dev_probe()
ASoC: codecs: Fix atomicity violation in snd_soc_component_get_drvdata()
media: wl128x: Fix atomicity violation in fmc_send_cmd()
Qu Wenruo (1):
btrfs: avoid unnecessary device path update for the same device
Quentin Monnet (1):
bpftool: Remove asserts from JIT disassembler
Quinn Tran (3):
scsi: qla2xxx: Fix abort in bsg timeout
scsi: qla2xxx: Fix NVMe and NPIV connect issue
scsi: qla2xxx: Fix use after free on unload
Rafael J. Wysocki (1):
thermal: core: Initialize thermal zones before registering them
Raghavendra Rao Ananta (1):
KVM: arm64: Ignore PMCNTENSET_EL0 while checking for overflow status
Randy Dunlap (3):
fs_parser: update mount_api doc to match function signature
scatterlist: fix incorrect func name in kernel-doc drm/msm: DEVFREQ_GOV_SIMPLE_ONDEMAND is no longer needed
Reinette Chatre (1):
selftests/resctrl: Protect against array overrun during iMC config parsing
Ricardo Ribalda (1):
media: uvcvideo: Stop stream during unregister
Richard Weinberger (1):
jffs2: Fix rtime decompressor
Ritesh Harjani (IBM) (3):
powerpc/fadump: Refactor and prepare fadump_cma_init for late init powerpc/fadump: Move fadump_cma_init to setup_arch() after initmem_init() powerpc/mm/fault: Fix kfence page fault reporting
Rob Clark (3):
drm/msm/gpu: Add devfreq tuning debugfs drm/msm/gpu: Bypass PM QoS constraint for idle clamp PM / devfreq: Fix build issues with devfreq disabled
Rohan Barar (1):
media: cx231xx: Add support for Dexatek USB Video Grabber 1d19:6108
Roman Gushchin (1):
mm: page_alloc: move mlocked flag clearance into free_pages_prepare()
Rosen Penev (3):
net: mdio-ipq4019: add missing error check
wifi: ath5k: add PCI ID for SX76X
wifi: ath5k: add PCI ID for Arcadyan devices
Ryusuke Konishi (1):
nilfs2: fix potential out-of-bounds memory access in nilfs_find_entry()
Sahas Leelodharry (1):
ALSA: hda/realtek: Add support for Samsung Galaxy Book3 360 (NP730QFG)
Sai Kumar Cholleti (1):
gpio: exar: set value when external pull-up or pull-down is present
Saravana Kannan (3):
driver core: fw_devlink: Improve logs for cycle detection driver core: Add FWLINK_FLAG_IGNORE to completely ignore a fwnode link driver core: fw_devlink: Stop trying to optimize cycle detection logic
Saravanan Vajravel (1):
bnxt_en: Reserve rings after PCIe AER recovery if NIC interface is down
Sathvika Vasireddy (1):
powerpc/vdso: Skip objtool from running on VDSO files
Saurav Kashyap (1):
scsi: qla2xxx: Remove check req_sg_cnt should be equal to rsp_sg_cnt
Sean Christopherson (1):
KVM: x86/mmu: Skip the "try unsync" path iff the old SPTE was a leaf SPTE
Sergey Senozhatsky (1):
media: venus: provide ctx queue lock for ioctl synchronization
Shengjiu Wang (1):
ASoC: fsl_micfil: fix regmap_write_bits usage
Shengyu Qu (1):
net: sfp: change quirks for Alcatel Lucent G-010S-P
Shu Han (1):
mm: call the security_mmap_file() LSM hook in remap_file_pages()
Si-Wei Liu (1):
vdpa/mlx5: Fix suboptimal range on iotlb iteration
Sibi Sankar (1):
remoteproc: qcom_q6v5_mss: Re-order writes to the IMEM region
Sidraya Jayagond (1):
s390/iucv: MSG_PEEK causes memory leak in iucv_sock_destruct()
Simon Horman (2):
net: fec_mpc52xx_phy: Use %pa to format resource_size_t
net: ethernet: fs_enet: Use %pa to format resource_size_t
Srinivas Pandruvada (1):
thermal: int3400: Fix reading of current_uuid for active policy
Srinivasan Shanmugam (4):
drm/amd/display: Add NULL check for function pointer in dcn32_set_output_transfer_func drm/amd/display: Add NULL check for clk_mgr and clk_mgr->funcs in dcn30_init_hw drm/amd/display: Add NULL check for clk_mgr in dcn32_init_hw drm/amd/display: Add NULL check for function pointer in dcn20_set_output_transfer_func
Stanislav Fomichev (1):
selftests/bpf: Add csum helpers
Stanislaw Gruszka (1):
spi: Fix acpi deferred irq probe
Steve French (1):
smb3: request handle caching when caching directories
Steven Price (1):
drm/panfrost: Remove unused id_mask from struct panfrost_model
Takashi Iwai (9):
ALSA: usx2y: Use snd_card_free_when_closed() at disconnection
ALSA: us122l: Use snd_card_free_when_closed() at disconnection
ALSA: caiaq: Use snd_card_free_when_closed() at disconnection
ALSA: 6fire: Release resources at card release
ALSA: usb-audio: Fix out of bounds reads when finding clock sources
ALSA: pcm: Add sanity NULL check for the default mmap fault handler
ALSA: hda/realtek: Apply quirk for Medion E15433
ALSA: usb-audio: Notify xrun for low-latency mode
ALSA: usb-audio: Make mic volume workarounds globally applicable
Tetsuo Handa (1):
ocfs2: free inode when ocfs2_get_init_inode() fails
Thadeu Lima de Souza Cascardo (2):
hfsplus: don't query the device logical block size multiple times
media: uvcvideo: Require entities to have a non-zero unique ID
Theodore Ts'o (1):
ext4: fix FS_IOC_GETFSMAP handling
Thinh Nguyen (5):
usb: dwc3: gadget: Fix checking for number of TRBs left
usb: dwc3: gadget: Fix looping of queued SG entries
usb: dwc3: gadget: Rewrite endpoint allocation flow
usb: dwc3: ep0: Don't clear ep0 DWC3_EP_TRANSFER_STARTED
usb: dwc3: ep0: Don't reset resource alloc flag
Thomas Gleixner (2):
serial: amba-pl011: Use port lock wrappers
modpost: Add .irqentry.text to OTHER_SECTIONS
Thomas Richter (1):
s390/cpum_sf: Handle CPU hotplug remove during sampling
Thomas Weißschuh (1):
fbdev: efifb: Register sysfs groups through driver core
Thomas Zimmermann (1):
fbdev/sh7760fb: Alloc DMA memory from hardware device
Tiezhu Yang (2):
LoongArch: Fix build failure with GCC 15 (-std=gnu23)
LoongArch: BPF: Sign-extend return values
Tiwei Bie (6):
um: ubd: Do not use drvdata in release
um: net: Do not use drvdata in release
um: vector: Do not use drvdata in release
um: Fix potential integer overflow during physmem setup
um: Fix the return value of elf_core_copy_task_fpregs
um: Always dump trace for specified task in show_stack
Todd Kjos (1):
PCI: Fix reset_method_store() memory leak
Tomi Valkeinen (3):
drm/omap: Fix possible NULL dereference drm/omap: Fix locking in omap_gem_new_dmabuf() drm/bridge: tc358767: Fix link properties discovery
Tony Ambardar (1):
libbpf: Fix output .symtab byte-order during linking
Trond Myklebust (1):
NFSv4.0: Fix a use-after-free problem in the asynchronous open()
Tvrtko Ursulin (2):
dma-fence: Fix reference leak on fence merge failure path
dma-fence: Use kernel's sort for merging fences
Ulf Hansson (1):
mmc: core: Further prevent card detect during shutdown
Umio Yasuno (1):
drm/amd/pm: update current_socclk and current_uclk in gpu_metrics on smu v13.0.7
Uros Bizjak (1):
tracing: Use atomic64_inc_return() in trace_clock_counter()
Uwe Kleine-König (3):
mtd: hyperbus: rpc-if: Convert to platform remove callback returning void
i3c: Make i3c_master_unregister() return void
ASoC: amd: yc: Add quirk for microphone on Lenovo Thinkpad T14s Gen 6 21M1CTO1WW
Vadim Fedorenko (1):
net-timestamp: make sk_tskey more predictable in error path
Vasiliy Kovalev (1):
ovl: Filter invalid inodes with missing lookup function
Vasily Gorbik (1):
s390/entry: Mark IRQ entries to fix stack depot warnings
Venkata Prasad Potturu (1):
ASoC: amd: yc: Fix for enabling DMIC on acp6x via _DSD entry
Victor Lu (1):
drm/amdgpu: clear RB_OVERFLOW bit when enabling interrupts for vega20_ih
Victor Zhao (1):
drm/amdgpu: skip amdgpu_device_cache_pci_state under sriov
Vineeth Vijayan (1):
s390/cio: Do not unregister the subchannel based on DNV
Vishnu Sankar (1):
platform/x86: thinkpad_acpi: Fix for ThinkPad's with ECFW showing incorrect fan speed
Vitalii Mordan (2):
marvell: pxa168_eth: fix call balance of pep->clk handling routines
usb: ehci-spear: fix call balance of sehci clk handling routines
WANG Xuerui (1):
LoongArch: Tweak CFLAGS for Clang compatibility
Wang Liang (1):
net: fix crash when config small gso_max_size/gso_ipv4_max_size
WangYuli (1):
HID: wacom: fix when get product name maybe null pointer
Waqar Hameed (1):
ubifs: authentication: Fix use-after-free in ubifs_tnc_end_commit
Wei Yang (1):
maple_tree: refine mas_store_root() on storing NULL
Weili Qian (1):
crypto: hisilicon/qm - disable same error report before resetting
Wen Gu (1):
net/smc: fix LGR and link use-after-free issue
Wengang Wang (1):
ocfs2: update seq_file index in ocfs2_dlm_seq_next
Will Deacon (1):
arm64: tls: Fix context-switching of tpidrro_el0 when kpti is enabled
Wolfram Sang (1):
rtc: rzn1: fix BCD to rtc_time conversion errors
Xi Ruoyao (1):
MIPS: Loongson64: DTS: Really fix PCIe port nodes for ls7a
Xiaolei Wang (1):
drm/etnaviv: Request pages from DMA32 zone on addressing_limited
Xin Long (1):
net: sched: fix erspan_opt settings in cls_flower
Xu Kuohai (1):
bpf, arm64: Remove garbage frame for struct_ops trampoline
Xu Yang (1):
usb: chipidea: udc: handle USB Error Interrupt if IOC not set
Yang Erkun (4):
brd: defer automatic disk creation until module initialization succeeds
SUNRPC: make sure cache entry active before cache_show
nfsd: make sure exp active before svc_export_show
nfsd: fix nfs4_openowner leak when concurrent nfsd4_open occur
Yao Zi (1):
platform/x86: panasonic-laptop: Return errno correctly in show callback
Yassine Oudjana (1):
watchdog: mediatek: Make sure system reset gets asserted in mtk_wdt_restart()
Ye Bin (2):
scsi: bfa: Fix use-after-free in bfad_im_module_exit()
svcrdma: fix miss destroy percpu_counter in svc_rdma_proc_init()
Yi Yang (2):
crypto: pcrypt - Call crypto layer directly when padata_do_parallel() return -EBUSY
nvdimm: rectify the illogical code within nd_dax_probe()
Yihang Li (1):
scsi: hisi_sas: Add cond_resched() for no forced preemption model
Yishai Hadas (1):
vfio/mlx5: Align the page tracking max message size with the device capability
Yongliang Gao (1):
rtc: check if __rtc_read_time was successful in rtc_timer_do_work()
Yongpeng Yang (1):
f2fs: check curseg->inited before write_sum_page in change_curseg
Yuan Can (6):
firmware: google: Unregister driver_info on failure
wifi: wfx: Fix error handling in wfx_core_init() drm/amdkfd: Fix wrong usage of INIT_WORK()
cpufreq: loongson2: Unregister platform_driver on failure dm thin: Add missing destroy_work_on_stack()
igb: Fix potential invalid memory access in igb_init_module()
Yuan Chen (1):
bpf: Fix the xdp_adjust_tail sample prog issue
Yuli Wang (1):
LoongArch: Define a default value for VM_DATA_DEFAULT_FLAGS
Zack Rusin (2):
drm/ttm: Make sure the mapped tt pages are decrypted when needed drm/ttm: Print the memory decryption status just once
Zeng Heng (1):
scsi: fusion: Remove unused variable 'rc'
Zhang Changzhong (1):
mfd: rt5033: Fix missing regmap_del_irq_chip()
Zhang Zekun (3):
pmdomain: ti-sci: Add missing of_node_put() for args.np powerpc/kexec: Fix return of uninitialized variable
Revert "drm/amdgpu: add missing size check in amdgpu_debugfs_gprwave_read()"
Zhen Lei (3):
scsi: qedf: Fix a possible memory leak in qedf_alloc_and_init_sb()
scsi: qedi: Fix a possible memory leak in qedi_alloc_and_init_sb()
fbdev: sh7760fb: Fix a possible memory leak in sh7760fb_alloc_mem()
Zheng Yejian (1):
mm/damon/vaddr: fix issue in damon_va_evenly_split_region()
Zhenzhong Duan (2):
iommu/vt-d: Fix checks and print in dmar_fault_dump_ptes() iommu/vt-d: Fix checks and print in pgtable_walk()
Zhiguo Niu (1):
f2fs: fix to avoid use GC_AT when setting gc_mode as GC_URGENT_LOW or GC_URGENT_MID
Zhihao Cheng (4):
ubi: wl: Put source PEB into correct list if trying locking LEB failed
ubi: fastmap: wl: Schedule fm_work if wear-leveling pool is empty
ubifs: Correct the total block count by deducting journal reservation
ubi: fastmap: Fix duplicate slab cache names while attaching
Zhu Jun (1):
samples/bpf: Fix a resource leak
Zichen Xie (1):
drm/msm/dpu: cast crtc_clk calculation to u64 in _dpu_core_perf_calc_clk()
Zicheng Qu (2):
ad7780: fix division by zero in ad7780_write_raw()
iio: Fix fwnode_handle in __fwnode_iio_channel_get_by_name()
Zijian Zhang (10):
selftests/bpf: Fix msg_verify_data in test_sockmap selftests/bpf: Fix txmsg_redir of test_txmsg_pull in test_sockmap selftests/bpf: Add txmsg_pass to pull/push/pop in test_sockmap selftests/bpf: Fix SENDPAGE data logic in test_sockmap selftests/bpf: Fix total_bytes in msg_loop_rx in test_sockmap selftests/bpf: Add push/pop checking for msg_verify_data in test_sockmap bpf, sockmap: Several fixes to bpf_msg_push_data
bpf, sockmap: Several fixes to bpf_msg_pop_data
bpf, sockmap: Fix sk_msg_reset_curr
tcp_bpf: Fix the sk_mem_uncharge logic in tcp_bpf_sendmsg
Zijun Hu (2):
driver core: bus: Fix double free in driver API bus_register()
PCI: endpoint: Clear secondary (not primary) EPC in pci_epc_remove_epf()
Ziwei Xiao (1):
gve: Fixes for napi_poll when budget is 0
Zizhi Wo (2):
cachefiles: Fix missing pos updates in cachefiles_ondemand_fd_write_iter() netfs/fscache: Add a memory barrier for FSCACHE_VOLUME_CREATING
Zqiang (1):
rcu-tasks: Fix access non-existent percpu rtpcp variable in rcu_tasks_need_gpcb()
chao liu (1):
apparmor: fix 'Do simple duplicate message elimination'
guoweikang (1):
ftrace: Fix regression with module command in stack_trace_filter
lei lu (2):
ntfs3: Add bounds checking to mi_enum_attr()
xfs: add bounds checking to xlog_recover_process_data
weiyufeng (1):
PCI: cpqphp: Use PCI_POSSIBLE_ERROR() to check config reads
wenglianfa (2):
RDMA/hns: Fix an AEQE overflow error caused by untimely update of eq_db_ci RDMA/hns: Fix cpu stuck caused by printings during reset
zhang jiao (2):
tools/lib/thermal: Remove the thermal.h soft link when doing make clean
pinctrl: k210: Undef K210_PC_DEFAULT
Greg Kroah-Hartman
maintainerDocumentation/ABI/testing/sysfs-bus-pci +11 -0
@@ -163,6 +163,17 @@ Description: will be present in sysfs. Writing 1 to this file will perform reset. +What: /sys/bus/pci/devices/.../reset_subordinate +Date: October 2024 +Contact: [email protected] +Description: + This is visible only for bridge devices. If you want to reset + all devices attached through the subordinate bus of a specific + bridge device, writing 1 to this will try to do it. This will + affect all devices attached to the system through this bridge + similiar to writing 1 to their individual "reset" file, so use + with caution. + What: /sys/bus/pci/devices/.../vpd Date: February 2008 Contact: Ben Hutchings <[email protected]>
Documentation/ABI/testing/sysfs-fs-f2fs +5 -2
@@ -303,10 +303,13 @@ Description: Do background GC aggressively when set. Set to 0 by default. GC approach and turns SSR mode on. gc urgent low(2): lowers the bar of checking I/O idling in order to process outstanding discard commands and GC a - little bit aggressively. uses cost benefit GC approach. + little bit aggressively. always uses cost benefit GC approach, + and will override age-threshold GC approach if ATGC is enabled + at the same time. gc urgent mid(3): does GC forcibly in a period of given gc_urgent_sleep_time and executes a mid level of I/O idling check. - uses cost benefit GC approach. + always uses cost benefit GC approach, and will override + age-threshold GC approach if ATGC is enabled at the same time. What: /sys/fs/f2fs/<disk>/gc_urgent_sleep_time Date: August 2017
Documentation/RCU/stallwarn.rst +1 -1
@@ -243,7 +243,7 @@ ticks this GP)" indicates that this CPU has not taken any scheduling-clock interrupts during the current stalled grace period. The "idle=" portion of the message prints the dyntick-idle state. -The hex number before the first "/" is the low-order 12 bits of the +The hex number before the first "/" is the low-order 16 bits of the dynticks counter, which will have an even-numbered value if the CPU is in dyntick-idle mode and an odd-numbered value otherwise. The hex number between the two "/"s is the value of the nesting, which will be
Documentation/devicetree/bindings/clock/adi,axi-clkgen.yaml +18 -4
@@ -26,9 +26,21 @@ properties: description: Specifies the reference clock(s) from which the output frequency is derived. This must either reference one clock if only the first clock - input is connected or two if both clock inputs are connected. - minItems: 1 - maxItems: 2 + input is connected or two if both clock inputs are connected. The last + clock is the AXI bus clock that needs to be enabled so we can access the + core registers. + minItems: 2 + maxItems: 3 + + clock-names: + oneOf: + - items: + - const: clkin1 + - const: s_axi_aclk + - items: + - const: clkin1 + - const: clkin2 + - const: s_axi_aclk '#clock-cells': const: 0
@@ -40,6 +52,7 @@ required: - compatible - reg - clocks + - clock-names - '#clock-cells' additionalProperties: false
@@ -50,5 +63,6 @@ examples: compatible = "adi,axi-clkgen-2.00.a"; #clock-cells = <0>; reg = <0xff000000 0x1000>; - clocks = <&osc 1>; + clocks = <&osc 1>, <&clkc 15>; + clock-names = "clkin1", "s_axi_aclk"; };
Documentation/devicetree/bindings/iio/dac/adi,ad3552r.yaml +1 -1
@@ -26,7 +26,7 @@ properties: maxItems: 1 spi-max-frequency: - maximum: 30000000 + maximum: 66000000 reset-gpios: maxItems: 1
Documentation/devicetree/bindings/serial/rs485.yaml +9 -10
@@ -18,16 +18,15 @@ properties: description: prop-encoded-array <a b> $ref: /schemas/types.yaml#/definitions/uint32-array items: - items: - - description: Delay between rts signal and beginning of data sent in - milliseconds. It corresponds to the delay before sending data. - default: 0 - maximum: 100 - - description: Delay between end of data sent and rts signal in milliseconds. - It corresponds to the delay after sending data and actual release - of the line. - default: 0 - maximum: 100 + - description: Delay between rts signal and beginning of data sent in + milliseconds. It corresponds to the delay before sending data. + default: 0 + maximum: 100 + - description: Delay between end of data sent and rts signal in milliseconds. + It corresponds to the delay after sending data and actual release + of the line. + default: 0 + maximum: 100 rs485-rts-active-low: description: drive RTS low when sending (default is high).
Documentation/devicetree/bindings/sound/mt6359.yaml +5 -5
@@ -23,8 +23,8 @@ properties: Indicates how many data pins are used to transmit two channels of PDM signal. 0 means two wires, 1 means one wire. Default value is 0. enum: - - 0 # one wire - - 1 # two wires + - 0 # two wires + - 1 # one wire mediatek,mic-type-0: $ref: /schemas/types.yaml#/definitions/uint32
@@ -53,9 +53,9 @@ additionalProperties: false examples: - | - mt6359codec: mt6359codec { - mediatek,dmic-mode = <0>; - mediatek,mic-type-0 = <2>; + mt6359codec: audio-codec { + mediatek,dmic-mode = <0>; + mediatek,mic-type-0 = <2>; }; ...
Documentation/devicetree/bindings/vendor-prefixes.yaml +2 -0
@@ -869,6 +869,8 @@ patternProperties: description: National Semiconductor "^nec,.*": description: NEC LCD Technologies, Ltd. + "^neofidelity,.*": + description: Neofidelity Inc. "^neonode,.*": description: Neonode Inc. "^netgear,.*":
Documentation/driver-api/fpga/fpga-bridge.rst +5 -2
@@ -6,9 +6,12 @@ API to implement a new FPGA bridge * struct fpga_bridge - The FPGA Bridge structure * struct fpga_bridge_ops - Low level Bridge driver ops -* fpga_bridge_register() - Create and register a bridge +* __fpga_bridge_register() - Create and register a bridge * fpga_bridge_unregister() - Unregister a bridge +The helper macro ``fpga_bridge_register()`` automatically sets +the module that registers the FPGA bridge as the owner. + .. kernel-doc:: include/linux/fpga/fpga-bridge.h :functions: fpga_bridge
@@ -16,7 +19,7 @@ API to implement a new FPGA bridge :functions: fpga_bridge_ops .. kernel-doc:: drivers/fpga/fpga-bridge.c - :functions: fpga_bridge_register + :functions: __fpga_bridge_register .. kernel-doc:: drivers/fpga/fpga-bridge.c :functions: fpga_bridge_unregister
Documentation/driver-api/fpga/fpga-mgr.rst +20 -14
@@ -24,7 +24,8 @@ How to support a new FPGA device -------------------------------- To add another FPGA manager, write a driver that implements a set of ops. The -probe function calls fpga_mgr_register() or fpga_mgr_register_full(), such as:: +probe function calls ``fpga_mgr_register()`` or ``fpga_mgr_register_full()``, +such as:: static const struct fpga_manager_ops socfpga_fpga_ops = { .write_init = socfpga_fpga_ops_configure_init,
@@ -69,10 +70,11 @@ probe function calls fpga_mgr_register() or fpga_mgr_register_full(), such as:: } Alternatively, the probe function could call one of the resource managed -register functions, devm_fpga_mgr_register() or devm_fpga_mgr_register_full(). -When these functions are used, the parameter syntax is the same, but the call -to fpga_mgr_unregister() should be removed. In the above example, the -socfpga_fpga_remove() function would not be required. +register functions, ``devm_fpga_mgr_register()`` or +``devm_fpga_mgr_register_full()``. When these functions are used, the +parameter syntax is the same, but the call to ``fpga_mgr_unregister()`` should be +removed. In the above example, the ``socfpga_fpga_remove()`` function would not be +required. The ops will implement whatever device specific register writes are needed to do the programming sequence for this particular FPGA. These ops return 0 for
@@ -125,15 +127,19 @@ API for implementing a new FPGA Manager driver * struct fpga_manager - the FPGA manager struct * struct fpga_manager_ops - Low level FPGA manager driver ops * struct fpga_manager_info - Parameter structure for fpga_mgr_register_full() -* fpga_mgr_register_full() - Create and register an FPGA manager using the +* __fpga_mgr_register_full() - Create and register an FPGA manager using the fpga_mgr_info structure to provide the full flexibility of options -* fpga_mgr_register() - Create and register an FPGA manager using standard +* __fpga_mgr_register() - Create and register an FPGA manager using standard arguments -* devm_fpga_mgr_register_full() - Resource managed version of - fpga_mgr_register_full() -* devm_fpga_mgr_register() - Resource managed version of fpga_mgr_register() +* __devm_fpga_mgr_register_full() - Resource managed version of + __fpga_mgr_register_full() +* __devm_fpga_mgr_register() - Resource managed version of __fpga_mgr_register() * fpga_mgr_unregister() - Unregister an FPGA manager +Helper macros ``fpga_mgr_register_full()``, ``fpga_mgr_register()``, +``devm_fpga_mgr_register_full()``, and ``devm_fpga_mgr_register()`` are available +to ease the registration. + .. kernel-doc:: include/linux/fpga/fpga-mgr.h :functions: fpga_mgr_states
@@ -147,16 +153,16 @@ API for implementing a new FPGA Manager driver :functions: fpga_manager_info .. kernel-doc:: drivers/fpga/fpga-mgr.c - :functions: fpga_mgr_register_full + :functions: __fpga_mgr_register_full .. kernel-doc:: drivers/fpga/fpga-mgr.c - :functions: fpga_mgr_register + :functions: __fpga_mgr_register .. kernel-doc:: drivers/fpga/fpga-mgr.c - :functions: devm_fpga_mgr_register_full + :functions: __devm_fpga_mgr_register_full .. kernel-doc:: drivers/fpga/fpga-mgr.c - :functions: devm_fpga_mgr_register + :functions: __devm_fpga_mgr_register .. kernel-doc:: drivers/fpga/fpga-mgr.c :functions: fpga_mgr_unregister
Documentation/filesystems/mount_api.rst +2 -1
@@ -778,7 +778,8 @@ process the parameters it is given. * :: - bool fs_validate_description(const struct fs_parameter_description *desc); + bool fs_validate_description(const char *name, + const struct fs_parameter_description *desc); This performs some validation checks on a parameter description. It returns true if the description is good and false if it is not. It will
Documentation/locking/seqlock.rst +1 -1
@@ -153,7 +153,7 @@ Use seqcount_latch_t when the write side sections cannot be protected from interruption by readers. This is typically the case when the read side can be invoked from NMI handlers. -Check `raw_write_seqcount_latch()` for more information. +Check `write_seqcount_latch()` for more information. .. _seqlock_t:
Documentation/networking/j1939.rst +1 -1
@@ -121,7 +121,7 @@ format, the Group Extension is set in the PS-field. On the other hand, when using PDU1 format, the PS-field contains a so-called Destination Address, which is _not_ part of the PGN. When communicating a PGN -from user space to kernel (or vice versa) and PDU2 format is used, the PS-field +from user space to kernel (or vice versa) and PDU1 format is used, the PS-field of the PGN shall be set to zero. The Destination Address shall be set elsewhere.
Makefile +1 -1
@@ -1,7 +1,7 @@ # SPDX-License-Identifier: GPL-2.0 VERSION = 6 PATCHLEVEL = 1 -SUBLEVEL = 119 +SUBLEVEL = 120 EXTRAVERSION = NAME = Curry Ramen
arch/arm/boot/dts/sun9i-a80-cubieboard4.dts +2 -2
@@ -280,8 +280,8 @@ reg_dcdc4: dcdc4 { reg_dcdc5: dcdc5 { regulator-always-on; - regulator-min-microvolt = <1425000>; - regulator-max-microvolt = <1575000>; + regulator-min-microvolt = <1450000>; + regulator-max-microvolt = <1550000>; regulator-name = "vcc-dram"; };
arch/arm/kernel/entry-armv.S +8 -0
@@ -25,6 +25,7 @@ #include <asm/tls.h> #include <asm/system_info.h> #include <asm/uaccess-asm.h> +#include <asm/kasan_def.h> #include "entry-header.S" #include <asm/probes.h>
@@ -787,6 +788,13 @@ ENTRY(__switch_to) @ entries covering the vmalloc region. @ ldr r2, [ip] +#ifdef CONFIG_KASAN_VMALLOC + @ Also dummy read from the KASAN shadow memory for the new stack if we + @ are using KASAN + mov_l r2, KASAN_SHADOW_OFFSET + add r2, r2, ip, lsr #KASAN_SHADOW_SCALE_SHIFT + ldr r2, [r2] +#endif #endif @ When CONFIG_THREAD_INFO_IN_TASK=n, the update of SP itself is what
arch/arm/kernel/head.S +4 -0
@@ -411,7 +411,11 @@ ENTRY(secondary_startup) /* * Use the page tables supplied from __cpu_up. */ +#ifdef CONFIG_XIP_KERNEL + ldr r3, =(secondary_data + PLAT_PHYS_OFFSET - PAGE_OFFSET) +#else adr_l r3, secondary_data +#endif mov_l r12, __secondary_switched ldrd r4, r5, [r3, #0] @ get secondary_data.pgdir ARM_BE8(eor r4, r4, r5) @ Swap r5 and r4 in BE:
arch/arm/kernel/psci_smp.c +7 -0
@@ -45,8 +45,15 @@ extern void secondary_startup(void);static int psci_boot_secondary (unsigned int cpu,struct task_struct *idle) { if (psci_ops.cpu_on) +#ifdef CONFIG_XIP_KERNEL +return psci_ops.cpu_on (cpu_logical_map (cpu), + ((phys_addr_t)(&secondary_startup) + -XIP_VIRT_ADDR (CONFIG_XIP_PHYS_ADDR ) + +CONFIG_XIP_PHYS_ADDR )); +#else return psci_ops.cpu_on (cpu_logical_map (cpu),virt_to_idmap (&secondary_startup)); +#endif return -ENODEV ; }
arch/arm/mm/idmap.c +7 -0
@@ -84,8 +84,15 @@ static void identity_mapping_add(pgd_t *pgd, const char *text_start,unsigned long addr, end;unsigned long next; +#ifdef CONFIG_XIP_KERNEL + addr = (phys_addr_t)(text_start) -XIP_VIRT_ADDR (CONFIG_XIP_PHYS_ADDR ) + +CONFIG_XIP_PHYS_ADDR ; + end = (phys_addr_t)(text_end) -XIP_VIRT_ADDR (CONFIG_XIP_PHYS_ADDR ) + +CONFIG_XIP_PHYS_ADDR ; +#else addr =virt_to_idmap (text_start); end =virt_to_idmap (text_end); +#endif pr_info ("Setting up static identity map for 0x%lx - 0x%lx\n" , addr, end); prot |=PMD_TYPE_SECT |PMD_SECT_AP_WRITE |PMD_SECT_AF ;
arch/arm/mm/ioremap.c +30 -5
@@ -23,6 +23,7 @@*/ #include <linux/module.h> #include <linux/errno.h> +#include <linux/kasan.h> #include <linux/mm.h> #include <linux/vmalloc.h> #include <linux/io.h>
@@ -115,16 +116,40 @@ int ioremap_page(unsigned long virt, unsigned long phys, }EXPORT_SYMBOL (ioremap_page); +#ifdef CONFIG_KASAN +static unsigned long arm_kasan_mem_to_shadow (unsigned long addr) +{ +return (unsigned long )kasan_mem_to_shadow ((void *)addr); +} +#else +static unsigned long arm_kasan_mem_to_shadow (unsigned long addr) +{ +return 0 ; +} +#endif + +static void memcpy_pgd (struct mm_struct *mm,unsigned long start, +unsigned long end) +{ + end =ALIGN (end,PGDIR_SIZE ); +memcpy (pgd_offset (mm, start),pgd_offset_k (start), +sizeof (pgd_t) * (pgd_index (end) -pgd_index (start))); +} +void __check_vmalloc_seq (struct mm_struct *mm) {int seq; do { - seq = atomic_read(&init_mm.context.vmalloc_seq); - memcpy(pgd_offset(mm, VMALLOC_START), - pgd_offset_k(VMALLOC_START), - sizeof(pgd_t) * (pgd_index(VMALLOC_END) - - pgd_index(VMALLOC_START))); + seq = atomic_read_acquire(&init_mm.context.vmalloc_seq); + memcpy_pgd(mm, VMALLOC_START, VMALLOC_END); + if (IS_ENABLED(CONFIG_KASAN_VMALLOC)) { + unsigned long start = + arm_kasan_mem_to_shadow(VMALLOC_START); + unsigned long end = + arm_kasan_mem_to_shadow(VMALLOC_END); + memcpy_pgd(mm, start, end); + } /* * Use a store-release so that other CPUs that observe the * counter's new value are guaranteed to see the results of the
arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi +3 -0
@@ -202,6 +202,9 @@ accelerometer@68 { interrupts = <7 5 IRQ_TYPE_EDGE_RISING>; /* PH5 */ vdd-supply = <®_dldo1>; vddio-supply = <®_dldo1>; + mount-matrix = "0", "1", "0", + "-1", "0", "0", + "0", "0", "1"; }; };
arch/arm64/boot/dts/freescale/imx8mm-verdin.dtsi +1 -1
@@ -141,7 +141,7 @@ reg_usdhc2_vmmc: regulator-usdhc2 { regulator-max-microvolt = <3300000>; regulator-min-microvolt = <3300000>; regulator-name = "+V3.3_SD"; - startup-delay-us = <2000>; + startup-delay-us = <20000>; }; reserved-memory {
arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi +1 -1
@@ -133,7 +133,7 @@ reg_usdhc2_vmmc: regulator-usdhc2 { regulator-max-microvolt = <3300000>; regulator-min-microvolt = <3300000>; regulator-name = "+V3.3_SD"; - startup-delay-us = <2000>; + startup-delay-us = <20000>; }; reserved-memory {
arch/arm64/boot/dts/mediatek/mt8173-elm-hana.dtsi +8 -0
@@ -43,6 +43,14 @@ trackpad2: trackpad@2c { interrupts = <117 IRQ_TYPE_LEVEL_LOW>; reg = <0x2c>; hid-descr-addr = <0x0020>; + /* + * The trackpad needs a post-power-on delay of 100ms, + * but at time of writing, the power supply for it on + * this board is always on. The delay is therefore not + * added to avoid impacting the readiness of the + * trackpad. + */ + vdd-supply = <&mt6397_vgp6_reg>; wakeup-source; }; };
arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi-burnet.dts +3 -0
@@ -29,3 +29,6 @@ touchscreen@2c { }; }; +&i2c2 { + i2c-scl-internal-delay-ns = <4100>; +};
arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi-cozmo.dts +2 -0
@@ -17,6 +17,8 @@ &i2c_tunnel { }; &i2c2 { + i2c-scl-internal-delay-ns = <25000>; + trackpad@2c { compatible = "hid-over-i2c"; reg = <0x2c>;
arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi-damu.dts +3 -0
@@ -30,3 +30,6 @@ &qca_wifi { qcom,ath10k-calibration-variant = "GO_DAMU"; }; +&i2c2 { + i2c-scl-internal-delay-ns = <20000>; +};
arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi-fennel.dtsi +3 -0
@@ -25,3 +25,6 @@ trackpad@2c { }; }; +&i2c2 { + i2c-scl-internal-delay-ns = <21500>; +};
arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi +32 -24
126 lines not on this page · raw message
arch/arm64/boot/dts/mediatek/mt8183-kukui-kakadu.dtsi +2 -2
@@ -105,9 +105,9 @@ &i2c4 { clock-frequency = <400000>; vbus-supply = <&mt6358_vcn18_reg>; - eeprom@54 { + eeprom@50 { compatible = "atmel,24c32"; - reg = <0x54>; + reg = <0x50>; pagesize = <32>; vcc-supply = <&mt6358_vcn18_reg>; };
arch/arm64/boot/dts/mediatek/mt8183-kukui-kodama.dtsi +2 -2
@@ -80,9 +80,9 @@ &i2c4 { clock-frequency = <400000>; vbus-supply = <&mt6358_vcn18_reg>; - eeprom@54 { + eeprom@50 { compatible = "atmel,24c64"; - reg = <0x54>; + reg = <0x50>; pagesize = <32>; vcc-supply = <&mt6358_vcn18_reg>; };
arch/arm64/boot/dts/mediatek/mt8183-kukui-krane.dtsi +2 -2
@@ -89,9 +89,9 @@ &i2c4 { clock-frequency = <400000>; vbus-supply = <&mt6358_vcn18_reg>; - eeprom@54 { + eeprom@50 { compatible = "atmel,24c32"; - reg = <0x54>; + reg = <0x50>; pagesize = <32>; vcc-supply = <&mt6358_vcn18_reg>; };
arch/arm64/boot/dts/mediatek/mt8195-cherry.dtsi +1 -1
@@ -906,6 +906,7 @@ &xhci1 { vusb33-supply = <&mt6359_vusb_ldo_reg>; vbus-supply = <&usb_vbus>; + mediatek,u3p-dis-msk = <1>; }; &xhci2 {
@@ -922,7 +923,6 @@ &xhci3 { usb2-lpm-disable; vusb33-supply = <&mt6359_vusb_ldo_reg>; vbus-supply = <&usb_vbus>; - mediatek,u3p-dis-msk = <1>; }; #include <arm/cros-ec-keyboard.dtsi>
arch/arm64/boot/dts/mediatek/mt8195.dtsi +1 -1
@@ -332,7 +332,7 @@ topckgen: syscon@10000000 { }; infracfg_ao: syscon@10001000 { - compatible = "mediatek,mt8195-infracfg_ao", "syscon", "simple-mfd"; + compatible = "mediatek,mt8195-infracfg_ao", "syscon"; reg = <0 0x10001000 0 0x1000>; #clock-cells = <1>; #reset-cells = <1>;
arch/arm64/kernel/fpsimd.c +1 -0
@@ -1383,6 +1383,7 @@ static void sve_init_regs(void)fpsimd_bind_task_to_cpu (); }else {fpsimd_to_sve (current); +fpsimd_flush_task_state (current); } }
arch/arm64/kernel/process.c +1 -1
@@ -426,7 +426,7 @@ static void tls_thread_switch(struct task_struct *next)if (is_compat_thread (task_thread_info (next)))write_sysreg (next->thread.uw.tp_value, tpidrro_el0); -else if (!arm64_kernel_unmapped_at_el0 ()) +else write_sysreg (0 , tpidrro_el0);write_sysreg (*task_user_tls (next), tpidr_el0);
arch/arm64/kernel/ptrace.c +5 -1
@@ -1340,7 +1340,7 @@ static int tagged_addr_ctrl_get(struct task_struct *target, {long ctrl =get_tagged_addr_ctrl (target); -if (IS_ERR_VALUE (ctrl)) +if (WARN_ON_ONCE (IS_ERR_VALUE (ctrl)))return ctrl;return membuf_write (&to, &ctrl,sizeof (ctrl));
@@ -1354,6 +1354,10 @@ static int tagged_addr_ctrl_set(struct task_struct *target, const structint ret;long ctrl; + ctrl =get_tagged_addr_ctrl (target); +if (WARN_ON_ONCE (IS_ERR_VALUE (ctrl))) +return ctrl; + ret =user_regset_copyin (&pos, &count, &kbuf, &ubuf, &ctrl,0 ,-1 );if (ret)return ret;
arch/arm64/kernel/smccc-call.S +3 -32
@@ -7,48 +7,19 @@ #include <asm/asm-offsets.h> #include <asm/assembler.h> -#include <asm/thread_info.h> - -/* - * If we have SMCCC v1.3 and (as is likely) no SVE state in - * the registers then set the SMCCC hint bit to say there's no - * need to preserve it. Do this by directly adjusting the SMCCC - * function value which is already stored in x0 ready to be called. - */ -SYM_FUNC_START(__arm_smccc_sve_check) - - ldr_l x16, smccc_has_sve_hint - cbz x16, 2f - - get_current_task x16 - ldr x16, [x16, #TSK_TI_FLAGS] - tbnz x16, #TIF_FOREIGN_FPSTATE, 1f // Any live FP state? - tbnz x16, #TIF_SVE, 2f // Does that state include SVE? - -1: orr x0, x0, ARM_SMCCC_1_3_SVE_HINT - -2: ret -SYM_FUNC_END(__arm_smccc_sve_check) -EXPORT_SYMBOL(__arm_smccc_sve_check) .macro SMCCC instr - stp x29, x30, [sp, #-16]! - mov x29, sp -alternative_if ARM64_SVE - bl __arm_smccc_sve_check -alternative_else_nop_endif \instr #0 - ldr x4, [sp, #16] + ldr x4, [sp] stp x0, x1, [x4, #ARM_SMCCC_RES_X0_OFFS] stp x2, x3, [x4, #ARM_SMCCC_RES_X2_OFFS] - ldr x4, [sp, #24] + ldr x4, [sp, #8] cbz x4, 1f /* no quirk structure */ ldr x9, [x4, #ARM_SMCCC_QUIRK_ID_OFFS] cmp x9, #ARM_SMCCC_QUIRK_QCOM_A6 b.ne 1f str x6, [x4, ARM_SMCCC_QUIRK_STATE_OFFS] -1: ldp x29, x30, [sp], #16 - ret +1: ret .endm /*
arch/arm64/kernel/vmlinux.lds.S +3 -3
@@ -272,6 +272,9 @@ SECTIONS __initdata_end = .; __init_end = .; + .data.rel.ro : { *(.data.rel.ro) } + ASSERT(SIZEOF(.data.rel.ro) == 0, "Unexpected RELRO detected!") + _data = .; _sdata = .; RW_DATA(L1_CACHE_BYTES, PAGE_SIZE, THREAD_ALIGN)
@@ -323,9 +326,6 @@ SECTIONS *(.plt) *(.plt.*) *(.iplt) *(.igot .igot.plt) } ASSERT(SIZEOF(.plt) == 0, "Unexpected run-time procedure linkages detected!") - - .data.rel.ro : { *(.data.rel.ro) } - ASSERT(SIZEOF(.data.rel.ro) == 0, "Unexpected RELRO detected!") } #include "image-vars.h"
arch/arm64/kvm/arm.c +1 -1
@@ -876,7 +876,7 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_vcpu *vcpu)if (run->exit_reason ==KVM_EXIT_MMIO ) { ret =kvm_handle_mmio_return (vcpu); -if (ret) +if (ret <=0 )return ret; }
arch/arm64/kvm/mmio.c +32 -4
@@ -72,6 +72,31 @@ unsigned long kvm_mmio_read_buf(const void *buf, unsigned int len)return data; } +static bool kvm_pending_sync_exception (struct kvm_vcpu *vcpu) +{ +if (!vcpu_get_flag (vcpu,PENDING_EXCEPTION )) +return false; + +if (vcpu_el1_is_32bit (vcpu)) { +switch (vcpu_get_flag (vcpu,EXCEPT_MASK )) { +case unpack_vcpu_flag (EXCEPT_AA32_UND ): +case unpack_vcpu_flag (EXCEPT_AA32_IABT ): +case unpack_vcpu_flag (EXCEPT_AA32_DABT ): +return true; +default : +return false; + } + }else { +switch (vcpu_get_flag (vcpu,EXCEPT_MASK )) { +case unpack_vcpu_flag (EXCEPT_AA64_EL1_SYNC ): +case unpack_vcpu_flag (EXCEPT_AA64_EL2_SYNC ): +return true; +default : +return false; + } + } +} +/** * kvm_handle_mmio_return -- Handle MMIO loads after user space emulation * or in-kernel IO emulation
@@ -84,9 +109,12 @@ int kvm_handle_mmio_return(struct kvm_vcpu *vcpu)unsigned int len;int mask; -/* Detect an already handled MMIO return */ -if (unlikely (!vcpu->mmio_needed)) -return 0 ; +/* +* Detect if the MMIO return was already handled or if userspace aborted +* the MMIO access. +*/ +if (unlikely (!vcpu->mmio_needed ||kvm_pending_sync_exception (vcpu))) +return 1 ; vcpu->mmio_needed =0 ;
@@ -117,7 +145,7 @@ int kvm_handle_mmio_return(struct kvm_vcpu *vcpu)*/ kvm_incr_pc (vcpu); -return 0 ; +return 1 ; }int io_mem_abort (struct kvm_vcpu *vcpu,phys_addr_t fault_ipa)
arch/arm64/kvm/pmu-emul.c +0 -1
@@ -294,7 +294,6 @@ static u64 kvm_pmu_overflow_status(struct kvm_vcpu *vcpu)if ((__vcpu_sys_reg (vcpu,PMCR_EL0 ) &ARMV8_PMU_PMCR_E )) { reg =__vcpu_sys_reg (vcpu,PMOVSSET_EL0 ); - reg &=__vcpu_sys_reg (vcpu,PMCNTENSET_EL0 ); reg &=__vcpu_sys_reg (vcpu,PMINTENSET_EL1 ); }
arch/arm64/kvm/vgic/vgic-its.c +17 -15
@@ -855,6 +855,9 @@ static int vgic_its_cmd_handle_discard(struct kvm *kvm, struct vgic_its *its, ite =find_ite (its, device_id, event_id);if (ite &&its_is_collection_mapped (ite->collection)) { +struct its_device *device =find_its_device (its, device_id); +int ite_esz =vgic_its_get_abi (its)->ite_esz; +gpa_t gpa = device->itt_addr + ite->event_id * ite_esz;/* * Though the spec talks about removing the pending state, we * don't bother here since we clear the ITTE anyway and the
@@ -863,7 +866,8 @@ static int vgic_its_cmd_handle_discard(struct kvm *kvm, struct vgic_its *its,vgic_its_invalidate_cache (kvm);its_free_ite (kvm, ite); -return 0 ; + +return vgic_its_write_entry_lock (its, gpa,0 , ite_esz); }return E_ITS_DISCARD_UNMAPPED_INTERRUPT ;
@@ -1211,9 +1215,11 @@ static int vgic_its_cmd_handle_mapd(struct kvm *kvm, struct vgic_its *its,bool valid =its_cmd_get_validbit (its_cmd);u8 num_eventid_bits =its_cmd_get_size (its_cmd);gpa_t itt_addr =its_cmd_get_ittaddr (its_cmd); +int dte_esz =vgic_its_get_abi (its)->dte_esz;struct its_device *device; +gpa_t gpa; -if (!vgic_its_check_id (its, its->baser_device_table, device_id,NULL )) +if (!vgic_its_check_id (its, its->baser_device_table, device_id, &gpa))return E_ITS_MAPD_DEVICE_OOR ;if (valid && num_eventid_bits >VITS_TYPER_IDBITS )
@@ -1234,7 +1240,7 @@ static int vgic_its_cmd_handle_mapd(struct kvm *kvm, struct vgic_its *its,* is an error, so we are done in any case. */ if (!valid) -return 0 ; +return vgic_its_write_entry_lock (its, gpa,0 , dte_esz); device =vgic_its_alloc_device (its, device_id, itt_addr, num_eventid_bits);
@@ -2207,7 +2213,6 @@ static int scan_its_table(struct vgic_its *its, gpa_t base, int size, u32 esz,static int vgic_its_save_ite (struct vgic_its *its,struct its_device *dev,struct its_ite *ite,gpa_t gpa,int ite_esz) { -struct kvm *kvm = its->dev->kvm;u32 next_offset;u64 val;
@@ -2216,7 +2221,8 @@ static int vgic_its_save_ite(struct vgic_its *its, struct its_device *dev, ((u64 )ite->irq->intid <<KVM_ITS_ITE_PINTID_SHIFT ) | ite->collection->collection_id; val =cpu_to_le64 (val); -return kvm_write_guest_lock (kvm, gpa, &val, ite_esz); + +return vgic_its_write_entry_lock (its, gpa, val, ite_esz); }/**
@@ -2357,7 +2363,6 @@ static int vgic_its_restore_itt(struct vgic_its *its, struct its_device *dev)static int vgic_its_save_dte (struct vgic_its *its,struct its_device *dev,gpa_t ptr,int dte_esz) { -struct kvm *kvm = its->dev->kvm;u64 val, itt_addr_field;u32 next_offset;
@@ -2368,7 +2373,8 @@ static int vgic_its_save_dte(struct vgic_its *its, struct its_device *dev, (itt_addr_field <<KVM_ITS_DTE_ITTADDR_SHIFT ) | (dev->num_eventid_bits - 1)); val =cpu_to_le64 (val); -return kvm_write_guest_lock (kvm, ptr, &val, dte_esz); + +return vgic_its_write_entry_lock (its, ptr, val, dte_esz); }/**
@@ -2555,7 +2561,8 @@ static int vgic_its_save_cte(struct vgic_its *its, ((u64 )collection->target_addr <<KVM_ITS_CTE_RDBASE_SHIFT ) | collection->collection_id); val =cpu_to_le64 (val); -return kvm_write_guest_lock (its->dev->kvm, gpa, &val, esz); + +return vgic_its_write_entry_lock (its, gpa, val, esz); }/*
@@ -2571,8 +2578,7 @@ static int vgic_its_restore_cte(struct vgic_its *its, gpa_t gpa, int esz)u64 val;int ret; -BUG_ON (esz >sizeof (val)); - ret =kvm_read_guest_lock (kvm, gpa, &val, esz); + ret =vgic_its_read_entry_lock (its, gpa, &val, esz);if (ret)return ret; val =le64_to_cpu (val);
@@ -2610,7 +2616,6 @@ static int vgic_its_save_collection_table(struct vgic_its *its)u64 baser = its->baser_coll_table;gpa_t gpa =GITS_BASER_ADDR_48_to_52 (baser);struct its_collection *collection; -u64 val;size_t max_size, filled =0 ;int ret, cte_esz = abi->cte_esz;
@@ -2634,10 +2639,7 @@ static int vgic_its_save_collection_table(struct vgic_its *its)* table is not fully filled, add a last dummy element * with valid bit unset */ - val =0 ; -BUG_ON (cte_esz >sizeof (val)); - ret =kvm_write_guest_lock (its->dev->kvm, gpa, &val, cte_esz); -return ret; +return vgic_its_write_entry_lock (its, gpa,0 , cte_esz); }/**
arch/arm64/kvm/vgic/vgic-mmio-v3.c +6 -1
@@ -555,6 +555,7 @@ static void vgic_mmio_write_invlpi(struct kvm_vcpu *vcpu, unsigned long val) {struct vgic_irq *irq; +u32 intid;/* * If the guest wrote only to the upper 32bit part of the
@@ -566,9 +567,13 @@ static void vgic_mmio_write_invlpi(struct kvm_vcpu *vcpu,if ((addr &4 ) || !vgic_lpis_enabled (vcpu))return ; + intid =lower_32_bits (val); +if (intid <VGIC_MIN_LPI ) +return ; +vgic_set_rdist_busy (vcpu, true); - irq =vgic_get_irq (vcpu->kvm,NULL ,lower_32_bits (val)); + irq =vgic_get_irq (vcpu->kvm,NULL , intid);if (irq) {vgic_its_inv_lpi (vcpu->kvm, irq);vgic_put_irq (vcpu->kvm, irq);
arch/arm64/kvm/vgic/vgic.h +24 -0
@@ -6,6 +6,7 @@#define __KVM_ARM_VGIC_NEW_H__#include <linux/irqchip/arm-gic-common.h> +#include <asm/kvm_mmu.h> #define PRODUCT_ID_KVM 0x4b/* ASCII code K */ #define IMPLEMENTER_ARM 0x43b
@@ -131,6 +132,29 @@ static inline bool vgic_irq_is_multi_sgi(struct vgic_irq *irq)return vgic_irq_get_lr_count (irq) >1 ; } +static inline int vgic_its_read_entry_lock (struct vgic_its *its,gpa_t eaddr, +u64 *eval,unsigned long esize) +{ +struct kvm *kvm = its->dev->kvm; + +if (KVM_BUG_ON (esize !=sizeof (*eval), kvm)) +return -EINVAL ; + +return kvm_read_guest_lock (kvm, eaddr, eval, esize); + +} + +static inline int vgic_its_write_entry_lock (struct vgic_its *its,gpa_t eaddr, +u64 eval,unsigned long esize) +{ +struct kvm *kvm = its->dev->kvm; + +if (KVM_BUG_ON (esize !=sizeof (eval), kvm)) +return -EINVAL ; + +return kvm_write_guest_lock (kvm, eaddr, &eval, esize); +} +/* * This struct provides an intermediate representation of the fields contained * in the GICH_VMCR and ICH_VMCR registers, such that code exporting the GIC
arch/arm64/mm/context.c +2 -2
@@ -32,9 +32,9 @@ static unsigned long nr_pinned_asids;static unsigned long *pinned_asid_map;#define ASID_MASK (~GENMASK(asid_bits - 1, 0)) -#define ASID_FIRST_VERSION (1UL << asid_bits) +#define ASID_FIRST_VERSION (1UL << 16) -#define NUM_USER_ASIDS ASID_FIRST_VERSION +#define NUM_USER_ASIDS (1UL << asid_bits)#define ctxid2asid (asid) ((asid) & ~ASID_MASK)#define asid2ctxid (asid, genid) ((asid) | (genid))
arch/arm64/net/bpf_jit_comp.c +31 -16
73 lines not on this page · raw message
arch/loongarch/Makefile +13 -8
@@ -41,8 +41,8 @@ ld-emul = $(64bit-emul) cflags-y += -mabi=lp64s endif -cflags-y += -G0 -pipe -msoft-float -LDFLAGS_vmlinux += -G0 -static -n -nostdlib +cflags-y += -pipe -msoft-float +LDFLAGS_vmlinux += -static -n -nostdlib # When the assembler supports explicit relocation hint, we must use it. # GCC may have -mexplicit-relocs off by default if it was built with an old
@@ -51,13 +51,18 @@ LDFLAGS_vmlinux += -G0 -static -n -nostdlib # When the assembler does not supports explicit relocation hint, we can't use # it. Disable it if the compiler supports it. # -# If you've seen "unknown reloc hint" message building the kernel and you are -# now wondering why "-mexplicit-relocs" is not wrapped with cc-option: the -# combination of a "new" assembler and "old" compiler is not supported. Either -# upgrade the compiler or downgrade the assembler. +# The combination of a "new" assembler and "old" GCC is not supported, given +# the rarity of this combo and the extra complexity needed to make it work. +# Either upgrade the compiler or downgrade the assembler; the build will error +# out if it is the case (by probing for the model attribute; all supported +# compilers in this case would have support). +# +# Also, -mdirect-extern-access is useful in case of building with explicit +# relocs, for avoiding unnecessary GOT accesses. It is harmless to not have +# support though. ifdef CONFIG_AS_HAS_EXPLICIT_RELOCS -cflags-y += -mexplicit-relocs -KBUILD_CFLAGS_KERNEL += -mdirect-extern-access +cflags-y += $(call cc-option,-mexplicit-relocs) +KBUILD_CFLAGS_KERNEL += $(call cc-option,-mdirect-extern-access) else cflags-y += $(call cc-option,-mno-explicit-relocs) KBUILD_AFLAGS_KERNEL += -Wa,-mla-global-with-pcrel
arch/loongarch/include/asm/hugetlb.h +10 -0
@@ -29,6 +29,16 @@ static inline int prepare_hugepage_range(struct file *file,return 0 ; } +#define __HAVE_ARCH_HUGE_PTE_CLEAR +static inline void huge_pte_clear (struct mm_struct *mm,unsigned long addr, +pte_t *ptep,unsigned long sz) +{ +pte_t clear; + +pte_val (clear) = (unsigned long )invalid_pte_table; +set_pte_at (mm, addr, ptep, clear); +} +#define __HAVE_ARCH_HUGE_PTEP_GET_AND_CLEARstatic inline pte_t huge_ptep_get_and_clear (struct mm_struct *mm,unsigned long addr,pte_t *ptep)
arch/loongarch/include/asm/page.h +1 -4
@@ -102,10 +102,7 @@ static inline int pfn_valid(unsigned long pfn)extern int __virt_addr_valid (volatile void *kaddr);#define virt_addr_valid (kaddr) __virt_addr_valid((volatile void *)(kaddr)) -#define VM_DATA_DEFAULT_FLAGS \ - (VM_READ | VM_WRITE | \ - ((current->personality & READ_IMPLIES_EXEC) ? VM_EXEC : 0) | \ - VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC) +#define VM_DATA_DEFAULT_FLAGS VM_DATA_FLAGS_TSK_EXEC#include <asm-generic/memory_model.h> #include <asm-generic/getorder.h>
arch/loongarch/include/asm/percpu.h +5 -1
@@ -14,7 +14,11 @@* loaded. Tell the compiler this fact when using explicit relocs. */ #if defined(MODULE ) && defined(CONFIG_AS_HAS_EXPLICIT_RELOCS ) -#define PER_CPU_ATTRIBUTES __attribute__((model("extreme"))) +# if __has_attribute (model) +# define PER_CPU_ATTRIBUTES __attribute__((model("extreme"))) +# else +# error compiler support for the model attribute is necessary when a recent assembler is used +# endif #endif /* Use r21 for fast access */
arch/loongarch/mm/tlb.c +1 -1
@@ -279,7 +279,7 @@ void setup_tlb_handler(int cpu)/* Avoid lockdep warning */ rcu_cpu_starting (cpu); -#ifdef CONFIG_NUMA +#if defined(CONFIG_NUMA ) && !defined(CONFIG_PREEMPT_RT ) vec_sz =sizeof (exception_handlers);if (pcpu_handlers[cpu])
arch/loongarch/net/bpf_jit.c +1 -1
@@ -179,7 +179,7 @@ static void __build_epilogue(struct jit_ctx *ctx, bool is_tail_call)if (!is_tail_call) {/* Set return value */ -move_reg (ctx,LOONGARCH_GPR_A0 , regmap[BPF_REG_0 ]); +emit_insn (ctx, addiw,LOONGARCH_GPR_A0 , regmap[BPF_REG_0 ],0 );/* Return to the caller */ emit_insn (ctx, jirl,LOONGARCH_GPR_RA ,LOONGARCH_GPR_ZERO ,0 ); }else {
arch/loongarch/vdso/Makefile +1 -1
@@ -23,7 +23,7 @@ endif cflags-vdso := $(ccflags-vdso) \ -isystem $(shell $(CC) -print-file-name=include) \ $(filter -W%,$(filter-out -Wa$(comma)%,$(KBUILD_CFLAGS))) \ - -O2 -g -fno-strict-aliasing -fno-common -fno-builtin -G0 \ + -std=gnu11 -O2 -g -fno-strict-aliasing -fno-common -fno-builtin \ -fno-stack-protector -fno-jump-tables -DDISABLE_BRANCH_PROFILING \ $(call cc-option, -fno-asynchronous-unwind-tables) \ $(call cc-option, -fno-stack-protector)
arch/m68k/coldfire/device.c +4 -4
@@ -93,7 +93,7 @@ static struct platform_device mcf_uart = { .dev.platform_data = mcf_uart_platform_data, }; -#if IS_ENABLED (CONFIG_FEC ) +#ifdef MCFFEC_BASE0 #ifdef CONFIG_M5441x#define FEC_NAME "enet-fec"
@@ -145,6 +145,7 @@ static struct platform_device mcf_fec0 = { .platform_data = FEC_PDATA, } }; +#endif /* MCFFEC_BASE0 */ #ifdef MCFFEC_BASE1 static struct resource mcf_fec1_resources[] = {
@@ -182,7 +183,6 @@ static struct platform_device mcf_fec1 = { } };#endif /* MCFFEC_BASE1 */ -#endif /* CONFIG_FEC */ #if IS_ENABLED (CONFIG_SPI_COLDFIRE_QSPI )/*
@@ -624,12 +624,12 @@ static struct platform_device mcf_flexcan0 = {static struct platform_device *mcf_devices[]__initdata = { &mcf_uart, -#if IS_ENABLED(CONFIG_FEC) +#ifdef MCFFEC_BASE0 &mcf_fec0, +#endif #ifdef MCFFEC_BASE1 &mcf_fec1, #endif -#endif #if IS_ENABLED(CONFIG_SPI_COLDFIRE_QSPI) &mcf_qspi, #endif
arch/m68k/include/asm/mcfgpio.h +1 -1
@@ -144,7 +144,7 @@ static inline void gpio_free(unsigned gpio)* read-modify-write as well as those controlled by the EPORT and GPIO modules. */ #define MCFGPIO_SCR_START 40 -#elif defined(CONFIGM5441x) +#elif defined(CONFIG_M5441x)/* The m5441x EPORT doesn't have its own GPIO port, uses PORT C */ #define MCFGPIO_SCR_START 0#else
arch/m68k/include/asm/mvme147hw.h +2 -2
@@ -93,8 +93,8 @@ struct pcc_regs {#define M147_SCC_B_ADDR 0xfffe3000#define M147_SCC_PCLK 5000000 -#define MVME147_IRQ_SCSI_PORT (IRQ_USER+0x45) -#define MVME147_IRQ_SCSI_DMA (IRQ_USER+0x46) +#define MVME147_IRQ_SCSI_PORT (IRQ_USER + 5) +#define MVME147_IRQ_SCSI_DMA (IRQ_USER + 6)/* SCC interrupts, for MVME147 */
arch/m68k/kernel/early_printk.c +6 -3
@@ -12,8 +12,9 @@#include <linux/string.h> #include <asm/setup.h> -extern void mvme16x_cons_write (struct console *co, -const char *str,unsigned count); + +#include "../mvme147/mvme147.h" +#include "../mvme16x/mvme16x.h" asmlinkage void __init debug_cons_nputs(const char *s, unsigned n);
@@ -22,7 +23,9 @@ static void __ref debug_cons_write(struct console *c, {#if !(defined(CONFIG_SUN3 ) || defined(CONFIG_M68000 ) || \ defined(CONFIG_COLDFIRE )) -if (MACH_IS_MVME16x) +if (MACH_IS_MVME147 ) +mvme147_scc_write (c, s, n); +else if (MACH_IS_MVME16x)mvme16x_cons_write (c, s, n);else debug_cons_nputs (s, n);
arch/m68k/mvme147/config.c +30 -0
@@ -35,6 +35,7 @@#include <asm/mvme147hw.h> #include <asm/config.h> +#include "mvme147.h" static void mvme147_get_model (char *model);extern void mvme147_sched_init (void );
@@ -188,3 +189,32 @@ int mvme147_hwclk(int op, struct rtc_time *t) }return 0 ; } + +static void scc_delay (void ) +{ + __asm__ __volatile__ ("nop; nop;" ); +} + +static void scc_write (char ch) +{ +do { +scc_delay (); + }while (!(in_8 (M147_SCC_A_ADDR ) &BIT (2 ))); +scc_delay (); +out_8 (M147_SCC_A_ADDR ,8 ); +scc_delay (); +out_8 (M147_SCC_A_ADDR , ch); +} + +void mvme147_scc_write (struct console *co,const char *str,unsigned int count) +{ +unsigned long flags; + +local_irq_save (flags); +while (count--) { +if (*str =='\n' ) +scc_write ('\r' ); +scc_write (*str++); + } +local_irq_restore (flags); +}
arch/m68k/mvme147/mvme147.h new file +6 -0
@@ -0,0 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +struct console ; + +/* config.c */ +void mvme147_scc_write (struct console *co,const char *str,unsigned int count);
arch/m68k/mvme16x/config.c +2 -0
@@ -38,6 +38,8 @@#include <asm/mvme16xhw.h> #include <asm/config.h> +#include "mvme16x.h" +extern t_bdid mvme_bdid;static MK48T08ptr_t volatile rtc = (MK48T08ptr_t )MVME_RTC_BASE ;
arch/m68k/mvme16x/mvme16x.h new file +6 -0
@@ -0,0 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +struct console ; + +/* config.c */ +void mvme16x_cons_write (struct console *co,const char *str,unsigned count);
arch/microblaze/kernel/microblaze_ksyms.c +10 -0
@@ -16,6 +16,7 @@#include <asm/page.h> #include <linux/ftrace.h> #include <linux/uaccess.h> +#include <asm/xilinx_mb_manager.h> #ifdef CONFIG_FUNCTION_TRACER extern void _mcount (void );
@@ -46,3 +47,12 @@ extern void __udivsi3(void);EXPORT_SYMBOL (__udivsi3);extern void __umodsi3 (void );EXPORT_SYMBOL (__umodsi3); + +#ifdef CONFIG_MB_MANAGER +extern void xmb_manager_register (uintptr_t phys_baseaddr,u32 cr_val, +void (*callback)(void *data), +void *priv,void (*reset_callback)(void *data)); +EXPORT_SYMBOL (xmb_manager_register); +extern asmlinkage void xmb_inject_err(void); +EXPORT_SYMBOL (xmb_inject_err); +#endif
arch/mips/boot/dts/loongson/ls7a-pch.dtsi +60 -13
215 lines not on this page · raw message
arch/mips/include/asm/switch_to.h +1 -1
@@ -97,7 +97,7 @@ do { \ } \ } while (0)#else -# define __sanitize_fcr31 (next) +# define __sanitize_fcr31 (next) do { (void) (next); } while (0)#endif /*
arch/parisc/kernel/ftrace.c +1 -1
@@ -87,7 +87,7 @@ int ftrace_enable_ftrace_graph_caller(void)int ftrace_disable_ftrace_graph_caller (void ) { -static_key_enable (&ftrace_graph_enable.key); +static_key_disable (&ftrace_graph_enable.key);return 0 ; }#endif
arch/powerpc/Kconfig +2 -2
@@ -253,8 +253,8 @@ config PPC select HAVE_RSEQ select HAVE_SETUP_PER_CPU_AREA if PPC64 select HAVE_SOFTIRQ_ON_OWN_STACK - select HAVE_STACKPROTECTOR if PPC32 && $(cc-option,-mstack-protector-guard=tls -mstack-protector-guard-reg=r2) - select HAVE_STACKPROTECTOR if PPC64 && $(cc-option,-mstack-protector-guard=tls -mstack-protector-guard-reg=r13) + select HAVE_STACKPROTECTOR if PPC32 && $(cc-option,$(m32-flag) -mstack-protector-guard=tls -mstack-protector-guard-reg=r2 -mstack-protector-guard-offset=0) + select HAVE_STACKPROTECTOR if PPC64 && $(cc-option,$(m64-flag) -mstack-protector-guard=tls -mstack-protector-guard-reg=r13 -mstack-protector-guard-offset=0) select HAVE_STATIC_CALL if PPC32 select HAVE_SYSCALL_TRACEPOINTS select HAVE_VIRT_CPU_ACCOUNTING
arch/powerpc/Makefile +4 -9
@@ -89,13 +89,6 @@ KBUILD_AFLAGS += -m$(BITS) KBUILD_LDFLAGS += -m elf$(BITS)$(LDEMULATION) endif -cflags-$(CONFIG_STACKPROTECTOR) += -mstack-protector-guard=tls -ifdef CONFIG_PPC64 -cflags-$(CONFIG_STACKPROTECTOR) += -mstack-protector-guard-reg=r13 -else -cflags-$(CONFIG_STACKPROTECTOR) += -mstack-protector-guard-reg=r2 -endif - LDFLAGS_vmlinux-y := -Bstatic LDFLAGS_vmlinux-$(CONFIG_RELOCATABLE) := -pie LDFLAGS_vmlinux-$(CONFIG_RELOCATABLE) += -z notext
@@ -383,9 +376,11 @@ prepare: stack_protector_prepare PHONY += stack_protector_prepare stack_protector_prepare: prepare0 ifdef CONFIG_PPC64 - $(eval KBUILD_CFLAGS += -mstack-protector-guard-offset=$(shell awk '{if ($$2 == "PACA_CANARY") print $$3;}' include/generated/asm-offsets.h)) + $(eval KBUILD_CFLAGS += -mstack-protector-guard=tls -mstack-protector-guard-reg=r13 \ + -mstack-protector-guard-offset=$(shell awk '{if ($$2 == "PACA_CANARY") print $$3;}' include/generated/asm-offsets.h)) else - $(eval KBUILD_CFLAGS += -mstack-protector-guard-offset=$(shell awk '{if ($$2 == "TASK_CANARY") print $$3;}' include/generated/asm-offsets.h)) + $(eval KBUILD_CFLAGS += -mstack-protector-guard=tls -mstack-protector-guard-reg=r2 \ + -mstack-protector-guard-offset=$(shell awk '{if ($$2 == "TASK_CANARY") print $$3;}' include/generated/asm-offsets.h)) endif endif
arch/powerpc/include/asm/cache.h +4 -0
@@ -33,6 +33,10 @@#define IFETCH_ALIGN_BYTES (1 << IFETCH_ALIGN_SHIFT) +#ifdef CONFIG_NOT_COHERENT_CACHE +#define ARCH_DMA_MINALIGN L1_CACHE_BYTES +#endif +#if !defined(__ASSEMBLY__)#ifdef CONFIG_PPC64
arch/powerpc/include/asm/dtl.h +2 -2
@@ -1,8 +1,8 @@#ifndef _ASM_POWERPC_DTL_H#define _ASM_POWERPC_DTL_H +#include <linux/rwsem.h> #include <asm/lppaca.h> -#include <linux/spinlock_types.h> /* * Layout of entries in the hypervisor's dispatch trace log buffer.
@@ -35,7 +35,7 @@ struct dtl_entry {#define DTL_LOG_ALL (DTL_LOG_CEDE | DTL_LOG_PREEMPT | DTL_LOG_FAULT)extern struct kmem_cache *dtl_cache; -extern rwlock_t dtl_access_lock; +extern struct rw_semaphore dtl_access_lock;extern void register_dtl_buffer (int cpu);extern void alloc_dtl_buffers (unsigned long *time_limit);
arch/powerpc/include/asm/fadump.h +7 -0
@@ -32,4 +32,11 @@ extern int early_init_dt_scan_fw_dump(unsigned long node, const char *uname, int depth, void *data);extern int fadump_reserve_mem (void );#endif + +#if defined(CONFIG_FA_DUMP ) && defined(CONFIG_CMA ) +void fadump_cma_init (void ); +#else +static inline void fadump_cma_init (void ) { } +#endif +#endif /* _ASM_POWERPC_FADUMP_H */
arch/powerpc/include/asm/page_32.h +0 -4
@@ -12,10 +12,6 @@#define VM_DATA_DEFAULT_FLAGS VM_DATA_DEFAULT_FLAGS32 -#ifdef CONFIG_NOT_COHERENT_CACHE -#define ARCH_DMA_MINALIGN L1_CACHE_BYTES -#endif -#if defined(CONFIG_PPC_256K_PAGES ) || \ (defined(CONFIG_PPC_8xx) && defined(CONFIG_PPC_16K_PAGES ))#define PTE_SHIFT (PAGE_SHIFT - PTE_T_LOG2 - 2)/* 1/4 of a page */
arch/powerpc/include/asm/sstep.h +0 -5
@@ -173,9 +173,4 @@ int emulate_step(struct pt_regs *regs, ppc_inst_t instr);*/ extern int emulate_loadstore (struct pt_regs *regs,struct instruction_op *op); -extern void emulate_vsx_load (struct instruction_op *op,union vsx_reg *reg, -const void *mem,bool cross_endian); -extern void emulate_vsx_store (struct instruction_op *op, -const union vsx_reg *reg,void *mem, -bool cross_endian);extern int emulate_dcbz (unsigned long ea,struct pt_regs *regs);
arch/powerpc/include/asm/vdso.h +1 -0
@@ -25,6 +25,7 @@ int vdso_getcpu_init(void);#ifdef __VDSO64__#define V_FUNCTION_BEGIN (name) \ .globl name; \ + .type name,@function; \ name: \#define V_FUNCTION_END (name) \
arch/powerpc/kernel/fadump.c +7 -16
@@ -80,27 +80,23 @@ static struct cma *fadump_cma;* But for some reason even if it fails we still have the memory reservation * with us and we can still continue doing fadump. */ -static int __init fadump_cma_init (void ) +void __init fadump_cma_init (void ) {unsigned long long base, size;int rc; -if (!fw_dump.fadump_enabled) -return 0 ; - +if (!fw_dump.fadump_supported || !fw_dump.fadump_enabled || + fw_dump.dump_active) +return ;/* * Do not use CMA if user has provided fadump=nocma kernel parameter. -* Return 1 to continue with fadump old behaviour. */ -if (fw_dump.nocma) -return 1 ; +if (fw_dump.nocma || !fw_dump.boot_memory_size) +return ; base = fw_dump.reserve_dump_area_start; size = fw_dump.boot_memory_size; -if (!size) -return 0 ; - rc =cma_init_reserved_mem (base, size,0 ,"fadump_cma" , &fadump_cma);if (rc) {pr_err ("Failed to init cma area for firmware-assisted dump,%d\n" , rc);
@@ -110,7 +106,7 @@ static int __init fadump_cma_init(void)* blocked from production system usage. Hence return 1, * so that we can continue with fadump. */ -return 1 ; +return ; }/*
@@ -127,10 +123,7 @@ static int __init fadump_cma_init(void)cma_get_size (fadump_cma), (unsigned long )cma_get_base (fadump_cma) >>20 , fw_dump.reserve_dump_area_size); - return 1; } -#else -static int __init fadump_cma_init (void ) {return 1 ; }#endif /* CONFIG_CMA */ /* Scan the Firmware Assisted dump configuration details. */
@@ -647,8 +640,6 @@ int __init fadump_reserve_mem(void)pr_info ("Reserved %lldMB of memory at %#016llx (System RAM: %lldMB)\n" , (size >>20 ), base, (memblock_phys_mem_size () >>20 )); - - ret =fadump_cma_init (); }return ret;
arch/powerpc/kernel/prom_init.c +27 -2
@@ -2924,7 +2924,7 @@ static void __init fixup_device_tree_chrp(void)#endif #if defined(CONFIG_PPC64 ) && defined(CONFIG_PPC_PMAC ) -static void __init fixup_device_tree_pmac (void ) +static void __init fixup_device_tree_pmac64 (void ) {phandle u3, i2c, mpic;u32 u3_rev;
@@ -2964,7 +2964,31 @@ static void __init fixup_device_tree_pmac(void) &parent, sizeof(parent)); }#else -#define fixup_device_tree_pmac () +#define fixup_device_tree_pmac64 () +#endif + +#ifdef CONFIG_PPC_PMAC +static void __init fixup_device_tree_pmac (void ) +{ +__be32 val =1 ; +char type[8 ]; +phandle node; + +// Some pmacs are missing #size-cells on escc nodes +for (node =0 ;prom_next_node (&node); ) { + type[0 ] ='\0' ; +prom_getprop (node,"device_type" , type,sizeof (type)); +if (prom_strcmp (type,"escc" )) +continue ; + +if (prom_getproplen (node,"#size-cells" ) !=PROM_ERROR ) +continue ; + +prom_setprop (node,NULL ,"#size-cells" , &val,sizeof (val)); + } +} +#else +static inline void fixup_device_tree_pmac (void ) { }#endif #ifdef CONFIG_PPC_EFIKA
@@ -3189,6 +3213,7 @@ static void __init fixup_device_tree(void)fixup_device_tree_maple_memory_controller ();fixup_device_tree_chrp ();fixup_device_tree_pmac (); +fixup_device_tree_pmac64 ();fixup_device_tree_efika ();fixup_device_tree_pasemi (); }
arch/powerpc/kernel/setup-common.c +4 -2
@@ -982,9 +982,11 @@ void __init setup_arch(char **cmdline_p)initmem_init ();/* -* Reserve large chunks of memory for use by CMA for KVM and hugetlb. These must -* be called after initmem_init(), so that pageblock_order is initialised. +* Reserve large chunks of memory for use by CMA for fadump, KVM and +* hugetlb. These must be called after initmem_init(), so that +* pageblock_order is initialised. */ +fadump_cma_init ();kvm_cma_reserve ();gigantic_hugetlb_cma_reserve ();
arch/powerpc/kernel/setup_64.c +1 -0
@@ -924,6 +924,7 @@ static int __init disable_hardlockup_detector(void)hardlockup_detector_disable ();#else if (firmware_has_feature (FW_FEATURE_LPAR )) { +check_kvm_guest ();if (is_kvm_guest ())hardlockup_detector_disable (); }
arch/powerpc/kernel/vdso/Makefile +33 -24
83 lines not on this page · raw message
arch/powerpc/kexec/file_load_64.c +7 -2
@@ -911,13 +911,18 @@ int setup_purgatory_ppc64(struct kimage *image, const void *slave_code,if (dn) {u64 val; -of_property_read_u64 (dn,"opal-base-address" , &val); + ret =of_property_read_u64 (dn,"opal-base-address" , &val); +if (ret) + goto out; + ret =kexec_purgatory_get_set_symbol (image,"opal_base" , &val,sizeof (val), false);if (ret) goto out; -of_property_read_u64 (dn,"opal-entry-address" , &val); + ret =of_property_read_u64 (dn,"opal-entry-address" , &val); +if (ret) + goto out; ret =kexec_purgatory_get_set_symbol (image,"opal_entry" , &val,sizeof (val), false); }
arch/powerpc/kvm/book3s_hv.c +9 -1
@@ -4062,6 +4062,15 @@ static int kvmhv_vcpu_entry_p9_nested(struct kvm_vcpu *vcpu, u64 time_limit, uns } hvregs.hdec_expiry = time_limit; +/* +* hvregs has the doorbell status, so zero it here which +* enables us to receive doorbells when H_ENTER_NESTED is +* in progress for this vCPU +*/ + +if (vcpu->arch.doorbell_request) + vcpu->arch.doorbell_request =0 ; +/* * When setting DEC, we must always deal with irq_work_raise * via NMI vs setting DEC. The problem occurs right as we
@@ -4644,7 +4653,6 @@ int kvmhv_run_single_vcpu(struct kvm_vcpu *vcpu, u64 time_limit, lpcr |=LPCR_MER ; } }else if (vcpu->arch.pending_exceptions || - vcpu->arch.doorbell_request ||xive_interrupt_pending (vcpu)) { vcpu->arch.ret =RESUME_HOST ; goto out;
arch/powerpc/kvm/book3s_hv_nested.c +10 -4
@@ -32,7 +32,7 @@ void kvmhv_save_hv_regs(struct kvm_vcpu *vcpu, struct hv_guest_state *hr)struct kvmppc_vcore *vc = vcpu->arch.vcore; hr->pcr = vc->pcr |PCR_MASK ; - hr->dpdes = vc->dpdes; + hr->dpdes = vcpu->arch.doorbell_request; hr->hfscr = vcpu->arch.hfscr; hr->tb_offset = vc->tb_offset; hr->dawr0 = vcpu->arch.dawr0;
@@ -105,7 +105,7 @@ static void save_hv_return_state(struct kvm_vcpu *vcpu, {struct kvmppc_vcore *vc = vcpu->arch.vcore; - hr->dpdes = vc->dpdes; + hr->dpdes = vcpu->arch.doorbell_request; hr->purr = vcpu->arch.purr; hr->spurr = vcpu->arch.spurr; hr->ic = vcpu->arch.ic;
@@ -143,7 +143,7 @@ static void restore_hv_regs(struct kvm_vcpu *vcpu, const struct hv_guest_state *struct kvmppc_vcore *vc = vcpu->arch.vcore; vc->pcr = hr->pcr |PCR_MASK ; - vc->dpdes = hr->dpdes; + vcpu->arch.doorbell_request = hr->dpdes; vcpu->arch.hfscr = hr->hfscr; vcpu->arch.dawr0 = hr->dawr0; vcpu->arch.dawrx0 = hr->dawrx0;
@@ -170,7 +170,13 @@ void kvmhv_restore_hv_return_state(struct kvm_vcpu *vcpu, {struct kvmppc_vcore *vc = vcpu->arch.vcore; - vc->dpdes = hr->dpdes; +/* +* This L2 vCPU might have received a doorbell while H_ENTER_NESTED was being handled. +* Make sure we preserve the doorbell if it was either: +* a) Sent after H_ENTER_NESTED was called on this vCPU (arch.doorbell_request would be 1) +* b) Doorbell was not handled and L2 exited for some other reason (hr->dpdes would be 1) +*/ + vcpu->arch.doorbell_request = vcpu->arch.doorbell_request | hr->dpdes; vcpu->arch.hfscr = hr->hfscr; vcpu->arch.purr = hr->purr; vcpu->arch.spurr = hr->spurr;
arch/powerpc/lib/sstep.c +4 -8
@@ -780,8 +780,8 @@ static nokprobe_inline int emulate_stq(struct pt_regs *regs, unsigned long ea,#endif /* __powerpc64 */ #ifdef CONFIG_VSX -void emulate_vsx_load (struct instruction_op *op,union vsx_reg *reg, -const void *mem,bool rev) +static nokprobe_inline void emulate_vsx_load(struct instruction_op *op, union vsx_reg *reg, +const void *mem,bool rev) {int size, read_size;int i, j;
@@ -863,11 +863,9 @@ void emulate_vsx_load(struct instruction_op *op, union vsx_reg *reg,break ; } } -EXPORT_SYMBOL_GPL (emulate_vsx_load); -NOKPROBE_SYMBOL (emulate_vsx_load); -void emulate_vsx_store (struct instruction_op *op,const union vsx_reg *reg, -void *mem,bool rev) +static nokprobe_inline void emulate_vsx_store(struct instruction_op *op, const union vsx_reg *reg, +void *mem,bool rev) {int size, write_size;int i, j;
@@ -955,8 +953,6 @@ void emulate_vsx_store(struct instruction_op *op, const union vsx_reg *reg,break ; } } -EXPORT_SYMBOL_GPL (emulate_vsx_store); -NOKPROBE_SYMBOL (emulate_vsx_store); static nokprobe_inline int do_vsx_load(struct instruction_op *op, unsigned long ea, struct pt_regs *regs,
arch/powerpc/mm/fault.c +8 -2
@@ -431,10 +431,16 @@ static int ___do_page_fault(struct pt_regs *regs, unsigned long address,/* * The kernel should never take an execute fault nor should it * take a page fault to a kernel address or a page fault to a user -* address outside of dedicated places +* address outside of dedicated places. +* +* Rather than kfence directly reporting false negatives, search whether +* the NIP belongs to the fixup table for cases where fault could come +* from functions like copy_from_kernel_nofault(). */ if (unlikely (!is_user &&bad_kernel_fault (regs, error_code, address, is_write))) { -if (kfence_handle_page_fault (address, is_write, regs)) +if (is_kfence_address ((void *)address) && + !search_exception_tables (instruction_pointer (regs)) && +kfence_handle_page_fault (address, is_write, regs))return 0 ;return SIGSEGV ;
arch/powerpc/platforms/pseries/dtl.c +4 -4
@@ -191,7 +191,7 @@ static int dtl_enable(struct dtl *dtl)return -EBUSY ;/* ensure there are no other conflicting dtl users */ -if (!read_trylock (&dtl_access_lock)) +if (!down_read_trylock (&dtl_access_lock))return -EBUSY ; n_entries = dtl_buf_entries;
@@ -199,7 +199,7 @@ static int dtl_enable(struct dtl *dtl)if (!buf) {printk (KERN_WARNING "%s: buffer alloc failed for cpu %d\n" , __func__, dtl->cpu); -read_unlock (&dtl_access_lock); +up_read (&dtl_access_lock);return -ENOMEM ; }
@@ -217,7 +217,7 @@ static int dtl_enable(struct dtl *dtl)spin_unlock (&dtl->lock);if (rc) { -read_unlock (&dtl_access_lock); +up_read (&dtl_access_lock);kmem_cache_free (dtl_cache, buf); }
@@ -232,7 +232,7 @@ static void dtl_disable(struct dtl *dtl) dtl->buf =NULL ; dtl->buf_entries =0 ;spin_unlock (&dtl->lock); -read_unlock (&dtl_access_lock); +up_read (&dtl_access_lock); }/* file interface */
arch/powerpc/platforms/pseries/lpar.c +4 -4
@@ -167,7 +167,7 @@ struct vcpu_dispatch_data {*/ #define NR_CPUS_H NR_CPUS -DEFINE_RWLOCK (dtl_access_lock); +DECLARE_RWSEM (dtl_access_lock); static DEFINE_PER_CPU(struct vcpu_dispatch_data, vcpu_disp_data); static DEFINE_PER_CPU(u64, dtl_entry_ridx); static DEFINE_PER_CPU(struct dtl_worker, dtl_workers);
@@ -461,7 +461,7 @@ static int dtl_worker_enable(unsigned long *time_limit) {int rc =0 , state; -if (!write_trylock (&dtl_access_lock)) { +if (!down_write_trylock (&dtl_access_lock)) { rc = -EBUSY ; goto out; }
@@ -477,7 +477,7 @@ static int dtl_worker_enable(unsigned long *time_limit)pr_err ("vcpudispatch_stats: unable to setup workqueue for DTL processing\n" );free_dtl_buffers (time_limit);reset_global_dtl_mask (); -write_unlock (&dtl_access_lock); +up_write (&dtl_access_lock); rc = -EINVAL ; goto out; }
@@ -492,7 +492,7 @@ static void dtl_worker_disable(unsigned long *time_limit)cpuhp_remove_state (dtl_worker_state);free_dtl_buffers (time_limit);reset_global_dtl_mask (); -write_unlock (&dtl_access_lock); +up_write (&dtl_access_lock); } static ssize_t vcpudispatch_stats_write(struct file *file, const char __user *p,
arch/s390/kernel/entry.S +4 -0
@@ -484,9 +484,13 @@ ENTRY(\name) ENDPROC(\name) .endm + .section .irqentry.text, "ax" + INT_HANDLER ext_int_handler,__LC_EXT_OLD_PSW,do_ext_irq INT_HANDLER io_int_handler,__LC_IO_OLD_PSW,do_io_irq + .section .kprobes.text, "ax" + /* * Load idle PSW. */
arch/s390/kernel/kprobes.c +6 -0
@@ -549,6 +549,12 @@ int __init arch_init_kprobes(void)return 0 ; } +int __init arch_populate_kprobe_blacklist (void ) +{ +return kprobe_add_area_blacklist ((unsigned long )__irqentry_text_start, + (unsigned long )__irqentry_text_end); +} +int arch_trampoline_kprobe (struct kprobe *p) {return 0 ;
arch/s390/kernel/perf_cpum_sf.c +3 -1
@@ -1896,7 +1896,9 @@ static void cpumsf_pmu_stop(struct perf_event *event, int flags) event->hw.state |=PERF_HES_STOPPED ;if ((flags &PERF_EF_UPDATE ) && !(event->hw.state &PERF_HES_UPTODATE )) { -hw_perf_event_update (event,1 ); +/* CPU hotplug off removes SDBs. No samples to extract. */ +if (cpuhw->flags &PMU_F_RESERVED ) +hw_perf_event_update (event,1 ); event->hw.state |=PERF_HES_UPTODATE ; }perf_pmu_enable (event->pmu);
arch/s390/kernel/syscalls/Makefile +1 -1
@@ -12,7 +12,7 @@ kapi-hdrs-y := $(kapi)/unistd_nr.h uapi-hdrs-y := $(uapi)/unistd_32.h uapi-hdrs-y += $(uapi)/unistd_64.h -targets += $(addprefix ../../../,$(gen-y) $(kapi-hdrs-y) $(uapi-hdrs-y)) +targets += $(addprefix ../../../../,$(gen-y) $(kapi-hdrs-y) $(uapi-hdrs-y)) PHONY += kapi uapi
arch/sh/kernel/cpu/proc.c +1 -1
@@ -132,7 +132,7 @@ static int show_cpuinfo(struct seq_file *m, void *v)static void *c_start (struct seq_file *m,loff_t *pos) { -return *pos <NR_CPUS ? cpu_data + *pos :NULL ; +return *pos < nr_cpu_ids ? cpu_data + *pos :NULL ; }static void *c_next (struct seq_file *m,void *v,loff_t *pos) {
arch/um/drivers/net_kern.c +1 -1
@@ -336,7 +336,7 @@ static struct platform_driver uml_net_driver = {static void net_device_release (struct device *dev) { -struct uml_net *device =dev_get_drvdata (dev); + struct uml_net *device = container_of(dev, struct uml_net, pdev.dev);struct net_device *netdev = device->dev;struct uml_net_private *lp =netdev_priv (netdev);
arch/um/drivers/ubd_kern.c +1 -1
@@ -799,7 +799,7 @@ static int ubd_open_dev(struct ubd *ubd_dev)static void ubd_device_release (struct device *dev) { -struct ubd *ubd_dev =dev_get_drvdata (dev); + struct ubd *ubd_dev = container_of(dev, struct ubd, pdev.dev);blk_mq_free_tag_set (&ubd_dev->tag_set); *ubd_dev = ((struct ubd )DEFAULT_UBD );
arch/um/drivers/vector_kern.c +2 -1
@@ -823,7 +823,8 @@ static struct platform_driver uml_net_driver = {static void vector_device_release (struct device *dev) { -struct vector_device *device =dev_get_drvdata (dev); +struct vector_device *device = + container_of(dev, struct vector_device, pdev.dev);struct net_device *netdev = device->dev;list_del (&device->list);
arch/um/kernel/physmem.c +3 -3
@@ -80,10 +80,10 @@ void __init setup_physmem(unsigned long start, unsigned long reserve_end, unsigned long len, unsigned long long highmem) {unsigned long reserve = reserve_end - start; -long map_size = len - reserve; +unsigned long map_size = len - reserve;int err; -if (map_size <=0 ) { +if (len <= reserve) {os_warn ("Too few physical memory! Needed=%lu, given=%lu\n" , reserve, len);exit (1 );
@@ -94,7 +94,7 @@ void __init setup_physmem(unsigned long start, unsigned long reserve_end, err =os_map_memory ((void *) reserve_end, physmem_fd, reserve, map_size,1 ,1 ,1 );if (err <0 ) { -os_warn ("setup_physmem - mapping %ld bytes of memory at 0x%p " +os_warn ("setup_physmem - mapping %lu bytes of memory at 0x%p " "failed - errno = %d\n" , map_size, (void *) reserve_end, err);exit (1 );
arch/um/kernel/process.c +1 -1
@@ -397,6 +397,6 @@ int elf_core_copy_fpregs(struct task_struct *t, elf_fpregset_t *fpu) {int cpu =current_thread_info ()->cpu; -return save_i387_registers (userspace_pid[cpu], (unsigned long *) fpu); +return save_i387_registers (userspace_pid[cpu], (unsigned long *) fpu) ==0 ; }
arch/um/kernel/sysrq.c +1 -1
@@ -53,5 +53,5 @@ void show_stack(struct task_struct *task, unsigned long *stack, }printk ("%sCall Trace:\n" , loglvl); -dump_trace (current, &stackops, (void *)loglvl); +dump_trace (task ?: current, &stackops, (void *)loglvl); }
arch/x86/crypto/aegis128-aesni-asm.S +15 -14
@@ -21,7 +21,7 @@ #define T1 %xmm7 #define STATEP %rdi -#define LEN %rsi +#define LEN %esi #define SRC %rdx #define DST %rcx
@@ -76,32 +76,32 @@ SYM_FUNC_START_LOCAL(__load_partial) xor %r9d, %r9d pxor MSG, MSG - mov LEN, %r8 + mov LEN, %r8d and $0x1, %r8 jz .Lld_partial_1 - mov LEN, %r8 + mov LEN, %r8d and $0x1E, %r8 add SRC, %r8 mov (%r8), %r9b .Lld_partial_1: - mov LEN, %r8 + mov LEN, %r8d and $0x2, %r8 jz .Lld_partial_2 - mov LEN, %r8 + mov LEN, %r8d and $0x1C, %r8 add SRC, %r8 shl $0x10, %r9 mov (%r8), %r9w .Lld_partial_2: - mov LEN, %r8 + mov LEN, %r8d and $0x4, %r8 jz .Lld_partial_4 - mov LEN, %r8 + mov LEN, %r8d and $0x18, %r8 add SRC, %r8 shl $32, %r9
@@ -111,11 +111,11 @@ SYM_FUNC_START_LOCAL(__load_partial) .Lld_partial_4: movq %r9, MSG - mov LEN, %r8 + mov LEN, %r8d and $0x8, %r8 jz .Lld_partial_8 - mov LEN, %r8 + mov LEN, %r8d and $0x10, %r8 add SRC, %r8 pslldq $8, MSG
@@ -139,7 +139,7 @@ SYM_FUNC_END(__load_partial) * %r10 */ SYM_FUNC_START_LOCAL(__store_partial) - mov LEN, %r8 + mov LEN, %r8d mov DST, %r9 movq T0, %r10
@@ -677,7 +677,7 @@ SYM_TYPED_FUNC_START(crypto_aegis128_aesni_dec_tail) call __store_partial /* mask with byte count: */ - movq LEN, T0 + movd LEN, T0 punpcklbw T0, T0 punpcklbw T0, T0 punpcklbw T0, T0
@@ -702,7 +702,8 @@ SYM_FUNC_END(crypto_aegis128_aesni_dec_tail) /* * void crypto_aegis128_aesni_final(void *state, void *tag_xor, - * u64 assoclen, u64 cryptlen); + * unsigned int assoclen, + * unsigned int cryptlen); */ SYM_FUNC_START(crypto_aegis128_aesni_final) FRAME_BEGIN
@@ -715,8 +716,8 @@ SYM_FUNC_START(crypto_aegis128_aesni_final) movdqu 0x40(STATEP), STATE4 /* prepare length block: */ - movq %rdx, MSG - movq %rcx, T0 + movd %edx, MSG + movd %ecx, T0 pslldq $8, T0 pxor T0, MSG psllq $3, MSG /* multiply by 8 (to get bit count) */
arch/x86/events/amd/core.c +8 -2
@@ -881,11 +881,12 @@ static int amd_pmu_handle_irq(struct pt_regs *regs)static int amd_pmu_v2_handle_irq (struct pt_regs *regs) {struct cpu_hw_events *cpuc =this_cpu_ptr (&cpu_hw_events); +static atomic64_t status_warned =ATOMIC64_INIT (0 ); +u64 reserved, status, mask, new_bits, prev_bits;struct perf_sample_data data;struct hw_perf_event *hwc;struct perf_event *event;int handled =0 , idx; -u64 reserved, status, mask;bool pmu_enabled;/*
@@ -952,7 +953,12 @@ static int amd_pmu_v2_handle_irq(struct pt_regs *regs)* the corresponding PMCs are expected to be inactive according to the * active_mask */ -WARN_ON (status >0 ); +if (status >0 ) { + prev_bits =atomic64_fetch_or (status, &status_warned); +// A new bit was set for the very first time. + new_bits = status & ~prev_bits; +WARN (new_bits,"New overflows for inactive PMCs: %llx\n" , new_bits); + }/* Clear overflow and freeze bits */ amd_pmu_ack_global_status (~status);
arch/x86/events/intel/core.c +33 -1
@@ -5409,8 +5409,22 @@ default_is_visible(struct kobject *kobj, struct attribute *attr, int i)return attr->mode; } +static umode_t +td_is_visible (struct kobject *kobj,struct attribute *attr,int i) +{ +/* +* Hide the perf metrics topdown events +* if the feature is not enumerated. +*/ +if (x86_pmu.num_topdown_events) +return x86_pmu.intel_cap.perf_metrics ? attr->mode :0 ; + +return attr->mode; +} +static struct attribute_group group_events_td = { .name ="events" , + .is_visible = td_is_visible, };static struct attribute_group group_events_mem = {
@@ -5587,9 +5601,27 @@ static umode_t hybrid_format_is_visible(struct kobject *kobj,return (cpu >=0 ) && (pmu->cpu_type & pmu_attr->pmu_type) ? attr->mode :0 ; } +static umode_t hybrid_td_is_visible (struct kobject *kobj, +struct attribute *attr,int i) +{ +struct device *dev =kobj_to_dev (kobj); +struct x86_hybrid_pmu *pmu = + container_of(dev_get_drvdata(dev), struct x86_hybrid_pmu, pmu); + +if (!is_attr_for_this_pmu (kobj, attr)) +return 0 ; + + +/* Only the big core supports perf metrics */ +if (pmu->cpu_type == hybrid_big) +return pmu->intel_cap.perf_metrics ? attr->mode :0 ; + +return attr->mode; +} +static struct attribute_group hybrid_group_events_td = { .name ="events" , - .is_visible = hybrid_events_is_visible, + .is_visible = hybrid_td_is_visible, };static struct attribute_group hybrid_group_events_mem = {
arch/x86/events/intel/pt.c +8 -3
@@ -827,11 +827,13 @@ static void pt_buffer_advance(struct pt_buffer *buf) buf->cur_idx++;if (buf->cur_idx == buf->cur->last) { -if (buf->cur == buf->last) +if (buf->cur == buf->last) { buf->cur = buf->first; -else + buf->wrapped = true; + }else { buf->cur = list_entry(buf->cur->list.next, struct topa, list); + } buf->cur_idx =0 ; } }
@@ -845,8 +847,11 @@ static void pt_buffer_advance(struct pt_buffer *buf)static void pt_update_head (struct pt *pt) {struct pt_buffer *buf =perf_get_aux (&pt->handle); +bool wrapped = buf->wrapped;u64 topa_idx, base, old; + buf->wrapped = false; +if (buf->single) {local_set (&buf->data_size, buf->output_off);return ;
@@ -864,7 +869,7 @@ static void pt_update_head(struct pt *pt) }else { old = (local64_xchg (&buf->head, base) & ((buf->nr_pages <<PAGE_SHIFT ) -1 )); -if (base < old) +if (base < old || (base == old && wrapped)) base += buf->nr_pages <<PAGE_SHIFT ;local_add (base - old, &buf->data_size);
arch/x86/events/intel/pt.h +2 -0
@@ -65,6 +65,7 @@ struct pt_pmu {* @head: logical write offset inside the buffer * @snapshot: if this is for a snapshot/overwrite counter * @single: use Single Range Output instead of ToPA +* @wrapped: buffer advance wrapped back to the first topa table * @stop_pos: STOP topa entry index * @intr_pos: INT topa entry index * @stop_te: STOP topa entry pointer
@@ -82,6 +83,7 @@ struct pt_buffer {local64_t head;bool snapshot;bool single; +bool wrapped;long stop_pos, intr_pos;struct topa_entry *stop_te, *intr_te;void **data_pages;
arch/x86/include/asm/amd_nb.h +4 -1
@@ -116,7 +116,10 @@ static inline bool amd_gart_present(void)#define amd_nb_num (x) 0#define amd_nb_has_feature (x) false -#define node_to_amd_nb (x) NULL +static inline struct amd_northbridge *node_to_amd_nb (int node) +{ +return NULL ; +}#define amd_gart_present (x) false#endif
arch/x86/include/asm/barrier.h +0 -18
@@ -81,22 +81,4 @@ do { \#include <asm-generic/barrier.h> -/* -* Make previous memory operations globally visible before -* a WRMSR. -* -* MFENCE makes writes visible, but only affects load/store -* instructions. WRMSR is unfortunately not a load/store -* instruction and is unaffected by MFENCE. The LFENCE ensures -* that the WRMSR is not reordered. -* -* Most WRMSRs are full serializing instructions themselves and -* do not require this barrier. This is only required for the -* IA32_TSC_DEADLINE and X2APIC MSRs. -*/ -static inline void weak_wrmsr_fence (void ) -{ - asmvolatile ("mfence; lfence" : : :"memory" ); -} -#endif /* _ASM_X86_BARRIER_H */
arch/x86/include/asm/cpufeatures.h +1 -0
@@ -311,6 +311,7 @@#define X86_FEATURE_SRSO (11*32+24)/* "" AMD BTB untrain RETs */ #define X86_FEATURE_SRSO_ALIAS (11*32+25)/* "" AMD BTB untrain RETs through aliasing */ #define X86_FEATURE_IBPB_ON_VMEXIT (11*32+26)/* "" Issue an IBPB only on VMEXIT */ +#define X86_FEATURE_APIC_MSRS_FENCE (11*32+27)/* "" IA32_TSC_DEADLINE and X2APIC MSRs need fencing */ /* Intel-defined CPU features, CPUID level 0x00000007:1 (EAX), word 12 */ #define X86_FEATURE_AVX_VNNI (12*32+ 4)/* AVX VNNI instructions */
arch/x86/include/asm/processor.h +18 -0
@@ -868,4 +868,22 @@ bool arch_is_platform_page(u64 paddr);extern bool gds_ucode_mitigated (void ); +/* +* Make previous memory operations globally visible before +* a WRMSR. +* +* MFENCE makes writes visible, but only affects load/store +* instructions. WRMSR is unfortunately not a load/store +* instruction and is unaffected by MFENCE. The LFENCE ensures +* that the WRMSR is not reordered. +* +* Most WRMSRs are full serializing instructions themselves and +* do not require this barrier. This is only required for the +* IA32_TSC_DEADLINE and X2APIC MSRs. +*/ +static inline void weak_wrmsr_fence (void ) +{ +alternative ("mfence; lfence" ,"" ,ALT_NOT (X86_FEATURE_APIC_MSRS_FENCE )); +} +#endif /* _ASM_X86_PROCESSOR_H */
arch/x86/kernel/cpu/amd.c +3 -0
@@ -1133,6 +1133,9 @@ static void init_amd(struct cpuinfo_x86 *c)if (!cpu_has (c,X86_FEATURE_HYPERVISOR ) &&cpu_has_amd_erratum (c, amd_erratum_1485))msr_set_bit (MSR_ZEN4_BP_CFG ,MSR_ZEN4_BP_CFG_SHARED_BTB_FIX_BIT ); + +/* AMD CPUs don't need fencing after x2APIC/TSC_DEADLINE MSR writes. */ +clear_cpu_cap (c,X86_FEATURE_APIC_MSRS_FENCE ); }#ifdef CONFIG_X86_32
arch/x86/kernel/cpu/common.c +7 -0
@@ -1883,6 +1883,13 @@ static void identify_cpu(struct cpuinfo_x86 *c) c->apicid = apic->phys_pkg_id (c->initial_apicid,0 );#endif + +/* +* Set default APIC and TSC_DEADLINE MSR fencing flag. AMD and +* Hygon will clear it in ->c_init() below. +*/ +set_cpu_cap (c,X86_FEATURE_APIC_MSRS_FENCE ); +/* * Vendor-specific initialization. In this section we * canonicalize the feature flags, meaning if there are
arch/x86/kernel/cpu/hygon.c +3 -0
@@ -347,6 +347,9 @@ static void init_hygon(struct cpuinfo_x86 *c)set_cpu_bug (c,X86_BUG_SYSRET_SS_ATTRS );check_null_seg_clears_base (c); + +/* Hygon CPUs don't need fencing after x2APIC/TSC_DEADLINE MSR writes. */ +clear_cpu_cap (c,X86_FEATURE_APIC_MSRS_FENCE ); }static void cpu_detect_tlb_hygon (struct cpuinfo_x86 *c)
arch/x86/kvm/mmu/mmu.c +4 -1
@@ -4245,6 +4245,7 @@ static int direct_page_fault(struct kvm_vcpu *vcpu, struct kvm_page_fault *faultbool is_tdp_mmu_fault =is_tdp_mmu (vcpu->arch.mmu);unsigned long mmu_seq; +kvm_pfn_t orig_pfn;int r; fault->gfn = fault->addr >>PAGE_SHIFT ;
@@ -4272,6 +4273,8 @@ static int direct_page_fault(struct kvm_vcpu *vcpu, struct kvm_page_fault *faultif (r !=RET_PF_CONTINUE )return r; + orig_pfn = fault->pfn; + r =RET_PF_RETRY ;if (is_tdp_mmu_fault)
@@ -4296,7 +4299,7 @@ static int direct_page_fault(struct kvm_vcpu *vcpu, struct kvm_page_fault *faultread_unlock (&vcpu->kvm->mmu_lock); else write_unlock(&vcpu->kvm->mmu_lock); -kvm_release_pfn_clean (fault->pfn); +kvm_release_pfn_clean (orig_pfn);return r; }
arch/x86/kvm/mmu/paging_tmpl.h +4 -1
@@ -790,6 +790,7 @@ FNAME(is_self_change_mapping)(struct kvm_vcpu *vcpu,static int FNAME (page_fault )(struct kvm_vcpu *vcpu,struct kvm_page_fault *fault) {struct guest_walker walker; +kvm_pfn_t orig_pfn;int r;unsigned long mmu_seq;bool is_self_change_mapping;
@@ -868,6 +869,8 @@ static int FNAME(page_fault)(struct kvm_vcpu *vcpu, struct kvm_page_fault *fault walker.pte_access &= ~ACC_EXEC_MASK ; } + orig_pfn = fault->pfn; + r =RET_PF_RETRY ;write_lock (&vcpu->kvm->mmu_lock);
@@ -881,7 +884,7 @@ static int FNAME(page_fault)(struct kvm_vcpu *vcpu, struct kvm_page_fault *fault out_unlock:write_unlock (&vcpu->kvm->mmu_lock); -kvm_release_pfn_clean (fault->pfn); +kvm_release_pfn_clean (orig_pfn);return r; }
arch/x86/kvm/mmu/spte.c +13 -5
@@ -194,12 +194,20 @@ bool make_spte(struct kvm_vcpu *vcpu, struct kvm_mmu_page *sp, spte |=PT_WRITABLE_MASK | shadow_mmu_writable_mask;/* -* Optimization: for pte sync, if spte was writable the hash -* lookup is unnecessary (and expensive). Write protection -* is responsibility of kvm_mmu_get_page / kvm_mmu_sync_roots. -* Same reasoning can be applied to dirty page accounting. +* When overwriting an existing leaf SPTE, and the old SPTE was +* writable, skip trying to unsync shadow pages as any relevant +* shadow pages must already be unsync, i.e. the hash lookup is +* unnecessary (and expensive). +* +* The same reasoning applies to dirty page/folio accounting; +* KVM will mark the folio dirty using the old SPTE, thus +* there's no need to immediately mark the new SPTE as dirty. +* +* Note, both cases rely on KVM not changing PFNs without first +* zapping the old SPTE, which is guaranteed by both the shadow +* MMU and the TDP MMU. */ -if (is_writable_pte (old_spte)) +if (is_last_spte (old_spte, level) &&is_writable_pte (old_spte)) goto out;/*
arch/x86/pci/acpi.c +119 -0
125 lines not on this page · raw message
block/blk-merge.c +9 -1
@@ -247,6 +247,14 @@ static bool bvec_split_segs(struct queue_limits *lim, const struct bio_vec *bv,return len >0 || bv->bv_len > max_len; } +static unsigned int bio_split_alignment (struct bio *bio, +const struct queue_limits *lim) +{ +if (op_is_write (bio_op (bio)) && lim->zone_write_granularity) +return lim->zone_write_granularity; +return lim->logical_block_size; +} +/** * bio_split_rw - split a bio in two bios * @bio: [in] bio to be split
@@ -317,7 +325,7 @@ static struct bio *bio_split_rw(struct bio *bio, struct queue_limits *lim,* split size so that each bio is properly block size aligned, even if * we do not use the full hardware limits. */ - bytes =ALIGN_DOWN (bytes, lim->logical_block_size); + bytes =ALIGN_DOWN (bytes,bio_split_alignment (bio, lim));/* * Bio splitting may cause subtle trouble such as hang when doing sync
block/blk-mq.c +6 -0
@@ -2475,6 +2475,12 @@ void blk_mq_start_stopped_hw_queue(struct blk_mq_hw_ctx *hctx, bool async)return ;clear_bit (BLK_MQ_S_STOPPED , &hctx->state); +/* +* Pairs with the smp_mb() in blk_mq_hctx_stopped() to order the +* clearing of BLK_MQ_S_STOPPED above and the checking of dispatch +* list in the subsequent routine. +*/ +smp_mb__after_atomic ();blk_mq_run_hw_queue (hctx, async); }EXPORT_SYMBOL_GPL (blk_mq_start_stopped_hw_queue);
block/blk-mq.h +13 -0
@@ -178,6 +178,19 @@ static inline struct blk_mq_tags *blk_mq_tags_from_data(struct blk_mq_alloc_datastatic inline bool blk_mq_hctx_stopped (struct blk_mq_hw_ctx *hctx) { +/* Fast path: hardware queue is not stopped most of the time. */ +if (likely (!test_bit (BLK_MQ_S_STOPPED , &hctx->state))) +return false; + +/* +* This barrier is used to order adding of dispatch list before and +* the test of BLK_MQ_S_STOPPED below. Pairs with the memory barrier +* in blk_mq_start_stopped_hw_queue() so that dispatch code could +* either see BLK_MQ_S_STOPPED is cleared or dispatch list is not +* empty to avoid missing dispatching requests. +*/ +smp_mb (); +return test_bit (BLK_MQ_S_STOPPED , &hctx->state); }
crypto/api.c +54 -9
105 lines not on this page · raw message
crypto/internal.h +8 -0
@@ -10,6 +10,7 @@#include <crypto/algapi.h> #include <linux/completion.h> +#include <linux/err.h> #include <linux/jump_label.h> #include <linux/list.h> #include <linux/module.h>
@@ -85,6 +86,8 @@ struct crypto_tfm *__crypto_alloc_tfm(struct crypto_alg *alg, u32 type, u32 mask);void *crypto_create_tfm_node (struct crypto_alg *alg,const struct crypto_type *frontend,int node); +void *crypto_clone_tfm (const struct crypto_type *frontend, +struct crypto_tfm *otfm);static inline void *crypto_create_tfm (struct crypto_alg *alg,const struct crypto_type *frontend)
@@ -166,5 +169,10 @@ static inline int crypto_is_test_larval(struct crypto_larval *larval) return larval->alg.cra_driver_name[0]; } +static inline struct crypto_tfm *crypto_tfm_get (struct crypto_tfm *tfm) +{ +return refcount_inc_not_zero (&tfm->refcnt) ? tfm :ERR_PTR (-EOVERFLOW ); +} +#endif /* _CRYPTO_INTERNAL_H */
crypto/pcrypt.c +8 -4
@@ -117,8 +117,10 @@ static int pcrypt_aead_encrypt(struct aead_request *req) err =padata_do_parallel (ictx->psenc, padata, &ctx->cb_cpu);if (!err)return -EINPROGRESS ; -if (err == -EBUSY ) -return -EAGAIN ; +if (err == -EBUSY ) { +/* try non-parallel mode */ +return crypto_aead_encrypt (creq); + }return err; }
@@ -166,8 +168,10 @@ static int pcrypt_aead_decrypt(struct aead_request *req) err =padata_do_parallel (ictx->psdec, padata, &ctx->cb_cpu);if (!err)return -EINPROGRESS ; -if (err == -EBUSY ) -return -EAGAIN ; +if (err == -EBUSY ) { +/* try non-parallel mode */ +return crypto_aead_decrypt (creq); + }return err; }
drivers/acpi/arm64/gtdt.c +1 -1
@@ -283,7 +283,7 @@ static int __init gtdt_parse_timer_block(struct acpi_gtdt_timer_block *block,if (frame->virt_irq >0 )acpi_unregister_gsi (gtdt_frame->virtual_timer_interrupt); frame->virt_irq =0 ; - }while (i-- >=0 && gtdt_frame--); + }while (i-- >0 && gtdt_frame--);return -EINVAL ; }
drivers/acpi/cppc_acpi.c +0 -1
@@ -1136,7 +1136,6 @@ static int cpc_write(int cpu, struct cpc_register_resource *reg_res, u64 val)return -EFAULT ; } val =MASK_VAL_WRITE (reg, prev_val, val); - val |= prev_val; }switch (size) {
drivers/base/bus.c +2 -0
@@ -853,6 +853,8 @@ int bus_register(struct bus_type *bus)bus_remove_file (bus, &bus_attr_uevent); bus_uevent_fail:kset_unregister (&bus->p->subsys); +/* Above kset_unregister() will kfree @bus->p */ + bus->p =NULL ; out:kfree (bus->p); bus->p =NULL ;
drivers/base/core.c +38 -31
121 lines not on this page · raw message
drivers/block/brd.c +44 -22
66 lines not on this page · raw message
drivers/block/virtio_blk.c +21 -25
46 lines not on this page · raw message
drivers/clocksource/timer-ti-dm-systimer.c +2 -2
Lines of this file are not shown. View the raw message.
drivers/crypto/hisilicon/hpre/hpre_main.c +30 -5
Lines of this file are not shown. View the raw message.
drivers/crypto/hisilicon/qm.c +13 -34
47 lines not on this page · raw message
drivers/crypto/hisilicon/sec2/sec_main.c +30 -5
Lines of this file are not shown. View the raw message.
drivers/crypto/hisilicon/zip/zip_main.c +30 -5
Lines of this file are not shown. View the raw message.
drivers/crypto/inside-secure/safexcel_hash.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/crypto/qat/qat_common/adf_hw_arbiter.c +0 -4
Lines of this file are not shown. View the raw message.
drivers/dma-buf/dma-fence-unwrap.c +61 -65
126 lines not on this page · raw message
drivers/fpga/fpga-bridge.c +31 -26
57 lines not on this page · raw message
drivers/fpga/fpga-mgr.c +49 -33
82 lines not on this page · raw message
drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c +1 -0
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +46 -2
48 lines not on this page · raw message
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c +4 -1
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/amdgpu/vega20_ih.c +27 -0
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/amdkfd/kfd_process.c +3 -2
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/display/dc/bios/bios_parser.c +14 -0
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c +2 -1
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hwseq.c +4 -3
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/display/dc/dcn32/dcn32_hwseq.c +7 -4
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/display/dc/dcn32/dcn32_resource.c +3 -0
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/display/dc/dml/dcn20/display_rq_dlg_calc_20.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/display/dc/dml/dcn32/dcn32_fpu.c +4 -3
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/display/dc/dml/dml1_display_rq_dlg_calc.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c +2 -0
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/bridge/analogix/anx7625.c +2 -0
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/display/drm_dp_dual_mode_helper.c +2 -2
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/display/drm_dp_mst_topology.c +53 -2
55 lines not on this page · raw message
drivers/gpu/drm/drm_panel_orientation_quirks.c +18 -1
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/etnaviv/etnaviv_buffer.c +2 -1
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/etnaviv/etnaviv_gpu.c +24 -24
48 lines not on this page · raw message
drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c +15 -0
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.h +3 -0
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/msm/msm_gpu_devfreq.c +68 -80
148 lines not on this page · raw message
drivers/gpu/drm/panfrost/panfrost_gpu.c +0 -1
Lines of this file are not shown. View the raw message.
drivers/hid/hid-magicmouse.c +41 -15
56 lines not on this page · raw message
drivers/i3c/master.c +168 -33
201 lines not on this page · raw message
drivers/i3c/master/svc-i3c-master.c +133 -15
148 lines not on this page · raw message
drivers/iio/magnetometer/yamaha-yas530.c +7 -6
Lines of this file are not shown. View the raw message.
drivers/infiniband/hw/bnxt_re/ib_verbs.c +5 -2
Lines of this file are not shown. View the raw message.
drivers/infiniband/hw/bnxt_re/qplib_fp.h +1 -1
Lines of this file are not shown. View the raw message.
drivers/infiniband/hw/hns/hns_roce_cq.c +2 -2
Lines of this file are not shown. View the raw message.
drivers/infiniband/hw/hns/hns_roce_device.h +1 -0
Lines of this file are not shown. View the raw message.
drivers/infiniband/hw/hns/hns_roce_hem.c +46 -30
76 lines not on this page · raw message
drivers/infiniband/hw/hns/hns_roce_hw_v2.c +86 -86
172 lines not on this page · raw message
drivers/infiniband/hw/hns/hns_roce_hw_v2.h +6 -0
Lines of this file are not shown. View the raw message.
drivers/infiniband/hw/hns/hns_roce_mr.c +6 -5
Lines of this file are not shown. View the raw message.
drivers/infiniband/hw/hns/hns_roce_qp.c +35 -19
54 lines not on this page · raw message
drivers/infiniband/hw/hns/hns_roce_srq.c +2 -2
Lines of this file are not shown. View the raw message.
drivers/media/platform/allegro-dvt/allegro-core.c +3 -1
Lines of this file are not shown. View the raw message.
drivers/media/platform/amphion/vpu_drv.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/media/platform/amphion/vpu_v4l2.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/media/platform/aspeed/aspeed-video.c +2 -2
Lines of this file are not shown. View the raw message.
drivers/media/platform/nxp/imx-jpeg/mxc-jpeg.c +3 -1
Lines of this file are not shown. View the raw message.
drivers/media/platform/qcom/venus/core.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/media/platform/qcom/venus/core.h +11 -0
Lines of this file are not shown. View the raw message.
drivers/media/platform/qcom/venus/vdec.c +4 -0
Lines of this file are not shown. View the raw message.
drivers/media/platform/qcom/venus/venc.c +72 -0
72 lines not on this page · raw message
drivers/media/platform/samsung/exynos4-is/media-dev.h +3 -2
Lines of this file are not shown. View the raw message.
drivers/media/radio/wl128x/fmdrv_common.c +2 -1
Lines of this file are not shown. View the raw message.
drivers/media/test-drivers/vivid/vivid-vid-cap.c +13 -2
Lines of this file are not shown. View the raw message.
drivers/media/usb/cx231xx/cx231xx-cards.c +2 -0
Lines of this file are not shown. View the raw message.
drivers/media/usb/uvc/uvc_driver.c +85 -28
113 lines not on this page · raw message
drivers/media/v4l2-core/v4l2-dv-timings.c +72 -60
132 lines not on this page · raw message
drivers/memory/renesas-rpc-if.c +24 -18
42 lines not on this page · raw message
drivers/mfd/intel_soc_pmic_bxtwc.c +79 -47
126 lines not on this page · raw message
drivers/mmc/host/sdhci-pci-core.c +72 -0
72 lines not on this page · raw message
drivers/net/can/ifi_canfd/ifi_canfd.c +40 -18
58 lines not on this page · raw message
drivers/net/can/sja1000/sja1000.c +39 -28
67 lines not on this page · raw message
drivers/net/can/spi/hi311x.c +31 -19
50 lines not on this page · raw message
drivers/net/can/spi/mcp251xfd/mcp251xfd-tef.c +28 -1
Lines of this file are not shown. View the raw message.
drivers/net/can/usb/ems_usb.c +33 -25
58 lines not on this page · raw message
drivers/net/can/usb/gs_usb.c +60 -44
104 lines not on this page · raw message
drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c +5 -4
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/broadcom/bnxt/bnxt.c +6 -2
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/cavium/liquidio/lio_main.c +7 -4
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/chelsio/cxgb4/cxgb4_ptp.c +8 -5
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/freescale/fec_mpc52xx_phy.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/freescale/fec_ptp.c +8 -5
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/freescale/fs_enet/mii-bitbang.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/google/gve/gve_main.c +7 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/google/gve/gve_rx.c +0 -4
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/google/gve/gve_tx.c +0 -4
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/igb/igb_main.c +4 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/ixgbe/ixgbe_common.h +2 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/ixgbevf/ipsec.c +0 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/marvell/octeontx2/af/rpm.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/marvell/octeontx2/nic/cn10k.c +5 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c +4 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/marvell/octeontx2/nic/otx2_dcbnl.c +5 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/marvell/octeontx2/nic/otx2_dmac_flt.c +9 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/marvell/octeontx2/nic/otx2_ethtool.c +10 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/marvell/octeontx2/nic/otx2_flows.c +10 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/marvell/pxa168_eth.c +4 -10
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_encap.c +11 -2
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/mellanox/mlxsw/spectrum.h +1 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c +5 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c +2 -2
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/qlogic/qed/qed_mcp.c +3 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/qlogic/qede/qede_ptp.c +8 -5
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/realtek/r8169_main.c +10 -4
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/rocker/rocker_main.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/stmicro/stmmac/dwmac-socfpga.c +2 -0
Lines of this file are not shown. View the raw message.
drivers/net/veth.c +12 -32
44 lines not on this page · raw message
drivers/net/wireless/ath/ath9k/htc_hst.c +3 -0
Lines of this file are not shown. View the raw message.
drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c +1 -2
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/ipw2x00/libipw_rx.c +4 -4
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/iwlwifi/fw/init.c +3 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/iwlwifi/mvm/d3.c +2 -0
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/iwlwifi/mvm/tx.c +7 -5
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intersil/p54/p54spi.c +1 -3
Lines of this file are not shown. View the raw message.
drivers/net/wireless/marvell/mwifiex/fw.h +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/marvell/mwifiex/main.c +2 -2
Lines of this file are not shown. View the raw message.
drivers/net/wireless/realtek/rtlwifi/efuse.c +10 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/realtek/rtw89/mac80211.c +3 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/realtek/rtw89/util.h +18 -0
Lines of this file are not shown. View the raw message.
drivers/net/wireless/silabs/wfx/main.c +15 -2
Lines of this file are not shown. View the raw message.
drivers/nvme/host/pci.c +26 -29
55 lines not on this page · raw message
drivers/pci/controller/dwc/pci-keystone.c +12 -0
Lines of this file are not shown. View the raw message.
drivers/pci/controller/pcie-rockchip-ep.c +13 -3
Lines of this file are not shown. View the raw message.
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c +3 -1
Lines of this file are not shown. View the raw message.
drivers/pinctrl/qcom/pinctrl-spmi-mpp.c +1 -0
Lines of this file are not shown. View the raw message.
drivers/platform/chrome/cros_ec_typec.c +1 -0
Lines of this file are not shown. View the raw message.
drivers/platform/x86/dell/dell-smbios-base.c +1 -0
Lines of this file are not shown. View the raw message.
drivers/platform/x86/dell/dell-wmi-base.c +6 -0
Lines of this file are not shown. View the raw message.
drivers/platform/x86/intel/bxtwc_tmu.c +6 -16
Lines of this file are not shown. View the raw message.
drivers/platform/x86/panasonic-laptop.c +7 -3
Lines of this file are not shown. View the raw message.
drivers/power/supply/bq27xxx_battery.c +35 -2
Lines of this file are not shown. View the raw message.
drivers/power/supply/power_supply_core.c +0 -2
Lines of this file are not shown. View the raw message.
drivers/pwm/pwm-imx27.c +96 -2
98 lines not on this page · raw message
drivers/remoteproc/qcom_q6v5_pas.c +9 -35
44 lines not on this page · raw message
drivers/rpmsg/qcom_glink_native.c +51 -50
101 lines not on this page · raw message
drivers/scsi/qla2xxx/qla_bsg.c +92 -32
124 lines not on this page · raw message
drivers/soc/imx/soc-imx8m.c +85 -22
107 lines not on this page · raw message
drivers/soc/xilinx/xlnx_event_manager.c +3 -1
Lines of this file are not shown. View the raw message.
drivers/staging/media/atomisp/pci/sh_css_params.c +2 -0
Lines of this file are not shown. View the raw message.
drivers/thermal/intel/int340x_thermal/int3400_thermal.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/tty/serial/amba-pl011.c +43 -36
79 lines not on this page · raw message
drivers/usb/dwc3/gadget.c +47 -57
104 lines not on this page · raw message
drivers/usb/host/xhci-dbgcap.c +82 -53
135 lines not on this page · raw message
drivers/usb/misc/iowarrior.c +36 -14
50 lines not on this page · raw message
drivers/vfio/pci/mlx5/cmd.c +35 -12
47 lines not on this page · raw message
fs/btrfs/volumes.c +37 -5
42 lines not on this page · raw message
fs/ext4/fsmap.c +53 -1
54 lines not on this page · raw message
fs/f2fs/segment.c +32 -42
74 lines not on this page · raw message
fs/f2fs/segment.h +25 -16
41 lines not on this page · raw message
fs/udf/inode.c +21 -25
46 lines not on this page · raw message
fs/unicode/mkutf8data.c +70 -0
70 lines not on this page · raw message
fs/unicode/utf8data.c_shipped +3357 -3346
6,703 lines not on this page · raw message
include/drm/display/drm_dp_mst_helper.h +7 -0
Lines of this file are not shown. View the raw message.
include/linux/seqlock.h +77 -30
107 lines not on this page · raw message
include/linux/util_macros.h +40 -16
56 lines not on this page · raw message
kernel/bpf/lpm_trie.c +34 -21
55 lines not on this page · raw message
kernel/bpf/verifier.c +5 -36
41 lines not on this page · raw message
kernel/kcsan/debugfs.c +36 -38
74 lines not on this page · raw message
kernel/rcu/tasks.h +54 -28
82 lines not on this page · raw message
mm/kasan/report.c +51 -14
65 lines not on this page · raw message
net/bluetooth/hci_sync.c +124 -8
132 lines not on this page · raw message
net/bluetooth/mgmt.c +41 -20
61 lines not on this page · raw message
net/core/dev.c +58 -3
61 lines not on this page · raw message
net/core/filter.c +56 -39
95 lines not on this page · raw message
net/core/sock_diag.c +66 -48
114 lines not on this page · raw message
net/ethtool/bitset.c +44 -4
48 lines not on this page · raw message
net/ipv4/ipmr.c +29 -13
42 lines not on this page · raw message
net/ipv6/addrconf.c +29 -12
41 lines not on this page · raw message
net/sunrpc/xprtrdma/svc_rdma_recvfrom.c +7 -1
Lines of this file are not shown. View the raw message.
sound/pci/hda/patch_realtek.c +86 -71
157 lines not on this page · raw message
sound/soc/codecs/hdmi-codec.c +77 -63
140 lines not on this page · raw message
sound/soc/intel/atom/sst/sst_acpi.c +55 -9
64 lines not on this page · raw message
sound/soc/intel/boards/bytcr_rt5640.c +45 -3
48 lines not on this page · raw message
sound/usb/mixer.c +15 -43
58 lines not on this page · raw message
sound/usb/quirks.c +47 -11
58 lines not on this page · raw message
tools/bpf/bpftool/jit_disasm.c +35 -16
51 lines not on this page · raw message
tools/lib/thermal/commands.c +39 -13
52 lines not on this page · raw message
tools/perf/builtin-stat.c +37 -15
52 lines not on this page · raw message
tools/testing/selftests/arm64/mte/check_tags_inclusion.c +2 -2
Lines of this file are not shown. View the raw message.
tools/testing/selftests/arm64/mte/mte_common_util.c +2 -2
Lines of this file are not shown. View the raw message.
tools/testing/selftests/arm64/pauth/pac.c +3 -0
Lines of this file are not shown. View the raw message.
tools/testing/selftests/bpf/network_helpers.h +44 -0
44 lines not on this page · raw message
tools/testing/selftests/bpf/test_progs.c +6 -3
Lines of this file are not shown. View the raw message.
tools/testing/selftests/bpf/test_sockmap.c +142 -23
165 lines not on this page · raw message
tools/testing/selftests/mount_setattr/mount_setattr_test.c +1 -1
Lines of this file are not shown. View the raw message.
tools/testing/selftests/resctrl/resctrl_val.c +1 -2
Lines of this file are not shown. View the raw message.
tools/testing/selftests/vDSO/parse_vdso.c +1 -2
Lines of this file are not shown. View the raw message.
tools/testing/selftests/watchdog/watchdog-test.c +6 -0
Lines of this file are not shown. View the raw message.
tools/testing/selftests/wireguard/netns.sh +1 -0
Lines of this file are not shown. View the raw message.
The rest of this diff is not shown. View the raw message.
Part of the diff is not shown here. View the raw message.
Quoted 9 lines · Greg Kroah-Hartman
I'm announcing the release of the 6.1.120 kernel.
All users of the 6.1 kernel series must upgrade.
The updated 6.1.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.gitlinux-6.1.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary
Quoted 8 lines
thanks,
greg k-h
------------
Zqiang (1):
rcu-tasks: Fix access non-existent percpu rtpcp variable inrcu_tasks_need_gpcb()
I was AFK last week so I missed reporting this, but on riscv this patch causes:
[ 0.145463] BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274
[ 0.155273] in_atomic(): 1, irqs_disabled(): 1, non_block: 0, pid: 1, name: swapper/0
[ 0.164160] preempt_count: 1, expected: 0
[ 0.168716] RCU nest depth: 0, expected: 0
[ 0.173370] 1 lock held by swapper/0/1:
[ 0.177726] #0: ffffffff81494d78 (rcu_tasks.cbs_gbl_lock){....}-{2:2}, at: cblist_init_generic+0x2e/0x374
[ 0.188768] irq event stamp: 718
[ 0.192439] hardirqs last enabled at (717): [<ffffffff8098df90>] _raw_spin_unlock_irqrestore+0x34/0x5e
[ 0.203098] hardirqs last disabled at (718): [<ffffffff8098de32>] _raw_spin_lock_irqsave+0x24/0x60
[ 0.213254] softirqs last enabled at (0): [<ffffffff800105d2>] copy_process+0x50c/0xdac
[ 0.222445] softirqs last disabled at (0): [<0000000000000000>] 0x0
[ 0.229551] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 6.1.119-00350-g224fd631c41b #1
[ 0.238330] Hardware name: Microchip PolarFire-SoC Icicle Kit (DT)
[ 0.245329] Call Trace:
[ 0.248113] [<ffffffff8000678c>] show_stack+0x2c/0x38
[ 0.253868] [<ffffffff80984e66>] dump_stack_lvl+0x5e/0x80
[ 0.260022] [<ffffffff80984e9c>] dump_stack+0x14/0x20
[ 0.265768] [<ffffffff800499b0>] __might_resched+0x200/0x20a
[ 0.272217] [<ffffffff80049784>] __might_sleep+0x3c/0x68
[ 0.278258] [<ffffffff802022aa>] __kmem_cache_alloc_node+0x64/0x240
[ 0.285385] [<ffffffff801b1760>] __kmalloc+0xc0/0x180
[ 0.291140] [<ffffffff8008c752>] cblist_init_generic+0x84/0x374
[ 0.297857] [<ffffffff80a0b212>] rcu_spawn_tasks_kthread+0x1c/0x72
[ 0.304888] [<ffffffff80a0b0e8>] rcu_init_tasks_generic+0x20/0x12e
[ 0.311902] [<ffffffff80a00eb8>] kernel_init_freeable+0x56/0xa8
[ 0.318638] [<ffffffff80985c10>] kernel_init+0x1a/0x18e
[ 0.324574] [<ffffffff80004124>] ret_from_exception+0x0/0x1aReverting it fixed the problem.
Cheers,
Conor.
Quoted 41 lines · Greg Kroah-Hartman
Quoted 9 lines
I'm announcing the release of the 6.1.120 kernel.
All users of the 6.1 kernel series must upgrade.
The updated 6.1.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.gitlinux-6.1.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summaryQuoted 8 lines
thanks,
greg k-h
------------
Zqiang (1):
rcu-tasks: Fix access non-existent percpu rtpcp variable inrcu_tasks_need_gpcb()I was AFK last week so I missed reporting this, but on riscv this patch causes:
[ 0.145463] BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274 [ 0.155273] in_atomic(): 1, irqs_disabled(): 1, non_block: 0, pid: 1, name: swapper/0 [ 0.164160] preempt_count: 1, expected: 0 [ 0.168716] RCU nest depth: 0, expected: 0 [ 0.173370] 1 lock held by swapper/0/1: [ 0.177726] #0: ffffffff81494d78 (rcu_tasks.cbs_gbl_lock){....}-{2:2}, at: cblist_init_generic+0x2e/0x374 [ 0.188768] irq event stamp: 718 [ 0.192439] hardirqs last enabled at (717): [<ffffffff8098df90>] _raw_spin_unlock_irqrestore+0x34/0x5e [ 0.203098] hardirqs last disabled at (718): [<ffffffff8098de32>] _raw_spin_lock_irqsave+0x24/0x60 [ 0.213254] softirqs last enabled at (0): [<ffffffff800105d2>] copy_process+0x50c/0xdac [ 0.222445] softirqs last disabled at (0): [<0000000000000000>] 0x0 [ 0.229551] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 6.1.119-00350-g224fd631c41b #1 [ 0.238330] Hardware name: Microchip PolarFire-SoC Icicle Kit (DT) [ 0.245329] Call Trace: [ 0.248113] [<ffffffff8000678c>] show_stack+0x2c/0x38 [ 0.253868] [<ffffffff80984e66>] dump_stack_lvl+0x5e/0x80 [ 0.260022] [<ffffffff80984e9c>] dump_stack+0x14/0x20 [ 0.265768] [<ffffffff800499b0>] __might_resched+0x200/0x20a [ 0.272217] [<ffffffff80049784>] __might_sleep+0x3c/0x68
Quoted 9 lines
[ 0.278258] [<ffffffff802022aa>] __kmem_cache_alloc_node+0x64/0x240 [ 0.285385] [<ffffffff801b1760>] __kmalloc+0xc0/0x180 [ 0.291140] [<ffffffff8008c752>] cblist_init_generic+0x84/0x374 [ 0.297857] [<ffffffff80a0b212>] rcu_spawn_tasks_kthread+0x1c/0x72 [ 0.304888] [<ffffffff80a0b0e8>] rcu_init_tasks_generic+0x20/0x12e [ 0.311902] [<ffffffff80a00eb8>] kernel_init_freeable+0x56/0xa8 [ 0.318638] [<ffffffff80985c10>] kernel_init+0x1a/0x18e [ 0.324574] [<ffffffff80004124>] ret_from_exception+0x0/0x1a
Hello, Xiangyu
For v6.1.x kernels, the cblist_init_generic() is invoke in init task context, rtp->rtpcp_array is allocated use GFP_KERENL and in the critical section holding rcu_tasks.cbs_gbl_lock spinlock. so might_resched() trigger warnings. You should perform the operation of allocating rtpcp_array memory outside the spinlock.
Are you willing to resend the patch?
Thanks
Zqiang
Quoted 4 lines
Reverting it fixed the problem.
Cheers,
Conor.
Greg Kroah-Hartman
maintainerQuoted 51 lines · Z qiang
Quoted 41 lines · Greg Kroah-Hartman
Quoted 9 lines
I'm announcing the release of the 6.1.120 kernel.
All users of the 6.1 kernel series must upgrade.
The updated 6.1.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.gitlinux-6.1.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summaryQuoted 8 lines
thanks,
greg k-h
------------
Zqiang (1):
rcu-tasks: Fix access non-existent percpu rtpcp variable inrcu_tasks_need_gpcb()I was AFK last week so I missed reporting this, but on riscv this patch causes:
[ 0.145463] BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274 [ 0.155273] in_atomic(): 1, irqs_disabled(): 1, non_block: 0, pid: 1, name: swapper/0 [ 0.164160] preempt_count: 1, expected: 0 [ 0.168716] RCU nest depth: 0, expected: 0 [ 0.173370] 1 lock held by swapper/0/1: [ 0.177726] #0: ffffffff81494d78 (rcu_tasks.cbs_gbl_lock){....}-{2:2}, at: cblist_init_generic+0x2e/0x374 [ 0.188768] irq event stamp: 718 [ 0.192439] hardirqs last enabled at (717): [<ffffffff8098df90>] _raw_spin_unlock_irqrestore+0x34/0x5e [ 0.203098] hardirqs last disabled at (718): [<ffffffff8098de32>] _raw_spin_lock_irqsave+0x24/0x60 [ 0.213254] softirqs last enabled at (0): [<ffffffff800105d2>] copy_process+0x50c/0xdac [ 0.222445] softirqs last disabled at (0): [<0000000000000000>] 0x0 [ 0.229551] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 6.1.119-00350-g224fd631c41b #1 [ 0.238330] Hardware name: Microchip PolarFire-SoC Icicle Kit (DT) [ 0.245329] Call Trace: [ 0.248113] [<ffffffff8000678c>] show_stack+0x2c/0x38 [ 0.253868] [<ffffffff80984e66>] dump_stack_lvl+0x5e/0x80 [ 0.260022] [<ffffffff80984e9c>] dump_stack+0x14/0x20 [ 0.265768] [<ffffffff800499b0>] __might_resched+0x200/0x20a [ 0.272217] [<ffffffff80049784>] __might_sleep+0x3c/0x68Quoted 9 lines
[ 0.278258] [<ffffffff802022aa>] __kmem_cache_alloc_node+0x64/0x240 [ 0.285385] [<ffffffff801b1760>] __kmalloc+0xc0/0x180 [ 0.291140] [<ffffffff8008c752>] cblist_init_generic+0x84/0x374 [ 0.297857] [<ffffffff80a0b212>] rcu_spawn_tasks_kthread+0x1c/0x72 [ 0.304888] [<ffffffff80a0b0e8>] rcu_init_tasks_generic+0x20/0x12e [ 0.311902] [<ffffffff80a00eb8>] kernel_init_freeable+0x56/0xa8 [ 0.318638] [<ffffffff80985c10>] kernel_init+0x1a/0x18e [ 0.324574] [<ffffffff80004124>] ret_from_exception+0x0/0x1a
Quoted 8 lines
Hello, Xiangyu
For v6.1.x kernels, the
cblist_init_generic()is invoke in init task context,rtp->rtpcp_arrayis allocated useGFP_KERENLand in the critical section holding rcu_tasks.cbs_gbl_lock spinlock. somight_resched()trigger warnings. You should perform the operation of allocatingrtpcp_arraymemory outside the spinlock.
Are you willing to resend the patch?
So should I revert this, or do you have a fixup patch somewhere?
confused,
greg k-h
Quoted 54 lines · Greg Kroah-Hartman
Quoted 53 lines · Z qiang
Quoted 41 lines · Greg Kroah-Hartman
Quoted 9 lines
I'm announcing the release of the 6.1.120 kernel.
All users of the 6.1 kernel series must upgrade.
The updated 6.1.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.gitlinux-6.1.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summaryQuoted 8 lines
thanks,
greg k-h
------------
Zqiang (1):
rcu-tasks: Fix access non-existent percpu rtpcp variable inrcu_tasks_need_gpcb()I was AFK last week so I missed reporting this, but on riscv this patch causes:
[ 0.145463] BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274 [ 0.155273] in_atomic(): 1, irqs_disabled(): 1, non_block: 0, pid: 1, name: swapper/0 [ 0.164160] preempt_count: 1, expected: 0 [ 0.168716] RCU nest depth: 0, expected: 0 [ 0.173370] 1 lock held by swapper/0/1: [ 0.177726] #0: ffffffff81494d78 (rcu_tasks.cbs_gbl_lock){....}-{2:2}, at: cblist_init_generic+0x2e/0x374 [ 0.188768] irq event stamp: 718 [ 0.192439] hardirqs last enabled at (717): [<ffffffff8098df90>] _raw_spin_unlock_irqrestore+0x34/0x5e [ 0.203098] hardirqs last disabled at (718): [<ffffffff8098de32>] _raw_spin_lock_irqsave+0x24/0x60 [ 0.213254] softirqs last enabled at (0): [<ffffffff800105d2>] copy_process+0x50c/0xdac [ 0.222445] softirqs last disabled at (0): [<0000000000000000>] 0x0 [ 0.229551] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 6.1.119-00350-g224fd631c41b #1 [ 0.238330] Hardware name: Microchip PolarFire-SoC Icicle Kit (DT) [ 0.245329] Call Trace: [ 0.248113] [<ffffffff8000678c>] show_stack+0x2c/0x38 [ 0.253868] [<ffffffff80984e66>] dump_stack_lvl+0x5e/0x80 [ 0.260022] [<ffffffff80984e9c>] dump_stack+0x14/0x20 [ 0.265768] [<ffffffff800499b0>] __might_resched+0x200/0x20a [ 0.272217] [<ffffffff80049784>] __might_sleep+0x3c/0x68Quoted 9 lines
[ 0.278258] [<ffffffff802022aa>] __kmem_cache_alloc_node+0x64/0x240 [ 0.285385] [<ffffffff801b1760>] __kmalloc+0xc0/0x180 [ 0.291140] [<ffffffff8008c752>] cblist_init_generic+0x84/0x374 [ 0.297857] [<ffffffff80a0b212>] rcu_spawn_tasks_kthread+0x1c/0x72 [ 0.304888] [<ffffffff80a0b0e8>] rcu_init_tasks_generic+0x20/0x12e [ 0.311902] [<ffffffff80a00eb8>] kernel_init_freeable+0x56/0xa8 [ 0.318638] [<ffffffff80985c10>] kernel_init+0x1a/0x18e [ 0.324574] [<ffffffff80004124>] ret_from_exception+0x0/0x1aHello, Xiangyu
Quoted 8 lines
Quoted 6 lines
For v6.1.x kernels, the
cblist_init_generic()is invoke in init task context,rtp->rtpcp_arrayis allocated useGFP_KERENLand in the critical section holding rcu_tasks.cbs_gbl_lock spinlock. somight_resched()trigger warnings. You should perform the operation of allocatingrtpcp_arraymemory outside the spinlock.
Are you willing to resend the patch?So should I revert this, or do you have a fixup patch somewhere?
Is it too soon to push for a revert? It's interfering with my CIs attempts to test the 121-rc.
Cheers,
Conor.
Greg Kroah-Hartman
maintainerQuoted 62 lines · Conor Dooley
Quoted 61 lines · Greg Kroah-Hartman
Quoted 59 lines · Z qiang
Quoted 41 lines · Greg Kroah-Hartman
Quoted 9 lines
I'm announcing the release of the 6.1.120 kernel.
All users of the 6.1 kernel series must upgrade.
The updated 6.1.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.gitlinux-6.1.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summaryQuoted 8 lines
thanks,
greg k-h
------------
Zqiang (1):
rcu-tasks: Fix access non-existent percpu rtpcp variable inrcu_tasks_need_gpcb()I was AFK last week so I missed reporting this, but on riscv this patch causes:
[ 0.145463] BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274 [ 0.155273] in_atomic(): 1, irqs_disabled(): 1, non_block: 0, pid: 1, name: swapper/0 [ 0.164160] preempt_count: 1, expected: 0 [ 0.168716] RCU nest depth: 0, expected: 0 [ 0.173370] 1 lock held by swapper/0/1: [ 0.177726] #0: ffffffff81494d78 (rcu_tasks.cbs_gbl_lock){....}-{2:2}, at: cblist_init_generic+0x2e/0x374 [ 0.188768] irq event stamp: 718 [ 0.192439] hardirqs last enabled at (717): [<ffffffff8098df90>] _raw_spin_unlock_irqrestore+0x34/0x5e [ 0.203098] hardirqs last disabled at (718): [<ffffffff8098de32>] _raw_spin_lock_irqsave+0x24/0x60 [ 0.213254] softirqs last enabled at (0): [<ffffffff800105d2>] copy_process+0x50c/0xdac [ 0.222445] softirqs last disabled at (0): [<0000000000000000>] 0x0 [ 0.229551] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 6.1.119-00350-g224fd631c41b #1 [ 0.238330] Hardware name: Microchip PolarFire-SoC Icicle Kit (DT) [ 0.245329] Call Trace: [ 0.248113] [<ffffffff8000678c>] show_stack+0x2c/0x38 [ 0.253868] [<ffffffff80984e66>] dump_stack_lvl+0x5e/0x80 [ 0.260022] [<ffffffff80984e9c>] dump_stack+0x14/0x20 [ 0.265768] [<ffffffff800499b0>] __might_resched+0x200/0x20a [ 0.272217] [<ffffffff80049784>] __might_sleep+0x3c/0x68Quoted 9 lines
[ 0.278258] [<ffffffff802022aa>] __kmem_cache_alloc_node+0x64/0x240 [ 0.285385] [<ffffffff801b1760>] __kmalloc+0xc0/0x180 [ 0.291140] [<ffffffff8008c752>] cblist_init_generic+0x84/0x374 [ 0.297857] [<ffffffff80a0b212>] rcu_spawn_tasks_kthread+0x1c/0x72 [ 0.304888] [<ffffffff80a0b0e8>] rcu_init_tasks_generic+0x20/0x12e [ 0.311902] [<ffffffff80a00eb8>] kernel_init_freeable+0x56/0xa8 [ 0.318638] [<ffffffff80985c10>] kernel_init+0x1a/0x18e [ 0.324574] [<ffffffff80004124>] ret_from_exception+0x0/0x1aHello, Xiangyu
For v6.1.x kernels, the
cblist_init_generic()is invoke in init task context,rtp->rtpcp_arrayis allocated useGFP_KERENLand in the critical section holding rcu_tasks.cbs_gbl_lock spinlock. somight_resched()trigger warnings. You should perform the operation of allocatingrtpcp_arraymemory outside the spinlock.
Are you willing to resend the patch?
Quoted 4 lines
Quoted 1 line
So should I revert this, or do you have a fixup patch somewhere?
Is it too soon to push for a revert? It's interfering with my CIs attempts to test the 121-rc.
Sure, can someone send me a revert?
thanks,
greg k-h
Greg Kroah-Hartman
maintainerQuoted 63 lines · Greg Kroah-Hartman
Quoted 62 lines · Conor Dooley
Quoted 61 lines · Greg Kroah-Hartman
Quoted 59 lines · Z qiang
Quoted 41 lines · Greg Kroah-Hartman
Quoted 9 lines
I'm announcing the release of the 6.1.120 kernel.
All users of the 6.1 kernel series must upgrade.
The updated 6.1.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.gitlinux-6.1.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summaryQuoted 8 lines
thanks,
greg k-h
------------
Zqiang (1):
rcu-tasks: Fix access non-existent percpu rtpcp variable inrcu_tasks_need_gpcb()I was AFK last week so I missed reporting this, but on riscv this patch causes:
[ 0.145463] BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274 [ 0.155273] in_atomic(): 1, irqs_disabled(): 1, non_block: 0, pid: 1, name: swapper/0 [ 0.164160] preempt_count: 1, expected: 0 [ 0.168716] RCU nest depth: 0, expected: 0 [ 0.173370] 1 lock held by swapper/0/1: [ 0.177726] #0: ffffffff81494d78 (rcu_tasks.cbs_gbl_lock){....}-{2:2}, at: cblist_init_generic+0x2e/0x374 [ 0.188768] irq event stamp: 718 [ 0.192439] hardirqs last enabled at (717): [<ffffffff8098df90>] _raw_spin_unlock_irqrestore+0x34/0x5e [ 0.203098] hardirqs last disabled at (718): [<ffffffff8098de32>] _raw_spin_lock_irqsave+0x24/0x60 [ 0.213254] softirqs last enabled at (0): [<ffffffff800105d2>] copy_process+0x50c/0xdac [ 0.222445] softirqs last disabled at (0): [<0000000000000000>] 0x0 [ 0.229551] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 6.1.119-00350-g224fd631c41b #1 [ 0.238330] Hardware name: Microchip PolarFire-SoC Icicle Kit (DT) [ 0.245329] Call Trace: [ 0.248113] [<ffffffff8000678c>] show_stack+0x2c/0x38 [ 0.253868] [<ffffffff80984e66>] dump_stack_lvl+0x5e/0x80 [ 0.260022] [<ffffffff80984e9c>] dump_stack+0x14/0x20 [ 0.265768] [<ffffffff800499b0>] __might_resched+0x200/0x20a [ 0.272217] [<ffffffff80049784>] __might_sleep+0x3c/0x68Quoted 9 lines
[ 0.278258] [<ffffffff802022aa>] __kmem_cache_alloc_node+0x64/0x240 [ 0.285385] [<ffffffff801b1760>] __kmalloc+0xc0/0x180 [ 0.291140] [<ffffffff8008c752>] cblist_init_generic+0x84/0x374 [ 0.297857] [<ffffffff80a0b212>] rcu_spawn_tasks_kthread+0x1c/0x72 [ 0.304888] [<ffffffff80a0b0e8>] rcu_init_tasks_generic+0x20/0x12e [ 0.311902] [<ffffffff80a00eb8>] kernel_init_freeable+0x56/0xa8 [ 0.318638] [<ffffffff80985c10>] kernel_init+0x1a/0x18e [ 0.324574] [<ffffffff80004124>] ret_from_exception+0x0/0x1aHello, Xiangyu
For v6.1.x kernels, the
cblist_init_generic()is invoke in init task context,rtp->rtpcp_arrayis allocated useGFP_KERENLand in the critical section holding rcu_tasks.cbs_gbl_lock spinlock. somight_resched()trigger warnings. You should perform the operation of allocatingrtpcp_arraymemory outside the spinlock.
Are you willing to resend the patch?
Quoted 6 lines
Quoted 4 lines
Quoted 1 line
So should I revert this, or do you have a fixup patch somewhere?
Is it too soon to push for a revert? It's interfering with my CIs attempts to test the 121-rc.
Sure, can someone send me a revert?
Nevermind, I will just do it...
Quoted 7 lines · Greg Kroah-Hartman
Quoted 7 lines
Quoted 7 lines
Quoted 7 lines
Quoted 6 lines
For v6.1.x kernels, the
cblist_init_generic()is invoke in init task context,rtp->rtpcp_arrayis allocated useGFP_KERENLand in the critical section holding rcu_tasks.cbs_gbl_lock spinlock. somight_resched()trigger warnings. You should perform the operation of allocatingrtpcp_arraymemory outside the spinlock.
Are you willing to resend the patch?
Quoted 8 lines
Quoted 6 lines
Quoted 4 lines
Quoted 1 line
So should I revert this, or do you have a fixup patch somewhere?
Is it too soon to push for a revert? It's interfering with my CIs attempts to test the 121-rc.
Sure, can someone send me a revert?
Nevermind, I will just do it...
That'd be great, at least from where I'm sitting, since I'm still AFK for Christmas :)