Linux 5.15.179
Greg Kroah-Hartman
maintainerI'm announcing the release of the 5.15.179 kernel.
All users of the 5.15 kernel series must upgrade.
The updated 5.15.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-5.15.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/dev-tools/kfence.rst | 12 Documentation/devicetree/bindings/connector/usb-connector.yaml | 3 Documentation/devicetree/bindings/display/brcm,bcm2711-hdmi.yaml | 3 Documentation/devicetree/bindings/display/bridge/adi,adv7511.yaml | 5 Documentation/devicetree/bindings/display/bridge/synopsys,dw-hdmi.yaml | 5 Documentation/devicetree/bindings/display/panel/display-timings.yaml | 3 Documentation/devicetree/bindings/display/ste,mcde.yaml | 4 Documentation/devicetree/bindings/input/adc-joystick.yaml | 9 Documentation/devicetree/bindings/leds/cznic,turris-omnia-leds.yaml | 5 Documentation/devicetree/bindings/leds/leds-class-multicolor.yaml | 32 - Documentation/devicetree/bindings/leds/leds-lp50xx.yaml | 5 Documentation/devicetree/bindings/leds/leds-pwm-multicolor.yaml | 78 +++ Documentation/devicetree/bindings/leds/leds-qcom-lpg.yaml | 175 +++++++ Documentation/devicetree/bindings/mfd/google,cros-ec.yaml | 12 Documentation/devicetree/bindings/mfd/rohm,bd71815-pmic.yaml | 20 Documentation/devicetree/bindings/mmc/mmc-controller.yaml | 2 Documentation/devicetree/bindings/mtd/rockchip,nand-controller.yaml | 3 Documentation/devicetree/bindings/net/ti,cpsw-switch.yaml | 3 Documentation/devicetree/bindings/phy/phy-stm32-usbphyc.yaml | 3 Documentation/devicetree/bindings/power/supply/sbs,sbs-manager.yaml | 4 Documentation/devicetree/bindings/regulator/mt6315-regulator.yaml | 6 Documentation/devicetree/bindings/remoteproc/ti,k3-r5f-rproc.yaml | 3 Documentation/devicetree/bindings/soc/ti/ti,pruss.yaml | 15 Documentation/devicetree/bindings/sound/st,stm32-sai.yaml | 3 Documentation/devicetree/bindings/sound/tlv320adcx140.yaml | 13 Documentation/devicetree/bindings/spi/spi-controller.yaml | 69 --- Documentation/devicetree/bindings/spi/spi-peripheral-props.yaml | 87 +++ Documentation/devicetree/bindings/usb/st,stusb160x.yaml | 4 Documentation/kbuild/kconfig.rst | 9 Makefile | 7 arch/alpha/include/uapi/asm/ptrace.h | 2 arch/alpha/kernel/asm-offsets.c | 2 arch/alpha/kernel/entry.S | 24 - arch/alpha/kernel/traps.c | 2 arch/alpha/mm/fault.c | 4 arch/arm/boot/dts/dra7-l4.dtsi | 2 arch/arm/boot/dts/mt7623.dtsi | 2 arch/arm/mach-at91/pm.c | 31 - arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi | 29 - arch/arm64/boot/dts/mediatek/mt8173-evb.dts | 25 - arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi-damu.dts | 4 arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi-kenzo.dts | 15 arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi-willow.dtsi | 15 arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi | 2 arch/arm64/boot/dts/mediatek/mt8183.dtsi | 1 arch/arm64/boot/dts/mediatek/mt8516.dtsi | 38 - arch/arm64/boot/dts/mediatek/pumpkin-common.dtsi | 2 arch/arm64/boot/dts/qcom/msm8916.dtsi | 2 arch/arm64/boot/dts/qcom/msm8994.dtsi | 11 arch/arm64/boot/dts/qcom/msm8996.dtsi | 9 arch/arm64/boot/dts/qcom/sc7280.dtsi | 2 arch/arm64/boot/dts/qcom/sdm845.dtsi | 20 arch/arm64/boot/dts/qcom/sm6125.dtsi | 2 arch/arm64/boot/dts/qcom/sm8150-microsoft-surface-duo.dts | 4 arch/arm64/boot/dts/qcom/sm8250.dtsi | 2 arch/arm64/boot/dts/qcom/sm8350.dtsi | 4 arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi | 2 arch/arm64/include/asm/mman.h | 9 arch/arm64/kernel/cacheinfo.c | 12 arch/arm64/kernel/vdso/vdso.lds.S | 1 arch/arm64/kernel/vmlinux.lds.S | 1 arch/hexagon/include/asm/cmpxchg.h | 2 arch/hexagon/kernel/traps.c | 4 arch/m68k/include/asm/vga.h | 8 arch/mips/kernel/ftrace.c | 2 arch/mips/loongson64/boardinfo.c | 2 arch/mips/math-emu/cp1emu.c | 2 arch/mips/mm/init.c | 2 arch/powerpc/include/asm/book3s/64/hash-4k.h | 28 + arch/powerpc/include/asm/book3s/64/pgtable.h | 26 - arch/powerpc/lib/code-patching.c | 2 arch/powerpc/platforms/pseries/eeh_pseries.c | 6 arch/powerpc/platforms/pseries/svm.c | 3 arch/s390/include/asm/futex.h | 2 arch/s390/kernel/smp.c | 2 arch/s390/kernel/traps.c | 6 arch/s390/kvm/vsie.c | 25 - arch/x86/Kconfig | 3 arch/x86/boot/compressed/Makefile | 1 arch/x86/events/intel/core.c | 5 arch/x86/include/asm/mmu.h | 2 arch/x86/include/asm/mmu_context.h | 1 arch/x86/include/asm/msr-index.h | 3 arch/x86/include/asm/tlbflush.h | 1 arch/x86/kernel/amd_nb.c | 4 arch/x86/kernel/cpu/bugs.c | 20 arch/x86/kernel/cpu/cacheinfo.c | 2 arch/x86/kernel/cpu/cyrix.c | 4 arch/x86/kernel/cpu/intel.c | 52 +- arch/x86/kernel/cpu/sgx/encl.c | 108 +++- arch/x86/kernel/cpu/sgx/encl.h | 8 arch/x86/kernel/cpu/sgx/ioctl.c | 17 arch/x86/kernel/cpu/sgx/main.c | 31 - arch/x86/kernel/i8253.c | 11 arch/x86/kernel/static_call.c | 1 arch/x86/kvm/hyperv.c | 6 arch/x86/mm/init.c | 23 - arch/x86/mm/tlb.c | 35 + arch/x86/xen/mmu_pv.c | 79 ++- arch/x86/xen/p2m.c | 2 arch/x86/xen/xen-head.S | 5 block/Kconfig | 12 block/bdev.c | 9 block/blk-cgroup.c | 1 block/genhd.c | 28 + block/partitions/efi.c | 2 block/partitions/ldm.h | 2 block/partitions/mac.c | 18 crypto/testmgr.h | 227 +++++++-- drivers/acpi/apei/ghes.c | 10 drivers/acpi/fan.c | 10 drivers/base/arch_numa.c | 2 drivers/base/regmap/regmap-irq.c | 2 drivers/block/nbd.c | 1 drivers/bus/mhi/host/pci_generic.c | 5 drivers/char/ipmi/ipmb_dev_int.c | 3 drivers/char/tpm/eventlog/acpi.c | 16 drivers/char/tpm/eventlog/efi.c | 13 drivers/char/tpm/eventlog/of.c | 3 drivers/char/tpm/tpm-chip.c | 1 drivers/clk/analogbits/wrpll-cln28hpc.c | 2 drivers/clk/imx/clk-imx8mp.c | 5 drivers/clk/qcom/clk-alpha-pll.c | 2 drivers/clk/qcom/clk-rpmh.c | 2 drivers/clk/qcom/gcc-mdm9607.c | 2 drivers/clk/qcom/gcc-sm6350.c | 22 drivers/clk/sunxi-ng/ccu-sun50i-a100.c | 6 drivers/clocksource/i8253.c | 13 drivers/cpufreq/acpi-cpufreq.c | 36 + drivers/cpufreq/s3c64xx-cpufreq.c | 11 drivers/crypto/hisilicon/sec2/sec.h | 3 drivers/crypto/hisilicon/sec2/sec_crypto.c | 182 +++---- drivers/crypto/hisilicon/sec2/sec_crypto.h | 11 drivers/crypto/ixp4xx_crypto.c | 3 drivers/crypto/qce/aead.c | 2 drivers/crypto/qce/core.c | 13 drivers/crypto/qce/sha.c | 2 drivers/crypto/qce/skcipher.c | 2 drivers/dma/ti/edma.c | 3 drivers/firmware/Kconfig | 2 drivers/firmware/efi/efi.c | 6 drivers/firmware/efi/libstub/Makefile | 2 drivers/firmware/efi/libstub/randomalloc.c | 3 drivers/firmware/efi/libstub/relocate.c | 3 drivers/firmware/efi/sysfb_efi.c | 2 drivers/gpio/gpio-aggregator.c | 20 drivers/gpio/gpio-bcm-kona.c | 71 ++- drivers/gpio/gpio-mxc.c | 3 drivers/gpio/gpio-pca953x.c | 19 drivers/gpio/gpio-rcar.c | 31 - drivers/gpio/gpio-stmpe.c | 15 drivers/gpio/gpio-xilinx.c | 33 - drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 11 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c | 14 drivers/gpu/drm/amd/pm/powerplay/hwmgr/ppatomctrl.c | 2 drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c | 1 drivers/gpu/drm/arm/display/komeda/komeda_wb_connector.c | 4 drivers/gpu/drm/drm_dp_cec.c | 14 drivers/gpu/drm/drm_fb_helper.c | 14 drivers/gpu/drm/drm_probe_helper.c | 116 +++-- drivers/gpu/drm/etnaviv/etnaviv_gem.c | 16 drivers/gpu/drm/i915/display/skl_universal_plane.c | 4 drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 4 drivers/gpu/drm/radeon/r300.c | 3 drivers/gpu/drm/radeon/radeon_asic.h | 1 drivers/gpu/drm/radeon/rs400.c | 18 drivers/gpu/drm/rockchip/cdn-dp-core.c | 9 drivers/gpu/drm/scheduler/gpu_scheduler_trace.h | 4 drivers/gpu/drm/tidss/tidss_dispc.c | 22 drivers/gpu/drm/v3d/v3d_perfmon.c | 5 drivers/hid/hid-appleir.c | 2 drivers/hid/hid-core.c | 2 drivers/hid/hid-google-hammer.c | 2 drivers/hid/hid-multitouch.c | 7 drivers/hid/hid-sensor-hub.c | 21 drivers/hid/intel-ish-hid/ishtp-hid.c | 4 drivers/hid/wacom_wac.c | 5 drivers/hwmon/ad7314.c | 10 drivers/hwmon/ntc_thermistor.c | 66 +- drivers/hwmon/pmbus/pmbus.c | 2 drivers/hwmon/xgene-hwmon.c | 2 drivers/hwtracing/intel_th/pci.c | 15 drivers/i2c/busses/i2c-npcm7xx.c | 7 drivers/i2c/i2c-core-acpi.c | 22 drivers/idle/intel_idle.c | 4 drivers/iio/light/as73211.c | 24 - drivers/infiniband/hw/cxgb4/device.c | 6 drivers/infiniband/hw/mlx4/main.c | 6 drivers/infiniband/hw/mlx5/counters.c | 8 drivers/infiniband/hw/mlx5/devx.c | 1 drivers/infiniband/hw/mlx5/mr.c | 16 drivers/infiniband/hw/mlx5/odp.c | 61 +- drivers/infiniband/hw/mlx5/qp.c | 4 drivers/leds/leds-lp8860.c | 2 drivers/leds/leds-netxbig.c | 1 drivers/md/Kconfig | 4 drivers/md/dm-crypt.c | 27 - drivers/media/dvb-frontends/cxd2841er.c | 8 drivers/media/i2c/ccs/ccs-core.c | 6 drivers/media/i2c/ccs/ccs-data.c | 14 drivers/media/i2c/imx412.c | 42 - drivers/media/i2c/ov5640.c | 1 drivers/media/i2c/ov9282.c | 2 drivers/media/platform/exynos4-is/mipi-csis.c | 10 drivers/media/platform/imx-jpeg/mxc-jpeg.c | 7 drivers/media/platform/marvell-ccic/mcam-core.c | 7 drivers/media/platform/s3c-camif/camif-core.c | 13 drivers/media/rc/iguanair.c | 4 drivers/media/test-drivers/vidtv/vidtv_bridge.c | 8 drivers/media/usb/dvb-usb-v2/lmedm04.c | 12 drivers/media/usb/uvc/uvc_ctrl.c | 139 +++++- drivers/media/usb/uvc/uvc_driver.c | 105 ++-- drivers/media/usb/uvc/uvc_queue.c | 3 drivers/media/usb/uvc/uvc_status.c | 1 drivers/media/usb/uvc/uvc_v4l2.c | 4 drivers/media/usb/uvc/uvcvideo.h | 20 drivers/media/v4l2-core/v4l2-mc.c | 2 drivers/memory/jedec_ddr.h | 47 ++ drivers/memory/jedec_ddr_data.c | 41 + drivers/memory/of_memory.c | 87 +++ drivers/memory/of_memory.h | 9 drivers/memory/tegra/Kconfig | 1 drivers/memory/tegra/tegra20-emc.c | 203 ++++++++ drivers/mfd/lpc_ich.c | 3 drivers/misc/eeprom/digsy_mtc_eeprom.c | 2 drivers/misc/fastrpc.c | 2 drivers/misc/mei/hw-me-regs.h | 2 drivers/misc/mei/pci-me.c | 2 drivers/mmc/core/sdio.c | 2 drivers/mmc/host/sdhci-msm.c | 53 ++ drivers/mtd/hyperbus/hbmc-am654.c | 29 - drivers/mtd/hyperbus/hyperbus-core.c | 8 drivers/mtd/hyperbus/rpc-if.c | 5 drivers/mtd/nand/onenand/onenand_base.c | 1 drivers/mtd/nand/raw/cadence-nand-controller.c | 44 + drivers/net/caif/caif_virtio.c | 2 drivers/net/can/c_can/c_can_platform.c | 5 drivers/net/ethernet/aquantia/atlantic/aq_nic.c | 4 drivers/net/ethernet/broadcom/bgmac.h | 3 drivers/net/ethernet/broadcom/tg3.c | 58 ++ drivers/net/ethernet/cadence/macb.h | 2 drivers/net/ethernet/cadence/macb_main.c | 12 drivers/net/ethernet/davicom/dm9000.c | 3 drivers/net/ethernet/emulex/benet/be.h | 2 drivers/net/ethernet/emulex/benet/be_cmds.c | 197 ++++---- drivers/net/ethernet/emulex/benet/be_main.c | 2 drivers/net/ethernet/freescale/enetc/enetc.c | 69 ++- drivers/net/ethernet/freescale/fec_main.c | 31 + drivers/net/ethernet/hisilicon/hns3/hnae3.c | 15 drivers/net/ethernet/hisilicon/hns3/hnae3.h | 2 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 2 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c | 2 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_ptp.c | 2 drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c | 2 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c | 2 drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c | 24 - drivers/net/ethernet/mellanox/mlx5/core/mr.c | 1 drivers/net/ethernet/mellanox/mlx5/core/pci_irq.c | 2 drivers/net/ethernet/mellanox/mlxfw/mlxfw_fsm.c | 2 drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c | 4 drivers/net/ethernet/netronome/nfp/bpf/cmsg.c | 2 drivers/net/ethernet/renesas/sh_eth.c | 4 drivers/net/ethernet/ti/am65-cpsw-nuss.c | 2 drivers/net/geneve.c | 16 drivers/net/gtp.c | 5 drivers/net/loopback.c | 14 drivers/net/netdevsim/ipsec.c | 12 drivers/net/netdevsim/netdevsim.h | 1 drivers/net/netdevsim/udp_tunnels.c | 23 - drivers/net/phy/nxp-c45-tja11xx.c | 2 drivers/net/ppp/ppp_generic.c | 28 - drivers/net/team/team.c | 11 drivers/net/tun.c | 2 drivers/net/usb/gl620a.c | 4 drivers/net/usb/rtl8150.c | 22 drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c | 5 drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy/phy_n.c | 3 drivers/net/wireless/intel/iwlwifi/fw/acpi.c | 13 drivers/net/wireless/intel/iwlwifi/iwl-drv.c | 2 drivers/net/wireless/mediatek/mt76/usb.c | 4 drivers/net/wireless/realtek/rtlwifi/base.c | 42 - drivers/net/wireless/realtek/rtlwifi/base.h | 2 drivers/net/wireless/realtek/rtlwifi/pci.c | 67 -- drivers/net/wireless/realtek/rtlwifi/rtl8192se/sw.c | 7 drivers/net/wireless/realtek/rtlwifi/rtl8821ae/fw.h | 4 drivers/net/wireless/realtek/rtlwifi/usb.c | 12 drivers/net/wireless/realtek/rtlwifi/wifi.h | 23 - drivers/net/wireless/ti/wlcore/main.c | 10 drivers/net/wwan/iosm/iosm_ipc_pcie.c | 56 ++ drivers/nvme/host/core.c | 16 drivers/nvme/host/ioctl.c | 3 drivers/nvme/host/pci.c | 4 drivers/nvme/target/tcp.c | 15 drivers/nvmem/core.c | 2 drivers/nvmem/qcom-spmi-sdam.c | 1 drivers/of/base.c | 8 drivers/of/of_reserved_mem.c | 3 drivers/parport/parport_pc.c | 5 drivers/pci/controller/pcie-rcar-ep.c | 2 drivers/pci/endpoint/pci-epc-core.c | 2 drivers/pci/endpoint/pci-epf-core.c | 1 drivers/pci/quirks.c | 1 drivers/phy/samsung/phy-exynos5-usbdrd.c | 12 drivers/phy/tegra/xusb-tegra186.c | 11 drivers/platform/x86/acer-wmi.c | 4 drivers/platform/x86/thinkpad_acpi.c | 1 drivers/power/supply/da9150-fg.c | 4 drivers/pps/clients/pps-gpio.c | 4 drivers/pps/clients/pps-ktimer.c | 4 drivers/pps/clients/pps-ldisc.c | 6 drivers/pps/clients/pps_parport.c | 4 drivers/pps/kapi.c | 10 drivers/pps/kc.c | 10 drivers/pps/pps.c | 127 ++--- drivers/ptp/ptp_chardev.c | 4 drivers/ptp/ptp_clock.c | 8 drivers/ptp/ptp_ocp.c | 2 drivers/rapidio/devices/rio_mport_cdev.c | 3 drivers/rapidio/rio-scan.c | 5 drivers/regulator/of_regulator.c | 14 drivers/rtc/rtc-pcf85063.c | 11 drivers/s390/char/sclp_early.c | 2 drivers/scsi/mpt3sas/mpt3sas_base.c | 3 drivers/scsi/qla2xxx/qla_def.h | 2 drivers/scsi/qla2xxx/qla_dfs.c | 124 ++++- drivers/scsi/qla2xxx/qla_gbl.h | 3 drivers/scsi/qla2xxx/qla_init.c | 28 - drivers/scsi/scsi_lib.c | 60 +- drivers/scsi/storvsc_drv.c | 1 drivers/scsi/ufs/ufs_bsg.c | 1 drivers/slimbus/messaging.c | 5 drivers/soc/mediatek/mtk-devapc.c | 36 - drivers/soc/qcom/smem_state.c | 3 drivers/soc/qcom/socinfo.c | 2 drivers/spi/spi-mxs.c | 3 drivers/spi/spi-zynq-qspi.c | 13 drivers/staging/media/imx/imx-media-of.c | 8 drivers/tee/optee/supp.c | 35 - drivers/tty/serial/8250/8250.h | 2 drivers/tty/serial/8250/8250_dma.c | 16 drivers/tty/serial/8250/8250_pci.c | 10 drivers/tty/serial/8250/8250_port.c | 9 drivers/tty/serial/sh-sci.c | 25 + drivers/tty/serial/xilinx_uartps.c | 10 drivers/usb/atm/cxacru.c | 13 drivers/usb/chipidea/ci_hdrc_imx.c | 38 - drivers/usb/class/cdc-acm.c | 28 - drivers/usb/core/hub.c | 49 ++ drivers/usb/core/quirks.c | 10 drivers/usb/dwc2/gadget.c | 1 drivers/usb/dwc3/core.c | 115 +++-- drivers/usb/dwc3/core.h | 2 drivers/usb/dwc3/drd.c | 4 drivers/usb/dwc3/gadget.c | 47 +- drivers/usb/gadget/composite.c | 17 drivers/usb/gadget/function/f_midi.c | 10 drivers/usb/gadget/function/f_tcm.c | 66 +- drivers/usb/gadget/udc/renesas_usb3.c | 2 drivers/usb/host/pci-quirks.c | 9 drivers/usb/host/xhci-mem.c | 5 drivers/usb/host/xhci-pci.c | 18 drivers/usb/host/xhci-ring.c | 12 drivers/usb/host/xhci.c | 23 - drivers/usb/host/xhci.h | 11 drivers/usb/renesas_usbhs/common.c | 6 drivers/usb/renesas_usbhs/mod_gadget.c | 2 drivers/usb/roles/class.c | 5 drivers/usb/serial/option.c | 49 +- drivers/usb/typec/tcpm/tcpci.c | 13 drivers/usb/typec/tcpm/tcpci_rt1711h.c | 11 drivers/usb/typec/tcpm/tcpm.c | 10 drivers/usb/typec/ucsi/ucsi.c | 2 drivers/vdpa/mlx5/core/resources.c | 1 drivers/vfio/pci/vfio_pci_rdwr.c | 1 drivers/vfio/platform/vfio_platform_common.c | 10 drivers/video/fbdev/omap2/omapfb/dss/dss-of.c | 1 drivers/virt/acrn/hsm.c | 6 fs/afs/cell.c | 1 fs/afs/dir.c | 7 fs/afs/internal.h | 23 - fs/afs/server.c | 1 fs/afs/server_list.c | 114 ++++ fs/afs/vl_alias.c | 2 fs/afs/volume.c | 40 - fs/afs/xdr_fs.h | 2 fs/afs/yfsclient.c | 5 fs/binfmt_flat.c | 2 fs/btrfs/file.c | 6 fs/btrfs/inode.c | 4 fs/btrfs/relocation.c | 14 fs/btrfs/super.c | 2 fs/btrfs/transaction.c | 4 fs/cifs/smb2ops.c | 4 fs/exfat/balloc.c | 10 fs/exfat/exfat_fs.h | 2 fs/exfat/fatent.c | 11 fs/f2fs/dir.c | 53 +- fs/f2fs/f2fs.h | 6 fs/f2fs/file.c | 13 fs/f2fs/inline.c | 5 fs/file_table.c | 47 +- fs/inode.c | 39 + fs/ksmbd/transport_ipc.c | 9 fs/nfs/flexfilelayout/flexfilelayout.c | 27 - fs/nfs/nfs42proc.c | 2 fs/nfs/nfs42xdr.c | 2 fs/nfsd/nfs2acl.c | 2 fs/nfsd/nfs3acl.c | 2 fs/nfsd/nfs4callback.c | 8 fs/nilfs2/dir.c | 24 - fs/nilfs2/inode.c | 10 fs/nilfs2/mdt.c | 6 fs/nilfs2/namei.c | 37 - fs/nilfs2/nilfs.h | 10 fs/nilfs2/page.c | 55 +- fs/nilfs2/page.h | 4 fs/nilfs2/segment.c | 4 fs/ocfs2/dir.c | 25 - fs/ocfs2/quota_global.c | 5 fs/ocfs2/super.c | 2 fs/ocfs2/symlink.c | 5 fs/orangefs/orangefs-debugfs.c | 4 fs/overlayfs/copy_up.c | 44 + fs/overlayfs/dir.c | 100 ++-- fs/overlayfs/inode.c | 17 fs/overlayfs/namei.c | 6 fs/overlayfs/overlayfs.h | 92 ++-- fs/overlayfs/readdir.c | 32 - fs/overlayfs/super.c | 40 - fs/overlayfs/util.c | 18 fs/proc/proc_sysctl.c | 3 fs/pstore/blk.c | 4 fs/select.c | 4 fs/squashfs/inode.c | 5 fs/ubifs/debug.c | 22 fs/xfs/xfs_inode.c | 7 fs/xfs/xfs_qm_bhv.c | 41 + fs/xfs/xfs_super.c | 11 include/asm-generic/vmlinux.lds.h | 2 include/drm/drm_probe_helper.h | 1 include/linux/cgroup-defs.h | 6 include/linux/efi.h | 1 include/linux/fs.h | 6 include/linux/i8253.h | 1 include/linux/kallsyms.h | 2 include/linux/kvm_host.h | 9 include/linux/memblock.h | 12 include/linux/mlx5/driver.h | 2 include/linux/mtd/hyperbus.h | 4 include/linux/netdevice.h | 8 include/linux/pci_ids.h | 4 include/linux/pps_kernel.h | 3 include/linux/sched.h | 4 include/linux/sched/sysctl.h | 14 include/linux/sched/task.h | 1 include/linux/sysctl.h | 6 include/linux/usb/hcd.h | 5 include/linux/usb/tcpm.h | 3 include/net/dst.h | 9 include/net/flow_dissector.h | 16 include/net/flow_offload.h | 6 include/net/l3mdev.h | 2 include/net/net_namespace.h | 15 include/net/netns/ipv4.h | 3 include/net/route.h | 9 include/trace/events/oom.h | 36 + include/uapi/linux/input-event-codes.h | 1 include/uapi/linux/seg6_iptunnel.h | 2 kernel/acct.c | 134 +++-- kernel/bpf/syscall.c | 18 kernel/cgroup/cgroup.c | 20 kernel/debug/kdb/kdb_io.c | 2 kernel/dma/swiotlb.c | 2 kernel/events/core.c | 17 kernel/hung_task.c | 81 +++ kernel/irq/internals.h | 9 kernel/padata.c | 45 + kernel/power/hibernate.c | 7 kernel/printk/printk.c | 2 kernel/sched/core.c | 10 kernel/sched/cpufreq_schedutil.c | 4 kernel/sched/fair.c | 23 - kernel/sched/stats.h | 22 kernel/sysctl.c | 146 ------ kernel/time/clocksource.c | 11 kernel/trace/bpf_trace.c | 2 kernel/trace/ftrace.c | 27 - lib/Kconfig.debug | 8 lib/Kconfig.kfence | 12 lib/cpumask.c | 2 mm/kfence/core.c | 51 ++ mm/memcontrol.c | 7 mm/memory.c | 6 mm/oom_kill.c | 14 mm/page_alloc.c | 1 mm/percpu.c | 8 mm/sparse.c | 2 mm/vmalloc.c | 4 net/8021q/vlan.c | 3 net/batman-adv/bat_v.c | 2 net/batman-adv/bat_v_elp.c | 123 +++-- net/batman-adv/bat_v_elp.h | 2 net/batman-adv/types.h | 3 net/bluetooth/l2cap_core.c | 9 net/bluetooth/l2cap_sock.c | 7 net/can/j1939/socket.c | 4 net/can/j1939/transport.c | 5 net/core/dev.c | 37 + net/core/drop_monitor.c | 29 - net/core/flow_dissector.c | 49 +- net/core/flow_offload.c | 7 net/core/neighbour.c | 11 net/core/skbuff.c | 2 net/core/sysctl_net_core.c | 5 net/ethtool/netlink.c | 2 net/hsr/hsr_forward.c | 7 net/ipv4/arp.c | 6 net/ipv4/devinet.c | 3 net/ipv4/ipmr_base.c | 3 net/ipv4/route.c | 102 +++- net/ipv4/tcp_cubic.c | 8 net/ipv4/tcp_minisocks.c | 10 net/ipv4/tcp_offload.c | 11 net/ipv4/udp.c | 4 net/ipv4/udp_offload.c | 8 net/ipv6/ila/ila_lwt.c | 4 net/ipv6/mcast.c | 14 net/ipv6/ndisc.c | 24 - net/ipv6/route.c | 7 net/ipv6/rpl_iptunnel.c | 62 +- net/ipv6/seg6_iptunnel.c | 227 ++++++++- net/ipv6/udp.c | 4 net/llc/llc_s_ac.c | 49 +- net/mptcp/options.c | 13 net/mptcp/pm_netlink.c | 6 net/mptcp/protocol.c | 1 net/mptcp/protocol.h | 30 - net/ncsi/internal.h | 2 net/ncsi/ncsi-cmd.c | 3 net/ncsi/ncsi-manage.c | 38 + net/ncsi/ncsi-pkt.h | 10 net/ncsi/ncsi-rsp.c | 58 +- net/netfilter/nf_tables_api.c | 8 net/netfilter/nft_flow_offload.c | 16 net/nfc/nci/hci.c | 2 net/openvswitch/datapath.c | 12 net/rose/af_rose.c | 40 + net/rose/rose_timer.c | 15 net/sched/cls_flower.c | 8 net/sched/sch_api.c | 4 net/sched/sch_cake.c | 140 +++--- net/sched/sch_fifo.c | 3 net/sched/sch_netem.c | 2 net/smc/af_smc.c | 2 net/smc/smc_rx.c | 37 - net/smc/smc_rx.h | 8 net/sunrpc/cache.c | 10 net/tipc/crypto.c | 4 net/vmw_vsock/af_vsock.c | 82 ++- net/wireless/nl80211.c | 5 net/wireless/reg.c | 3 net/wireless/scan.c | 35 + net/xfrm/xfrm_replay.c | 10 samples/landlock/sandboxer.c | 7 scripts/Makefile.extrawarn | 5 scripts/genksyms/genksyms.c | 11 scripts/genksyms/genksyms.h | 2 scripts/genksyms/parse.y | 18 scripts/kconfig/conf.c | 6 scripts/kconfig/confdata.c | 102 ++-- scripts/kconfig/lkc_proto.h | 2 scripts/kconfig/symbol.c | 10 security/landlock/fs.c | 86 +-- security/safesetid/securityfs.c | 3 security/tomoyo/common.c | 2 sound/pci/hda/hda_intel.c | 2 sound/pci/hda/patch_conexant.c | 1 sound/pci/hda/patch_realtek.c | 78 +++ sound/soc/codecs/es8328.c | 15 sound/soc/intel/boards/bytcr_rt5640.c | 17 sound/soc/sh/rz-ssi.c | 5 sound/soc/sunxi/sun4i-spdif.c | 7 sound/usb/midi.c | 2 sound/usb/quirks.c | 3 sound/usb/usx2y/usbusx2y.c | 11 sound/usb/usx2y/usbusx2y.h | 26 + sound/usb/usx2y/usbusx2yaudio.c | 27 - tools/bootconfig/main.c | 4 tools/lib/bpf/linker.c | 22 tools/perf/bench/epoll-wait.c | 7 tools/perf/builtin-report.c | 2 tools/perf/builtin-top.c | 2 tools/perf/builtin-trace.c | 6 tools/perf/util/bpf-event.c | 10 tools/perf/util/env.c | 13 tools/perf/util/env.h | 4 tools/perf/util/header.c | 8 tools/power/cpupower/utils/idle_monitor/mperf_monitor.c | 15 tools/testing/ktest/ktest.pl | 7 tools/testing/selftests/bpf/test_tc_tunnel.sh | 1 tools/testing/selftests/drivers/net/netdevsim/udp_tunnel_nic.sh | 16 tools/testing/selftests/kselftest_harness.h | 24 - tools/testing/selftests/landlock/fs_test.c | 3 tools/testing/selftests/net/ipsec.c | 3 tools/testing/selftests/net/pmtu.sh | 229 +++++++++- tools/testing/selftests/net/rtnetlink.sh | 4 tools/testing/selftests/net/udpgso.c | 26 + 607 files changed, 6983 insertions(+), 3348 deletions(-)
Aharon Landau (1):
RDMA/mlx5: Remove iova from struct mlx5_core_mkey
Ahmad Fatoum (1):
gpio: mxc: remove dead code after switch to DT-only
Ahmed S. Darwish (3):
x86/cacheinfo: Validate CPUID leaf 0x2 EDX output
x86/cpu: Validate CPUID leaf 0x2 EDX output
x86/cpu: Properly parse CPUID leaf 0x2 TLB descriptor 0x63Alan Stern (2):
HID: core: Fix assumption that Resolution Multipliers must be in Logical Collections
USB: hub: Ignore non-compliant devices with too many configs or interfaces
Alex Deucher (1):
drm/amdgpu: disable BAR resize on Dell G5 SE
Alex Williamson (1):
vfio/platform: check the bounds of read/write syscalls
Alexander Hölzl (1):
can: j1939: j1939_sk_send_loop(): fix unable to send messages with data length zero
Alexander Shishkin (2):
intel_th: pci: Add Panther Lake-H support
intel_th: pci: Add Panther Lake-P/U support
Alexander Stein (1):
usb: chipidea: ci_hdrc_imx: use dev_err_probe()
Alexander Sverdlin (1):
leds: lp8860: Write full EEPROM, not only half of it
Alexander Usyskin (1):
mei: me: add panther lake P DID
Amir Goldstein (1):
ovl: use wrappers to all vfs_*xattr() calls
Anastasia Belova (1):
clk: qcom: clk-rpmh: prevent integer overflow in recalc_rate
Andrea Mayer (2):
seg6: add support for SRv6 H.Encaps.Red behavior
seg6: add support for SRv6 H.L2Encaps.Red behavior
Andreas Kemnade (1):
wifi: wlcore: fix unbalanced pm_runtime calls
Andrew Cooper (1):
x86/static-call: Remove early_boot_irqs_disabled check to fix Xen PVH dom0
Andrey Vatoropin (1):
power: supply: da9150-fg: fix potential overflow
Andy Shevchenko (2):
xhci: pci: Fix indentation in the PCI device ID definitions
eeprom: digsy_mtc: Make GPIO lookup table match the device
Andy Strohman (1):
batman-adv: fix panic during interface removal
AngeloGioacchino Del Regno (2):
soc: mediatek: mtk-devapc: Switch to devm_clk_get_enabled()
usb: typec: tcpci_rt1711h: Unmask alert interrupts to fix functionality
Antoine Tenart (2):
net: avoid race between device unregistration and ethnl ops
net: gso: fix ownership in __udp_gso_segment
Ard Biesheuvel (2):
efi: Avoid cold plugged memory for placing the kernel vmlinux.lds: Ensure that const vars with relocations are mapped R/O
Armin Wolf (1):
platform/x86: acer-wmi: Ignore AC events
Arnaldo Carvalho de Melo (1):
perf top: Don't complain about lack of vmlinux when not resolving some kernel samples
Arnd Bergmann (2):
media: cxd2841er: fix 64-bit division on gcc-9
sunrpc: suppress warnings for unused procfs functions
Artur Weber (3):
gpio: bcm-kona: Fix GPIO lock/unlock for banks above bank 0
gpio: bcm-kona: Make sure GPIO bits are unlocked when requesting IRQ
gpio: bcm-kona: Add missing newline to dev_err format string
BH Hsieh (1):
phy: tegra: xusb: reset VBUS & ID OVERRIDE
Ba Jing (1):
ktest.pl: Remove unused declarations in run_bisect_test function
Badhri Jagan Sridharan (1):
usb: dwc3: gadget: Prevent irq storm when TH re-executes
Bartosz Golaszewski (3):
crypto: qce - fix goto jump in error path
crypto: qce - unregister previously registered algos in error path
gpio: xilinx: remove excess kernel doc
Bitterblue Smith (1):
wifi: rtlwifi: rtl8821ae: Fix media status report
Bjorn Andersson (1):
dt-bindings: leds: Add Qualcomm Light Pulse Generator binding
Bo Gan (1):
clk: analogbits: Fix incorrect calculation of vco rate delta
Borislav Petkov (1):
APEI: GHES: Have GHES honor the panic= setting
Breno Leitao (2):
net: Add non-RCU dev_getbyhwaddr() helper
arp: switch to dev_getbyhwaddr() in arp_req_set_public()
Caleb Sander Mateos (1):
nvme/ioctl: add missing space in err message
Calvin Owens (1):
pps: Fix a use-after-free
Carlos Galo (1):
mm: update mark_victim tracepoints fields
Carlos Llamas (1):
lockdep: Fix upper limit for LOCKDEP_*_BITS configs
Catalin Marinas (1):
arm64: mte: Do not allow PROT_MTE on MAP_HUGETLB user mappings
Chao Yu (1):
f2fs: fix to wait dio completion
Charles Han (2):
ipmi: ipmb: Add check devm_kasprintf() returned value
HID: multitouch: Add NULL check in mt_input_configured
Chen Ni (1):
media: lmedm04: Handle errors for lme2510_int_read
Chen Ridong (4):
padata: fix UAF in padata_reorder
padata: add pd get/put refcnt helper
padata: avoid UAF for reorder_work
memcg: fix soft lockup in the OOM process
Chen-Yu Tsai (7):
regulator: dt-bindings: mt6315: Drop regulator-compatible property
arm64: dts: mediatek: mt8173-evb: Drop regulator-compatible property
arm64: dts: mediatek: mt8173-elm: Drop regulator-compatible property
arm64: dts: mediatek: mt8173-elm: Fix MT6397 PMIC sub-node names
arm64: dts: mediatek: mt8173-evb: Fix MT6397 PMIC sub-node names
arm64: dts: mediatek: mt8183-kukui-jacuzzi: Drop pp3300_panel voltage settings
arm64: dts: mediatek: mt8183: Disable DSI display output by default
Chenghai Huang (1):
crypto: hisilicon/sec2 - optimize the error return process
Chengming Zhou (1):
sched/psi: Use task->psi_flags to clear in CPU migration
Chenyuan Yang (1):
net: davicom: fix UAF in dm9000_drv_remove
Chester A. Unal (1):
USB: serial: option: add MeiG Smart SLM828
Christian Brauner (3):
acct: perform last write from workqueue
acct: block access to kernel internal filesystems
ovl: pass ofs to creation operations
Christian Gmeiner (1):
drm/v3d: Stop active perfmon if it is being destroyed
Christian Heusel (1):
Revert "drivers/card_reader/rtsx_usb: Restore interrupt based detection"
Christoph Hellwig (2):
block: deprecate autoloading based on dev_t
scsi: core: Don't memset() the entire scsi_cmnd in scsi_init_command()
Christophe Leroy (3):
select: Fix unbalanced user_access_end()
powerpc/64s: Rewrite __real_pte() and __rpte_to_hidx() as static inline powerpc/code-patching: Fix KASAN hit by not flagging text patching area as VM_ALLOC
Chuck Lever (1):
NFSD: Reset cb_seq_status after NFS4ERR_DELAY
Claudiu Beznea (6):
ASoC: renesas: rz-ssi: Use only the proper amount of dividers
serial: sh-sci: Drop __initdata macro for port_cfg
serial: sh-sci: Do not probe the serial port if its slot in sci_ports[] is in use
usb: renesas_usbhs: Call clk_put()
usb: renesas_usbhs: Use devm_usb_get_phy()
usb: renesas_usbhs: Flush the notify_hotplug_work
Cody Eksal (1):
clk: sunxi-ng: a100: enable MMC clock reparenting
Colin Ian King (1):
afs: remove variable nr_servers
Cong Wang (3):
netem: Update sch->q.qlen before qdisc_tree_reduce_backlog()
flow_dissector: Fix handling of mixed port and port-range keys
flow_dissector: Fix port range key handling in BPF conversion
Cosmin Tanislav (1):
media: mc: fix endpoint iteration
Dai Ngo (1):
NFSD: fix hang in nfsd4_shutdown_callback
Dan Carpenter (7):
rdma/cxgb4: Prevent potential integer overflow on 32bit
tipc: re-order conditions in tipc_crypto_key_rcv()
binfmt_flat: Fix integer overflow bug on 32 bit systems
NFC: nci: Add bounds checking in nci_hci_create_pipe()
media: imx-jpeg: Fix potential error pointer dereference in detach_pm()
ksmbd: fix integer overflows on 32 bit systems
ASoC: renesas: rz-ssi: Add a check for negative sample_space
Daniel Lee (1):
f2fs: Introduce linear search for dentries
Daniel Wagner (1):
nvme: handle connectivity loss in nvme_set_queue_count
Daniil Dulov (1):
HID: appleir: Fix potential NULL dereference at raw event handle
Darrick J. Wong (2):
xfs: report realtime block quota limits on realtime directories
xfs: don't over-report free space or inodes in statvfs
Dave Stevenson (1):
media: i2c: ov9282: Correct the exposure offset
David Hildenbrand (1):
KVM: s390: vsie: fix some corner-cases when grabbing vsie pages
David Howells (5):
afs: Fix EEXIST error returned from afs_rmdir() to be ENOTEMPTY
afs: Fix directory format encoding struct
afs: Fix the fallback handling for the YFS.RemoveFile2 RPC call
afs: Make it possible to find the volumes that are using a server
afs: Fix the server_list to unuse a displaced server rather than putting it
David Woodhouse (1):
x86/i8253: Disable PIT timer 0 when not in use
Devarsh Thakkar (1):
drm/tidss: Clear the interrupt status for interrupts being disabled
Dheeraj Reddy Jonnalagadda (1):
net: fec: implement TSO descriptor cleanup
Dmitry Antipov (4):
wifi: rtlwifi: remove unused timer and related code
wifi: rtlwifi: remove unused dualmac control leftovers
wifi: cfg80211: adjust allocation of colocated AP data
wifi: brcmsmac: add gain range check to wlc_phy_iqcal_gainparams_nphy()
Dmitry Baryshkov (6):
arm64: dts: qcom: msm8916: correct sleep clock frequency
arm64: dts: qcom: msm8994: correct sleep clock frequency
arm64: dts: qcom: sc7280: correct sleep clock frequency
arm64: dts: qcom: sm6125: correct sleep clock frequency
arm64: dts: qcom: sm8250: correct sleep clock frequency
arm64: dts: qcom: sm8350: correct sleep clock frequency
Dmitry Osipenko (3):
memory: Add LPDDR2-info helpers
memory: tegra20-emc: Support matching timings by LPDDR2 configuration
memory: tegra20-emc: Correct memory device mask
Dmitry Panchenko (1):
ALSA: usb-audio: Re-add sample rate quirk for Pioneer DJM-900NXS2
Dmitry V. Levin (1):
selftests: harness: fix printing of mismatch values in __EXPECT()
Eddie James (1):
tpm: Use managed allocation for bios event log
Edson Juliano Drosdeck (1):
ALSA: hda/realtek: Enable headset mic on Positivo C6400
Edward Adam Davis (1):
media: vidtv: Fix a null-ptr-deref in vidtv_mux_stop_thread
Ekansh Gupta (1):
misc: fastrpc: Fix registered buffer page address
Elson Roy Serrao (1):
usb: roles: set switch registered flag early on
Eric Biggers (1):
crypto: qce - fix priority to be less than ARMv8 CE
Eric Dumazet (20):
ipmr: do not call mr_mfc_uses_dev() for unres entries
net: rose: fix timer races against user threads
net: hsr: fix fill_frame_info() regression vs VLAN packets
net: rose: lock the socket in rose_bind()
ndisc: ndisc_send_redirect() must use dev_get_by_index_rcu()
vrf: use RCU protection in l3mdev_l3_out()
team: better TEAM_OPTION_TYPE_STRING validation
ipv4: add RCU protection to ip4_dst_hoplimit()
net: add dev_net_rcu() helper
ipv4: use RCU protection in rt_is_expired()
ipv4: use RCU protection in inet_select_addr()
ipv4: use RCU protection in __ip_rt_update_pmtu()
ipv6: use RCU protection in ip6_default_advmss()
ndisc: use RCU protection in ndisc_alloc_skb()
neighbour: use RCU protection in __neigh_notify()
arp: use RCU protection in arp_xmit()
openvswitch: use RCU protection in ovs_vport_cmd_fill_info()
ndisc: extend RCU protection in ndisc_send_skb()
ipv6: mcast: add RCU protection to mld_newpack()
llc: do not use skb_get() before dev_queue_xmit()
Erik Schumacher (1):
hwmon: (ad7314) Validate leading zero bits and return error
Eugen Hristev (1):
pstore/blk: trivial typo fixes
Even Xu (1):
HID: Wacom: Add PCI Wacom device support
Fabien Parent (1):
arm64: dts: mediatek: mt8516: remove 2 invalid i2c clocks
Fabio Porcedda (2):
USB: serial: option: add Telit Cinterion FN990B compositions
USB: serial: option: fix Telit Cinterion FN990A name
Fabrice Gasnier (1):
usb: dwc2: gadget: remove of_node reference upon udc_stop
Fabrizio Castro (1):
gpio: rcar: Fix missing of_node_put() call
Fedor Pchelkin (3):
Bluetooth: L2CAP: handle NULL sock pointer in l2cap_sock_alloc
Bluetooth: L2CAP: accept zero as a special value for MTU auto-selection
usb: typec: ucsi: increase timeout for PPM reset operations
Filipe Manana (3):
btrfs: fix use-after-free when attempting to join an aborted transaction
btrfs: fix hole expansion when writing at an offset beyond EOF
btrfs: avoid monopolizing a core when activating a swap file
Florian Westphal (1):
netfilter: nft_flow_offload: update tcp state flags under lock
Gabor Juhos (1):
clk: qcom: clk-alpha-pll: fix alpha mode configuration
Gautham R. Shenoy (1):
cpufreq: ACPI: Fix max-frequency computation
Gavrilov Ilia (1):
drop_monitor: fix incorrect initialization order
Geert Uytterhoeven (1):
dt-bindings: leds: class-multicolor: Fix path to color definitions
Georg Gottleuber (2):
nvme-pci: Add TUXEDO InfinityFlex to Samsung sleep quirk
nvme-pci: Add TUXEDO IBP Gen9 to Samsung sleep quirk
George Lander (1):
ASoC: sun4i-spdif: Add clock multiplier settings
Greg Kroah-Hartman (1):
Linux 5.15.179
Guangguan Wang (1):
net/smc: fix data error when recvmsg with MSG_PEEK flag
Guillaume Nault (1):
selftest: net: Test IPv4 PMTU exceptions with DSCP and ECN
Guixin Liu (1):
scsi: ufs: bsg: Delete bsg_dev when setting up bsg fails
Guo Ren (1):
usb: gadget: udc: renesas_usb3: Fix compiler warning
Hangbin Liu (2):
netdevsim: print human readable IP address
selftests: rtnetlink: update netdevsim ipsec output format
Hans Verkuil (1):
gpu: drm_dp_cec: fix broken CEC adapter properties check
Hans de Goede (2):
mfd: lpc_ich: Add another Gemini Lake ISA bridge PCI device-id
ASoC: Intel: bytcr_rt5640: Add DMI quirk for Vexia Edu Atla 10 tablet 5V
Hao Zhang (1):
mm/page_alloc: fix uninitialized variable
Hao-ran Zheng (1):
btrfs: fix data race when accessing the inode's disk_i_size at btrfs_drop_extents()
Haoxiang Li (5):
drm/komeda: Add check for komeda_get_layer_fourcc_list()
nfp: bpf: Add check for nfp_app_ctrl_msg_alloc()
smb: client: Add check for next_buffer in receive_encrypted_standard()
rapidio: add check for rio_add_net() in rio_scan_alloc_net()
rapidio: fix an API misues when rio_add_net() fails
Haoyu Li (1):
drivers: virt: acrn: hsm: Use kzalloc to avoid info leak in pmcmd_ioctl
Hardik Gajjar (1):
usb: xhci: Add timeout argument in address_device USB HCD callback
Harshal Chaudhari (1):
net: mvpp2: cls: Fixed Non IP flow, with vlan tag flow defination.
He Lugang (1):
HID: multitouch: Add support for lenovo Y9000P Touchpad
He Rongguang (1):
cpupower: fix TSC MHz calculation
Heiko Carstens (2):
s390/futex: Fix FUTEX_OP_ANDN implementation s390/traps: Fix test_monitor_call() inline assembly
Heiko Stuebner (1):
HID: hid-sensor-hub: don't use stale platform-data on remove
Heming Zhao (1):
ocfs2: fix incorrect CPU endianness conversion causing mount failure
Hoku Ishibe (1):
ALSA: hda: intel: Add Dell ALC3271 to power_save denylist
Hou Tao (2):
dm-crypt: don't update io->sector after kcryptd_crypt_write_io_submit()
dm-crypt: track tag_offset in convert_context
Howard Chu (1):
perf trace: Fix runtime error of index out of bounds
Hsin-Te Yuan (2):
arm64: dts: mediatek: mt8183: kenzo: Support second source touchscreen
arm64: dts: mediatek: mt8183: willow: Support second source touchscreen
Hsin-Yi Wang (1):
arm64: dts: mt8183: set DMIC one-wire mode on Damu
Huacai Chen (1):
USB: pci-quirks: Fix HCCPARAMS register error for LS7A EHCI
Ido Schimmel (1):
net: loopback: Avoid sending IP packets without an Ethernet header
Ignat Korchagin (2):
crypto: testmgr - populate RSA CRT parameters in RSA test vectors
crypto: testmgr - some more fixes to RSA test vectors
Ilan Peer (1):
wifi: cfg80211: Handle specific BSSID in 6GHz scanning
Illia Ostapyshyn (1):
Input: allocate keycode for phone linking
Ivan Kokshaysky (3):
alpha: make stack 16-byte aligned (most cases)
alpha: align stack for page fault and user unaligned trap handlers
alpha: replace hardcoded stack offsets with autogenerated ones
Ivan Stepchenko (2):
drm/amdgpu: Fix potential NULL pointer dereference in atomctrl_get_smc_sclk_range_table
mtd: onenand: Fix uninitialized retlen in do_otp_read()
Jacob Moroni (1):
net: atlantic: fix warning during hot unplug
Jakob Koschel (1):
rtlwifi: replace usage of found with dedicated list iterator variable
Jakob Unterwurzacher (1):
arm64: dts: rockchip: increase gmac rx_delay on rk3399-puma
Jakub Kicinski (2):
net: netdevsim: try to close UDP port harness races
net: ipv6: fix dst refleaks in rpl, seg6 and ioam6 lwtunnels
Jamal Hadi Salim (1):
net: sched: Disallow replacing of child qdisc from one parent to another
Jann Horn (3):
usb: cdc-acm: Check control transfer buffer size before access
usb: cdc-acm: Fix handling of oversized fragments
partitions: mac: fix handling of bogus partition table
Jarkko Sakkinen (2):
tpm: Change to kvalloc() in eventlog/acpi.c x86/sgx: Fix size overflows in sgx_encl_create()
Jason Xing (1):
net-timestamp: support TCP GSO case for a few missing flags
Javier Carrasco (1):
iio: light: as73211: fix channel handling in only-color triggered buffer
Jennifer Berringer (1):
nvmem: core: improve range check for nvmem_cell_write()
Jiachen Zhang (1):
perf report: Fix misleading help message about --demangle
Jian Shen (1):
net: hns3: fix oops when unload drivers paralleling
Jianbo Liu (1):
xfrm: replay: Fix the update of replay_esn->oseq_hi for GSO
Jiaqing Zhao (3):
can: ems_pci: move ASIX AX99100 ids to pci_ids.h
serial: 8250_pci: add support for ASIX AX99100
parport_pc: add support for ASIX AX99100
Jiasheng Jiang (4):
media: marvell: Add check for clk_enable()
media: mipi-csis: Add check for clk_enable()
media: camif-core: Add check for clk_enable()
regmap-irq: Add missing kfree()
Jiayuan Chen (1):
ppp: Fix KMSAN uninit-value warning with bpf
Jill Donahue (1):
USB: gadget: f_midi: f_midi_complete to call queue_work
Jinliang Zheng (1):
fs: fix proc_handler for sysctl_nr_open
Jiri Kosina (2):
Revert "HID: multitouch: Add support for lenovo Y9000P Touchpad"
HID: multitouch: fix support for Goodix PID 0x01e9
Jiri Pirko (1):
net: treat possible_net_t net pointer as an RCU one and add read_pnet_rcu()
Joe Hattori (10):
ACPI: fan: cleanup resources in the error path of .probe()
leds: netxbig: Fix an OF node reference leak in netxbig_leds_get_of_pdata()
regulator: of: Implement the unwind path of of_regulator_match()
crypto: ixp4xx - fix OF node reference leaks in init_ixp_crypto()
memory: tegra20-emc: fix an OF node reference bug in tegra_emc_find_node_by_ram_code()
fbdev: omapfb: Fix an OF node leak in dss_of_port_get_parent_device()
mtd: hyperbus: hbmc-am654: fix an OF node reference leak
staging: media: imx: fix OF node leak in imx_media_add_of_subdevs()
dmaengine: ti: edma: fix OF node reference leaks in edma_driver
usb: chipidea: ci_hdrc_imx: decrement device's refcount in .remove() and in the error path of .probe()
Johan Hovold (1):
USB: serial: option: drop MeiG Smart defines
Johannes Berg (1):
wifi: iwlwifi: limit printed string from FW file
John Keeping (2):
usb: gadget: f_midi: fix MIDI Streaming descriptor lengths
serial: 8250: Fix fifo underflow on flush
John Ogness (1):
kdb: Do not assume write() callback available
John Veness (1):
ALSA: hda/conexant: Add quirk for HP ProBook 450 G4 mute LED
Jos Wang (1):
usb: typec: tcpm: set SRC_SEND_CAPABILITIES timeout to PD_T_SENDER_RESPONSE
Josef Bacik (1):
btrfs: convert BUG_ON in btrfs_reloc_cow_block() to proper error handling
Juergen Gross (3):
x86/xen: fix xen_hypercall_hvm() to not clobber %rbx x86/xen: add FRAME_END to xen_hypercall_hvm() x86/xen: allow larger contiguous memory regions in PV guests
Justin Iurman (7):
include: net: add static inline dst_dev_overhead() to dst.h
net: ipv6: seg6_iptunnel: mitigate 2-realloc issue
net: ipv6: fix dst ref loop on input in seg6 lwt
net: ipv6: rpl_iptunnel: mitigate 2-realloc issue
net: ipv6: fix dst ref loop on input in rpl lwt
net: ipv6: fix dst ref loop in ila lwtunnel
net: ipv6: fix missing dst ref drop in ila lwtunnel
Kai Ye (2):
crypto: hisilicon/sec - add some comments for soft fallback
crypto: hisilicon/sec - delete redundant blank lines
Kailang Yang (2):
ALSA: hda/realtek: Fixup ALC225 depop procedure
ALSA: hda/realtek: update ALC222 depop optimize
Kan Liang (1):
perf/core: Fix low freq setting via IOC_PERIOD
Kaustabh Chakraborty (1):
phy: exynos5-usbdrd: fix MPLL_MULTIPLIER and SSC_REFCLKSEL masks in refclk
Keisuke Nishimura (1):
nvme: Add error check for xa_store in nvme_get_effects_log
Kexy Biscuit (1):
MIPS: Loongson64: remove ROM Size unit in boardinfo
King Dix (1):
PCI: rcar-ep: Fix incorrect variable used when calling devm_request_mem_region()
Koichiro Den (2):
Revert "btrfs: avoid monopolizing a core when activating a swap file"
gpio: aggregator: protect driver attr handlers against module unload
Konrad Dybcio (2):
arm64: dts: qcom: msm8996: Fix up USB3 interrupts
arm64: dts: qcom: msm8994: Describe USB interrupts
Kory Maincent (1):
net: sh_eth: Fix missing rtnl lock in suspend/resume path
Krzysztof Karas (1):
drm/i915/selftests: avoid using uninitialized context
Krzysztof Kozlowski (6):
dt-bindings: leds: class-multicolor: reference class directly in multi-led node
arm64: dts: qcom: sm8350: Fix MPSS memory length
soc: qcom: smem_state: fix missing of_node_put in error path
can: c_can: fix unbalanced runtime PM disable in error path
soc: mediatek: mtk-devapc: Fix leaking IO map on error paths
soc: mediatek: mtk-devapc: Fix leaking IO map on driver remove
Kuan-Wei Chiu (2):
printk: Fix signed integer overflow when defining LOG_BUF_LEN_MAX perf bench: Fix undefined behavior in cmpworker()
Kuniyuki Iwashima (3):
geneve: Fix use-after-free in geneve_find_dev().
gtp: Suppress list corruption splat in gtp_net_exit_batch_rtnl().
geneve: Suppress list corruption splat in geneve_destroy_tunnels().
Kyle Tso (2):
usb: dwc3: core: Defer the probe until USB power supply ready
usb: typec: tcpci: Prevent Sink disconnection before vPpsShutdown in SPR PPS
Laurent Pinchart (1):
media: uvcvideo: Fix double free in error path
Lei He (2):
crypto: testmgr - fix wrong key length for pkcs1pad
crypto: testmgr - Fix wrong test case of RSA
Lei Huang (1):
USB: quirks: add USB_QUIRK_NO_LPM quirk for Teclast dist
Lenny Szubowicz (1):
tg3: Disable tg3 PCIe AER on system reboot
Leo Stone (1):
safesetid: check size of policy writes
Leon Romanovsky (1):
RDMA/mlx4: Avoid false error about access to uninitialized gids array
Li Lingfeng (1):
nfsd: clear acl_access/acl_default after releasing them
Li Zetao (1):
neighbour: delete redundant judgment statements
Lianqin Hu (1):
ALSA: usb-audio: Add delay quirk for iBasso DC07 Pro
Lijo Lazar (1):
drm/amd/pm: Mark MM activity as unsupported
Lin Yujun (1):
hexagon: Fix unbalanced spinlock in die()
Liu Jian (1):
net: let net.core.dev_weight always be non-zero
Liu Ye (1):
selftests/net/ipsec: Fix Null pointer dereference in rtattr_pack()
Long Li (1):
scsi: storvsc: Set correct data length for sending SCSI command without payload
Luca Weiss (3):
media: i2c: imx412: Add missing newline to prints
clk: qcom: gcc-sm6350: Add missing parent_map for two clocks
nvmem: qcom-spmi-sdam: Set size in struct nvmem_config
Luis Chamberlain (3):
sysctl: share unsigned long const values
fs: move inode sysctls to its own file
fs: move fs stat sysctls to file_table.c
Luiz Augusto von Dentz (1):
Bluetooth: L2CAP: Fix L2CAP_ECRED_CONN_RSP response
Luo Yifan (1):
tools/bootconfig: Fix the wrong format specifier
Ma Jun (1):
drm/amdgpu: Check extended configuration space register when system uses large bar
Maarten Lankhorst (1):
drm/modeset: Handle tiled displays in pan_display_atomic.
Maciej S. Szmigiero (1):
net: wwan: iosm: Fix hibernation by re-binding the driver around it
Mahdi Arghavani (1):
tcp_cubic: fix incorrect HyStart round start detection
Maher Sanalla (1):
net/mlxfw: Drop hard coded max FW flash image size
Maksym Glubokiy (1):
net: extract port range fields from fl_flow_key
Maksym Planeta (1):
Grab mm lock before grabbing pt lock
Manivannan Sadhasivam (1):
bus: mhi: host: pci_generic: Use pci_try_reset_function() to avoid deadlock
Marcel Hamer (1):
wifi: brcmfmac: fix NULL pointer dereference in brcmf_txfinalize()
Marco Elver (2):
kfence: allow use of a deferrable timer
kfence: skip __GFP_THISNODE allocations on NUMA systems
Marco Leogrande (1):
tools/testing/selftests/bpf/test_tc_tunnel.sh: Fix wait for server bind
Marek Szyprowski (1):
usb: gadget: Fix setting self-powered state on suspend
Marek Vasut (2):
clk: imx8mp: Fix clkout1/2 support
USB: cdc-acm: Fill in Renesas R-Car D3 USB Download mode quirk
Mark Tomlinson (1):
gpio: pca953x: Improve interrupt support
Mark Zhang (1):
IB/mlx5: Set and get correct qp_num for a DCT QP
Masahiro Yamada (7):
genksyms: fix memory leak when the same symbol is added from source
genksyms: fix memory leak when the same symbol is read from *.symref file
kconfig: fix file name in warnings when loading KCONFIG_DEFCONFIG_LIST
kconfig: require a space after '#' for valid input
kconfig: remove unused code for S_DEF_AUTO in conf_read_simple()
kconfig: deduplicate code in conf_read_simple()
kconfig: fix memory leak in sym_warn_unmet_dep()
Mateusz Jończyk (1):
mips/math-emu: fix emulation of the prefx instruction
Mathias Nyman (1):
USB: Add USB_QUIRK_NO_LPM quirk for sony xperia xz1 smartphone
Matthew Wilcox (Oracle) (1):
ocfs2: handle a symlink read error correctly
Matti Vaittinen (1):
dt-bindings: mfd: bd71815: Fix rsense and typos
Maud Spierings (1):
hwmon: (ntc_thermistor) Fix the ncpXXxh103 sensor table
Maxime Ripard (1):
drm/probe-helper: Create a HPD IRQ event helper for a single connector
Mehdi Djait (1):
media: ccs: Fix cleanup order in ccs_probe()
Meir Elisha (1):
nvmet-tcp: Fix a possible sporadic response drops in weakly ordered arch
Miao Li (1):
usb: quirks: Add DELAY_INIT and NO_LPM for Prolific Mass Storage Card Reader
Michael Ellerman (1):
powerpc/64s/mm: Move __real_pte stubs into hash-4k.h
Michael Guralnik (2):
RDMA/mlx5: Enforce umem boundaries for explicit ODP page faults RDMA/mlx5: Fix indirect mkey ODP page count
Michal Luczaj (4):
vsock: Allow retrying on connect() failure bpf, vsock: Invoke proto::close on close()
vsock: Keep the binding until socket destruction
vsock: Orphan socket after transport release
Michal Pecio (2):
usb: xhci: Fix NULL pointer dereference on certain command aborts
usb: xhci: Enable the TRB overfetch quirk on VIA VL805
Mickaël Salaün (3):
landlock: Move filesystem helpers and add a new one
landlock: Handle weird files selftests/landlock: Fix error message
Mike Marshall (1):
orangefs: fix a oob in orangefs_debug_write
Mike Rapoport (2):
xen/x86: free_p2m_page: use memblock_free_ptr() to free a virtual pointer
memblock: drop memblock_free_early_nid() and memblock_free_early()
Mike Snitzer (1):
pnfs/flexfiles: retry getting layout segment for reads
Milos Reljin (1):
net: phy: c45-tjaxx: add delay between MDIO write and read in soft_reset
Mingcong Bai (1):
platform/x86: thinkpad_acpi: Add battery quirk for ThinkPad X131e
Mingwei Zheng (1):
spi: zynq-qspi: Add check for clk_enable()
Miri Korenblit (1):
wifi: iwlwifi: avoid memory leak
Murad Masimov (1):
ALSA: usx2y: validate nrpacks module parameter on probe
Namjae Jeon (1):
exfat: fix soft lockup in exfat_clear_bitmap
Narayana Murty N (1):
powerpc/pseries/eeh: Fix get PE state translation
Nathan Chancellor (4):
efi: libstub: Use '-std=gnu11' to fix build with GCC 15
kbuild: Move -Wenum-enum-conversion to W=2 x86/boot: Use '-std=gnu11' to fix build with GCC 15
arm64: Handle .ARM.attributes section in linker scripts
Neil Armstrong (2):
dt-bindings: mmc: controller: clarify the address-cells description
arm64: dts: qcom: sm8150-microsoft-surface-duo: fix typos in da7280 properties
NeilBrown (1):
md: select BLOCK_LEGACY_AUTOLOAD
Nicolas Ferre (1):
ARM: at91: pm: change BU Power Switch to automatic mode
Nicolas Frattaroli (1):
ASoC: es8328: fix route from DAC to output
Nikita Zhandarovich (6):
net/rose: prevent integer overflows in rose_setsockopt()
net: usb: rtl8150: enable basic endpoint checking
nilfs2: fix possible int overflows in nilfs_fiemap()
usbnet: gl620a: fix endpoint checking in genelink_bind()
wifi: cfg80211: regulatory: improve invalid hints checking
usb: atm: cxacru: fix a flaw in existing endpoint checks
Niklas Söderlund (1):
gpio: rcar: Use raw_spinlock to protect register access
Nikolay Aleksandrov (1):
be2net: fix sleeping while atomic bugs in be_ndo_bridge_getlink
Nikolay Kuratov (1):
ftrace: Avoid potential division by zero in function_stat_show()
Niravkumar L Rabara (4):
mtd: rawnand: cadence: fix error code in cadence_nand_init()
mtd: rawnand: cadence: use dma_map_resource for sdma address
mtd: rawnand: cadence: fix incorrect device in dma_unmap_single
mtd: rawnand: cadence: fix unchecked dereference
Octavian Purdila (1):
team: prevent adding a device which is already a team device lower
Oleksij Rempel (1):
rtc: pcf85063: fix potential OOB write in PCF85063 NVMEM read
Olga Kornievskaia (2):
NFSv4.2: fix COPY_NOTIFY xdr buf size calculation NFSv4.2: mark OFFLOAD_CANCEL MOVEABLE
Oliver Neukum (1):
media: rc: iguanair: handle timeouts
Olivier Gayot (1):
block: fix conversion of GPT partition name to 7-bit
Oscar Maes (1):
vlan: enforce underlying device type
Pablo Neira Ayuso (1):
netfilter: nf_tables: reject mismatching sum of field_len with set key length
Paolo Abeni (3):
mptcp: consolidate suboption status
mptcp: prevent excessive coalescing on receive
mptcp: always handle address removal under msk socket lock
Patrick Bellasi (1):
x86/cpu/kvm: SRSO: Fix possible missing IBPB on VM-Exit
Patrisious Haddad (1):
RDMA/mlx5: Fix bind QP error cleanup flow
Paul Fertser (3):
net/ncsi: fix locking in Get MAC Address handling
net/ncsi: wait for the last response to Deselect Package before configuring channel net/ncsi: use dev_set_mac_address() for Get MC MAC Address handling
Paul Menzel (1):
scsi: mpt3sas: Set ioc->manu_pg11.EEDPTagMode directly to 1
Pawel Chmielewski (1):
intel_th: pci: Add Arrow Lake support
Pawel Laszczak (1):
usb: hub: lack of clearing xHC resources
Peiyang Wang (1):
net: hns3: make sure ptp clock is unregister and freed if hclge_ptp_get_cycle returns an error
Peter Delevoryas (1):
net/ncsi: Add NC-SI 1.2 Get MC MAC Address command
Peter Zijlstra (1):
sched/fair: Fix value reported by hot tasks pulled in /proc/schedstat
Petr Tesarik (1):
xen: remove a confusing comment on auto-translated guest I/O
Philipp Stanner (1):
drm/sched: Fix preprocessor guard
Phillip Lougher (1):
Squashfs: check the inode number is not the invalid value of zero
Philo Lu (1):
ipvs: Always clear ipvs_property flag in skb_scrub_packet()
Prasad Pandit (1):
firmware: iscsi_ibft: fix ISCSI_IBFT Kconfig entry
Prashanth K (2):
usb: gadget: Set self-powered based on MaxPower and bmAttributes
usb: gadget: Check bmAttributes only if configuration is valid
Pratyush Yadav (1):
spi: dt-bindings: add schema listing peripheral-specific properties
Puranjay Mohan (1):
bpf: Send signals asynchronously if !preemptible
Qu Wenruo (1):
btrfs: output the reason for open_ctree() failure
Quang Le (1):
pfifo_tail_enqueue: Drop new packet when sch->limit == 0
Quentin Monnet (1):
libbpf: Fix segfault due to libelf functions not setting errno
Quinn Tran (1):
scsi: qla2xxx: Move FCE Trace buffer allocation to user control
Radu Rendec (1):
arm64: cacheinfo: Avoid out-of-bounds write to cacheinfo array
Rafał Miłecki (2):
ARM: dts: mediatek: mt7623: fix IR nodename
bgmac: reduce max frame size to support just MTU 1500
Ralf Schlatterbeck (1):
spi-mxs: Fix chipselect glitch
Ramesh Thomas (1):
vfio/pci: Enable iowrite64 and ioread64 for vfio pci
Randolph Ha (1):
i2c: Force ELAN06FA touchpad I2C bus freq to 100KHz
Randy Dunlap (2):
partitions: ldm: remove the initial kernel-doc notation
efi: sysfb_efi: fix W=1 warnings when EFI is not set
Reinette Chatre (4):
x86/sgx: Support loading enclave page without VMA permissions check x86/sgx: Move PTE zap code to new sgx_zap_enclave_ptes() x86/sgx: Export sgx_encl_{grow,shrink}()
x86/sgx: Support VA page allocation without reclaiming
Ricardo B. Marliere (1):
ktest.pl: Check kernelrelease return in get_version
Ricardo Ribalda (10):
media: uvcvideo: Propagate buf->error to userspace
media: uvcvideo: Fix event flags in uvc_ctrl_send_events
media: uvcvideo: Remove redundant NULL assignment
media: uvcvideo: Set error_idx during ctrl_commit errors
media: uvcvideo: Refactor iterators
media: uvcvideo: Only save async fh if success
media: uvcvideo: Avoid invalid memory access
media: uvcvideo: Avoid returning invalid controls
media: uvcvideo: Fix crash during unbind if gpio unit is in use
media: uvcvideo: Remove dangling pointers
Richard Thier (1):
drm/radeon: Fix rs400_gpu_init for ATI mobility radeon Xpress 200M
Rik van Riel (1):
x86/mm/tlb: Only trim the mm_cpumask once a second
Rob Herring (1):
dt-bindings: Another pass removing cases of 'allOf' containing a '$ref'
Rob Herring (Arm) (1):
Revert "of: reserved-memory: Fix using wrong number of cells to get property 'alignment'"
Roger Quadros (1):
net: ethernet: ti: am65-cpsw: fix freeing IRQ in am65_cpsw_nuss_remove_tx_chns()
Romain Naour (1):
ARM: dts: dra7: Add bus_dma_limit for l4 cfg bus
Roman Li (1):
drm/amd/display: Fix HPD after gpu reset
Russell Senior (1):
x86/CPU: Fix warm boot hang regression on AMD SC1100 SoC systems
Ryan Roberts (1):
mm: don't skip arch_sync_kernel_mappings() in error paths
Ryusuke Konishi (6):
nilfs2: do not output warnings when clearing dirty buffers
nilfs2: do not force clear folio if buffer is referenced
nilfs2: protect access to buffers with no active references
nilfs2: move page release outside of nilfs_delete_entry and nilfs_set_link
nilfs2: eliminate staggered calls to kunmap in nilfs_rename
nilfs2: handle errors that nilfs_prepare_chunk() may return
Sakari Ailus (2):
media: ccs: Clean up parsed CCS static data on parse failure
media: ccs: Fix CCS static data parsing for large block sizes
Sam Bobrowicz (1):
media: ov5640: fix get_light_freq on auto
Satya Priya Kakitapalli (1):
clk: qcom: gcc-mdm9607: Fix cmd_rcgr offset for blsp1_uart6 rcg
Sean Anderson (3):
gpio: xilinx: Convert gpio_lock to raw spinlock
tty: xilinx_uartps: split sysrq handling
net: cadence: macb: Synchronize stats calculations
Sean Christopherson (3):
KVM: Explicitly verify target vCPU is online in kvm_get_vcpu()
KVM: x86: Reject Hyper-V's SEND_IPI hypercalls if local APIC isn't in-kernel perf/x86/intel: Ensure LBRs are disabled when a CPU is starting
Sean Rhodes (1):
drivers/card_reader/rtsx_usb: Restore interrupt based detection
Sebastian Andrzej Siewior (1):
module: Extend the preempt disabled section in dereference_symbol_descriptor().
Selvarasu Ganesan (1):
usb: dwc3: Fix timeout issue during controller enter/exit from halt state
Sergey Senozhatsky (2):
kconfig: add warn-unknown-symbols sanity check
kconfig: WERROR unmet symbol dependency
Shakeel Butt (1):
cgroup: fix race between fork and cgroup.kill
Shawn Lin (1):
mmc: core: Respect quirk_max_rate for non-UHS SDIO card
Shay Drory (1):
net/mlx5: IRQ, Fix null string in debug print
Stas Sergeev (1):
tun: fix group permission check
Stefan Eichenberger (1):
usb: core: fix pipe creation for get_bMaxPacketSize0
Stephan Gerhold (1):
soc: qcom: socinfo: Avoid out of bounds read of serial number
Su Yue (2):
ocfs2: mark dquot as inactive if failed to start trans while releasing dquot
ocfs2: check dir i_size in ocfs2_find_entry
Sui Jingfeng (1):
drm/etnaviv: Fix page property being used for non writecombine buffers
Suleiman Souhlal (1):
sched: Don't try to catch up excess steal time.
Sultan Alsawaf (unemployed) (1):
cpufreq: schedutil: Fix superfluous updates caused by need_freq_update
Sumit Garg (1):
tee: optee: Fix supplicant wait loop
Sven Eckelmann (3):
batman-adv: Ignore neighbor throughput metrics in error case
batman-adv: Drop initialization of flexible ethtool_link_ksettings
batman-adv: Drop unmanaged ELP metric worker
Sven Schwermer (2):
dt-bindings: leds: Optional multi-led unit address
dt-bindings: leds: Add multicolor PWM LED bindings
Takashi Iwai (2):
PCI/DPC: Quirk PIO log size for Intel Raptor Lake-P
ALSA: usb-audio: Avoid dropping MIDI events at closing multiple ports
Tetsuo Handa (1):
tomoyo: don't emit warning in tomoyo_write_control()
Thadeu Lima de Souza Cascardo (10):
wifi: rtlwifi: do not complete firmware loading needlessly
wifi: rtlwifi: rtl8192se: rise completion of firmware loading as last step
wifi: rtlwifi: wait for firmware loading before releasing memory
wifi: rtlwifi: fix init_sw_vars leak when probe fails
wifi: rtlwifi: usb: fix workqueue leak when probe fails
wifi: rtlwifi: remove unused check_buddy_priv
wifi: rtlwifi: destroy workqueue at rtl_deinit_core
wifi: rtlwifi: fix memory leaks and invalid access at probe error path
wifi: rtlwifi: pci: wait for firmware loading before releasing memory Revert "media: uvcvideo: Require entities to have a non-zero unique ID"
Thinh Nguyen (7):
usb: gadget: f_tcm: Fix Get/SetInterface return value
usb: gadget: f_tcm: Don't free command immediately
usb: gadget: f_tcm: Translate error to sense
usb: gadget: f_tcm: Decrement command ref count on cleanup
usb: gadget: f_tcm: ep_autoconfig with fullspeed endpoint
usb: gadget: f_tcm: Don't prepare BOT write request twice
usb: dwc3: Set SUSPENDENABLE soon after phy init
Thomas Gleixner (3):
genirq: Make handle_enforce_irqctx() unconditionally available sched/core: Prevent rescheduling when interrupts are disabled
intel_idle: Handle older CPUs, which stop the TSC in deeper C states, correctly
Thomas Weißschuh (4):
padata: fix sysfs store callback check
ptp: Properly handle compat ioctls
ptp: Ensure info->enable callback is always set
kbuild: userprogs: use correct lld when linking through clang
Thomas Zimmermann (2):
m68k: vga: Fix I/O defines
drm/rockchip: cdn-dp: Use drm_connector_helper_hpd_irq_event()
Titus Rwantare (1):
hwmon: (pmbus) Initialise page count in pmbus_identify()
Toke Høiland-Jørgensen (1):
sched: sch_cake: add bounds checks to host bulk flow fairness counts
Tomi Valkeinen (1):
drm/tidss: Fix issue in irq handling causing irq-flood issue
Tyrone Ting (1):
i2c: npcm: disable interrupt enable bit before devm_request_irq
Uwe Kleine-König (4):
mtd: hyperbus: Make hyperbus_unregister_device() return void
mtd: hyperbus: hbmc-am654: Convert to platform remove callback returning void
usb: chipidea/ci_hdrc_imx: Convert to platform remove callback returning void soc/mediatek: mtk-devapc: Convert to platform remove callback returning void
Vadim Fedorenko (1):
net/mlx5: use do_aux_work for PHC overflow checks
Val Packett (4):
arm64: dts: mediatek: mt8516: fix GICv2 range
arm64: dts: mediatek: mt8516: fix wdt irq type
arm64: dts: mediatek: mt8516: add i2c clock-div property
arm64: dts: mediatek: mt8516: reserve 192 KiB for TF-A
Vasiliy Kovalev (1):
ovl: fix UAF in ovl_dentry_update_reval by moving dput() in ovl_link_up
Ville Syrjälä (1):
drm/i915: Drop 64bpp YUV formats from ICL+ SDR planes
Viresh Kumar (1):
cpufreq: s3c64xx: Fix compilation warning
Visweswara Tanuku (1):
slimbus: messaging: Free transaction ID in delayed interrupt scenario
Vitaliy Shevtsov (2):
wifi: nl80211: reject cooked mode if it is set along with other flags
caif_virtio: fix wrong pointer check in cfv_probe()
Vladimir Vdovin (1):
net: ipv4: Cache pmtu for all packet paths if multipath enabled
Vladimir Zapolskiy (1):
arm64: dts: qcom: sdm845: Fix interrupt types of camss interrupts
Waiman Long (2):
clocksource: Use pr_info() for "Checking clocksource synchronization" message
clocksource: Use migrate_disable() to avoid calling get_random_u32() in atomic context
Wang Hai (1):
tcp: Defer ts_recent changes until req is owned
WangYuli (2):
wifi: mt76: mt76u_vendor_request: Do not print error messages when -EPROTO
MIPS: ftrace: Declare ftrace_get_parent_ra_addr() as static
Wei Fang (3):
net: enetc: fix the off-by-one issue in enetc_map_tx_buffs()
net: enetc: update UDP checksum when updating originTimestamp field
net: enetc: correct the xdp_tx statistics
Wenkai Lin (2):
crypto: hisilicon/sec2 - fix for aead icv error
crypto: hisilicon/sec2 - fix for aead invalid authsize
Wentao Liang (4):
PM: hibernate: Add error handling for syscore_suspend()
xfs: Add error handling for xfs_reflink_cancel_cow_range
gpio: stmpe: Check return value of stmpe_reg_read in stmpe_gpio_irq_sync_unlock
mlxsw: Add return value check for mlxsw_sp_port_get_stats_raw()
Wesley Cheng (1):
usb: dwc3: Increase DWC3 controller halt timeout
Willem de Bruijn (2):
hexagon: fix using plain integer as NULL pointer warning in cmpxchg
tun: revert fix group permission check
Xi Ruoyao (1):
x86/mm: Don't disable PCID when INVLPG has been fixed by microcode
Xiaoming Ni (2):
hung_task: move hung_task sysctl interface to hung_task.c
sysctl: use const for typically used max/min proc sysctls
Xinghuo Chen (1):
hwmon: fix a NULL vs IS_ERR_OR_NULL() check in xgene_hwmon_probe()
Yan Zhai (2):
udp: gso: do not drop small packets when PMTU reduces
bpf: skip non exist keys in generic_map_lookup_batch
Yang Erkun (1):
block: retry call probe after request_module in blk_request_module
Yazen Ghannam (1):
x86/amd_nb: Restrict init function to AMD-based systems
Ye Bin (1):
scsi: core: Clear driver private data when retrying request
Yu Kuai (1):
nbd: don't allow reconnect after disconnect
Yu-Chun Lin (1):
HID: google: fix unused variable warning under !CONFIG_ACPI
Yuanjie Yang (1):
mmc: sdhci-msm: Correctly set the load for the regulator
Yury Norov (1):
clocksource: Replace cpumask_weight() with cpumask_empty()
Zecheng Li (1):
sched/fair: Fix potential memory corruption in child_cfs_rq_on_list
Zhang Lixu (1):
HID: intel-ish-hid: Fix use-after-free issue in ishtp_hid_remove()
Zhongqiu Han (3):
perf header: Fix one memory leakage in process_bpf_btf()
perf header: Fix one memory leakage in process_bpf_prog_info() perf bpf: Fix two memory leakages when calling perf_env__insert_bpf_prog_info()
Zichen Xie (1):
samples/landlock: Fix possible NULL dereference in parse_path()
Zijun Hu (7):
of: reserved-memory: Do not make kmemleak ignore freed address
PCI: endpoint: Destroy the EPC device in devm_pci_epc_destroy()
blk-cgroup: Fix class @block_class's subsystem refcount leakage
of: Correct child specifier used as input of the 2nd nexus node
of: Fix of_find_node_opts_by_path() handling of alias+path+options
of: reserved-memory: Fix using wrong number of cells to get property 'alignment'
PCI: endpoint: Finish virtual EP removal in pci_epf_remove_vepf()
huangshaobo (1):
kfence: enable check kfence canary on panic via boot param
lei he (1):
crypto: testmgr - fix version number of RSA tests
pangliyuan (1):
ubifs: skip dumping tnc tree when zroot is null
xu xin (2):
Namespaceify min_pmtu sysctl
Namespaceify mtu_expires sysctl
Greg Kroah-Hartman
maintainerDocumentation/dev-tools/kfence.rst +12 -0
@@ -41,6 +41,18 @@ guarded by KFENCE. The default is configurable via the Kconfig option ``CONFIG_KFENCE_SAMPLE_INTERVAL``. Setting ``kfence.sample_interval=0`` disables KFENCE. +The sample interval controls a timer that sets up KFENCE allocations. By +default, to keep the real sample interval predictable, the normal timer also +causes CPU wake-ups when the system is completely idle. This may be undesirable +on power-constrained systems. The boot parameter ``kfence.deferrable=1`` +instead switches to a "deferrable" timer which does not force CPU wake-ups on +idle systems, at the risk of unpredictable sample intervals. The default is +configurable via the Kconfig option ``CONFIG_KFENCE_DEFERRABLE``. + +.. warning:: + The KUnit test suite is very likely to fail when using a deferrable timer + since it currently causes very unpredictable sample intervals. + The KFENCE memory pool is of fixed size, and if the pool is exhausted, no further KFENCE allocations occur. With ``CONFIG_KFENCE_NUM_OBJECTS`` (default 255), the number of available guarded objects can be controlled. Each object
Documentation/devicetree/bindings/connector/usb-connector.yaml +1 -2
@@ -104,8 +104,7 @@ properties: - "1.5A" and "3.0A", 5V 1.5A and 5V 3.0A respectively, as defined in USB Type-C Cable and Connector specification, when Power Delivery is not supported. - allOf: - - $ref: /schemas/types.yaml#/definitions/string + $ref: /schemas/types.yaml#/definitions/string enum: - default - 1.5A
Documentation/devicetree/bindings/display/brcm,bcm2711-hdmi.yaml +1 -2
@@ -72,8 +72,7 @@ properties: - const: hpd-removed ddc: - allOf: - - $ref: /schemas/types.yaml#/definitions/phandle + $ref: /schemas/types.yaml#/definitions/phandle description: > Phandle of the I2C controller used for DDC EDID probing
Documentation/devicetree/bindings/display/bridge/adi,adv7511.yaml +2 -3
@@ -76,9 +76,8 @@ properties: adi,input-depth: description: Number of bits per color component at the input. - allOf: - - $ref: /schemas/types.yaml#/definitions/uint32 - - enum: [ 8, 10, 12 ] + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [ 8, 10, 12 ] adi,input-colorspace: description: Input color space.
Documentation/devicetree/bindings/display/bridge/synopsys,dw-hdmi.yaml +2 -3
@@ -26,9 +26,8 @@ properties: reg-io-width: description: Width (in bytes) of the registers specified by the reg property. - allOf: - - $ref: /schemas/types.yaml#/definitions/uint32 - - enum: [1, 4] + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [1, 4] default: 1 clocks:
Documentation/devicetree/bindings/display/panel/display-timings.yaml +1 -2
@@ -31,8 +31,7 @@ properties: patternProperties: "^timing": type: object - allOf: - - $ref: panel-timing.yaml# + $ref: panel-timing.yaml# additionalProperties: false
Documentation/devicetree/bindings/display/ste,mcde.yaml +2 -2
@@ -58,8 +58,8 @@ patternProperties: "^dsi@[0-9a-f]+$": description: subnodes for the three DSI host adapters type: object - allOf: - - $ref: dsi-controller.yaml# + $ref: dsi-controller.yaml# + properties: compatible: const: ste,mcde-dsi
Documentation/devicetree/bindings/input/adc-joystick.yaml +4 -5
@@ -61,11 +61,10 @@ patternProperties: description: EV_ABS specific event code generated by the axis. abs-range: - allOf: - - $ref: /schemas/types.yaml#/definitions/uint32-array - - items: - - description: minimum value - - description: maximum value + $ref: /schemas/types.yaml#/definitions/uint32-array + items: + - description: minimum value + - description: maximum value description: > Minimum and maximum values produced by the axis. For an ABS_X axis this will be the left-most and right-most
Documentation/devicetree/bindings/leds/cznic,turris-omnia-leds.yaml +3 -2
@@ -32,8 +32,9 @@ properties: patternProperties: "^multi-led@[0-9a-b]$": type: object - allOf: - - $ref: leds-class-multicolor.yaml# + $ref: leds-class-multicolor.yaml# + unevaluatedProperties: false + description: This node represents one of the RGB LED devices on Turris Omnia. No subnodes need to be added for subchannels since this controller only
Documentation/devicetree/bindings/leds/leds-class-multicolor.yaml +16 -16
@@ -19,22 +19,22 @@ description: | LED class. Common LED nodes and properties are inherited from the common.yaml within this documentation directory. -patternProperties: - "^multi-led@([0-9a-f])$": - type: object - description: Represents the LEDs that are to be grouped. - properties: - color: - description: | - For multicolor LED support this property should be defined as either - LED_COLOR_ID_RGB or LED_COLOR_ID_MULTI which can be found in - include/linux/leds/common.h. - enum: [ 8, 9 ] - - $ref: "common.yaml#" - - required: - - color +properties: + $nodename: + pattern: "^multi-led(@[0-9a-f])?$" + + color: + description: | + For multicolor LED support this property should be defined as either + LED_COLOR_ID_RGB or LED_COLOR_ID_MULTI which can be found in + include/dt-bindings/leds/common.h. + enum: [ 8, 9 ] + +required: + - color + +allOf: + - $ref: "common.yaml#" additionalProperties: true
Documentation/devicetree/bindings/leds/leds-lp50xx.yaml +3 -2
@@ -55,8 +55,9 @@ properties: patternProperties: '^multi-led@[0-9a-f]$': type: object - allOf: - - $ref: leds-class-multicolor.yaml# + $ref: leds-class-multicolor.yaml# + unevaluatedProperties: false + properties: reg: minItems: 1
Documentation/devicetree/bindings/leds/leds-pwm-multicolor.yaml new file +78 -0
78 lines not on this page · raw message
Documentation/devicetree/bindings/leds/leds-qcom-lpg.yaml new file +175 -0
175 lines not on this page · raw message
Documentation/devicetree/bindings/mfd/google,cros-ec.yaml +4 -8
@@ -39,18 +39,14 @@ properties: description: This property specifies the delay in usecs between the assertion of the CS and the first clock pulse. - allOf: - - $ref: /schemas/types.yaml#/definitions/uint32 - - default: 0 - - minimum: 0 + $ref: /schemas/types.yaml#/definitions/uint32 + default: 0 google,cros-ec-spi-msg-delay: description: This property specifies the delay in usecs between messages. - allOf: - - $ref: /schemas/types.yaml#/definitions/uint32 - - default: 0 - - minimum: 0 + $ref: /schemas/types.yaml#/definitions/uint32 + default: 0 google,has-vbc-nvram: description:
Documentation/devicetree/bindings/mfd/rohm,bd71815-pmic.yaml +10 -10
@@ -50,15 +50,15 @@ properties: minimum: 0 maximum: 1 - rohm,charger-sense-resistor-ohms: - minimum: 10000000 - maximum: 50000000 + rohm,charger-sense-resistor-micro-ohms: + minimum: 10000 + maximum: 50000 description: | - BD71827 and BD71828 have SAR ADC for measuring charging currents. - External sense resistor (RSENSE in data sheet) should be used. If - something other but 30MOhm resistor is used the resistance value - should be given here in Ohms. - default: 30000000 + BD71815 has SAR ADC for measuring charging currents. External sense + resistor (RSENSE in data sheet) should be used. If something other + but a 30 mOhm resistor is used the resistance value should be given + here in micro Ohms. + default: 30000 regulators: $ref: ../regulator/rohm,bd71815-regulator.yaml
@@ -67,7 +67,7 @@ properties: gpio-reserved-ranges: description: | - Usage of BD71828 GPIO pins can be changed via OTP. This property can be + Usage of BD71815 GPIO pins can be changed via OTP. This property can be used to mark the pins which should not be configured for GPIO. Please see the ../gpio/gpio.txt for more information.
@@ -113,7 +113,7 @@ examples: gpio-controller; #gpio-cells = <2>; - rohm,charger-sense-resistor-ohms = <10000000>; + rohm,charger-sense-resistor-micro-ohms = <10000>; regulators { buck1: buck1 {
Documentation/devicetree/bindings/mmc/mmc-controller.yaml +1 -1
@@ -25,7 +25,7 @@ properties: "#address-cells": const: 1 description: | - The cell is the slot ID if a function subnode is used. + The cell is the SDIO function number if a function subnode is used. "#size-cells": const: 0
Documentation/devicetree/bindings/mtd/rockchip,nand-controller.yaml +1 -2
@@ -96,8 +96,7 @@ patternProperties: rockchip,boot-ecc-strength: enum: [16, 24, 40, 60, 70] - allOf: - - $ref: /schemas/types.yaml#/definitions/uint32 + $ref: /schemas/types.yaml#/definitions/uint32 description: | If specified it indicates that a different BCH/ECC setting is supported by the boot ROM.
Documentation/devicetree/bindings/net/ti,cpsw-switch.yaml +1 -2
@@ -88,8 +88,7 @@ properties: type: object description: CPSW external ports - allOf: - - $ref: ethernet-controller.yaml# + $ref: ethernet-controller.yaml# properties: reg:
Documentation/devicetree/bindings/phy/phy-stm32-usbphyc.yaml +1 -2
@@ -76,8 +76,7 @@ patternProperties: connector: type: object - allOf: - - $ref: ../connector/usb-connector.yaml + $ref: /schemas/connector/usb-connector.yaml properties: vbus-supply: true
Documentation/devicetree/bindings/power/supply/sbs,sbs-manager.yaml +1 -3
@@ -46,9 +46,7 @@ additionalProperties: false patternProperties: "^i2c@[1-4]$": type: object - - allOf: - - $ref: /schemas/i2c/i2c-controller.yaml# + $ref: /schemas/i2c/i2c-controller.yaml# examples: - |
Documentation/devicetree/bindings/regulator/mt6315-regulator.yaml +0 -6
@@ -30,10 +30,6 @@ properties: type: object $ref: "regulator.yaml#" - properties: - regulator-compatible: - pattern: "^vbuck[1-4]$" - additionalProperties: false required:
@@ -51,7 +47,6 @@ examples: regulators { vbuck1 { - regulator-compatible = "vbuck1"; regulator-min-microvolt = <300000>; regulator-max-microvolt = <1193750>; regulator-enable-ramp-delay = <256>;
@@ -59,7 +54,6 @@ examples: }; vbuck3 { - regulator-compatible = "vbuck3"; regulator-min-microvolt = <300000>; regulator-max-microvolt = <1193750>; regulator-enable-ramp-delay = <256>;
Documentation/devicetree/bindings/remoteproc/ti,k3-r5f-rproc.yaml +1 -2
@@ -94,8 +94,7 @@ patternProperties: addresses. Cache and memory access settings are provided through a Memory Protection Unit (MPU), programmable only from the R5Fs. - allOf: - - $ref: /schemas/arm/keystone/ti,k3-sci-common.yaml# + $ref: /schemas/arm/keystone/ti,k3-sci-common.yaml# properties: compatible:
Documentation/devicetree/bindings/soc/ti/ti,pruss.yaml +3 -12
@@ -281,10 +281,7 @@ patternProperties: PRUSS INTC Node. Each PRUSS has a single interrupt controller instance that is common to all the PRU cores. This should be represented as an interrupt-controller node. - - allOf: - - $ref: /schemas/interrupt-controller/ti,pruss-intc.yaml# - + $ref: /schemas/interrupt-controller/ti,pruss-intc.yaml# type: object mdio@[a-f0-9]+$:
@@ -292,10 +289,7 @@ patternProperties: MDIO Node. Each PRUSS has an MDIO module that can be used to control external PHYs. The MDIO module used within the PRU-ICSS is an instance of the MDIO Controller used in TI Davinci SoCs. - - allOf: - - $ref: /schemas/net/ti,davinci-mdio.yaml# - + $ref: /schemas/net/ti,davinci-mdio.yaml# type: object "^(pru|rtu|txpru)@[0-9a-f]+$":
@@ -305,10 +299,7 @@ patternProperties: inactive by using the standard DT string property, "status". The ICSSG IP present on K3 SoCs have additional auxiliary PRU cores with slightly different IP integration. - - allOf: - - $ref: /schemas/remoteproc/ti,pru-rproc.yaml# - + $ref: /schemas/remoteproc/ti,pru-rproc.yaml# type: object required:
Documentation/devicetree/bindings/sound/st,stm32-sai.yaml +1 -2
@@ -113,8 +113,7 @@ patternProperties: By default, custom protocol is assumed, meaning that protocol is configured according to protocol defined in related DAI link node, such as i2s, left justified, right justified, dsp and pdm protocols. - allOf: - - $ref: /schemas/types.yaml#/definitions/flag + $ref: /schemas/types.yaml#/definitions/flag "#clock-cells": description: Configure the SAI device as master clock provider.
Documentation/devicetree/bindings/sound/tlv320adcx140.yaml +6 -7
@@ -176,13 +176,12 @@ patternProperties: 4 - Drive weak low and active high 5 - Drive Hi-Z and active high - allOf: - - $ref: /schemas/types.yaml#/definitions/uint32-array - - minItems: 2 - maxItems: 2 - items: - maximum: 15 - default: [2, 2] + $ref: /schemas/types.yaml#/definitions/uint32-array + minItems: 2 + maxItems: 2 + items: + maximum: 15 + default: [2, 2] required: - compatible
Documentation/devicetree/bindings/spi/spi-controller.yaml +1 -68
75 lines not on this page · raw message
Documentation/devicetree/bindings/spi/spi-peripheral-props.yaml new file +87 -0
87 lines not on this page · raw message
Documentation/devicetree/bindings/usb/st,stusb160x.yaml +1 -3
@@ -32,9 +32,7 @@ properties: connector: type: object - - allOf: - - $ref: ../connector/usb-connector.yaml + $ref: /schemas/connector/usb-connector.yaml# properties: compatible:
Documentation/kbuild/kconfig.rst +9 -0
@@ -54,6 +54,15 @@ KCONFIG_OVERWRITECONFIG If you set KCONFIG_OVERWRITECONFIG in the environment, Kconfig will not break symlinks when .config is a symlink to somewhere else. +KCONFIG_WARN_UNKNOWN_SYMBOLS +---------------------------- +This environment variable makes Kconfig warn about all unrecognized +symbols in the config input. + +KCONFIG_WERROR +-------------- +If set, Kconfig treats warnings as errors. + `CONFIG_` --------- If you set `CONFIG_` in the environment, Kconfig will prefix all symbols
Makefile +6 -1
@@ -1,7 +1,7 @@ # SPDX-License-Identifier: GPL-2.0 VERSION = 5 PATCHLEVEL = 15 -SUBLEVEL = 178 +SUBLEVEL = 179 EXTRAVERSION = NAME = Trick or Treat
@@ -1114,6 +1114,11 @@ endif KBUILD_USERCFLAGS += $(filter -m32 -m64 --target=%, $(KBUILD_CFLAGS)) KBUILD_USERLDFLAGS += $(filter -m32 -m64 --target=%, $(KBUILD_CFLAGS)) +# userspace programs are linked via the compiler, use the correct linker +ifeq ($(CONFIG_CC_IS_CLANG)$(CONFIG_LD_IS_LLD),yy) +KBUILD_USERLDFLAGS += $(call cc-option, --ld-path=$(LD)) +endif + # make the checker run with the right architecture CHECKFLAGS += --arch=$(ARCH)
arch/alpha/include/uapi/asm/ptrace.h +2 -0
@@ -42,6 +42,8 @@ struct pt_regs {unsigned long trap_a0;unsigned long trap_a1;unsigned long trap_a2; +/* This makes the stack 16-byte aligned as GCC expects */ +unsigned long __pad0;/* These are saved by PAL-code: */ unsigned long ps;unsigned long pc;
arch/alpha/kernel/asm-offsets.c +2 -0
@@ -32,7 +32,9 @@ void foo(void)DEFINE (CRED_EGID , offsetof(struct cred , egid));BLANK (); +DEFINE (SP_OFF , offsetof(struct pt_regs , ps));DEFINE (SIZEOF_PT_REGS ,sizeof (struct pt_regs )); +DEFINE (SWITCH_STACK_SIZE ,sizeof (struct switch_stack ));DEFINE (PT_PTRACED ,PT_PTRACED );DEFINE (CLONE_VM ,CLONE_VM );DEFINE (CLONE_UNTRACED ,CLONE_UNTRACED );
arch/alpha/kernel/entry.S +10 -14
@@ -15,10 +15,6 @@ .set noat .cfi_sections .debug_frame -/* Stack offsets. */ -#define SP_OFF 184 -#define SWITCH_STACK_SIZE 320 - .macro CFI_START_OSF_FRAME func .align 4 .globl \func
@@ -199,8 +195,8 @@ CFI_END_OSF_FRAME entArith CFI_START_OSF_FRAME entMM SAVE_ALL /* save $9 - $15 so the inline exception code can manipulate them. */ - subq $sp, 56, $sp - .cfi_adjust_cfa_offset 56 + subq $sp, 64, $sp + .cfi_adjust_cfa_offset 64 stq $9, 0($sp) stq $10, 8($sp) stq $11, 16($sp)
@@ -215,7 +211,7 @@ CFI_START_OSF_FRAME entMM .cfi_rel_offset $13, 32 .cfi_rel_offset $14, 40 .cfi_rel_offset $15, 48 - addq $sp, 56, $19 + addq $sp, 64, $19 /* handle the fault */ lda $8, 0x3fff bic $sp, $8, $8
@@ -228,7 +224,7 @@ CFI_START_OSF_FRAME entMM ldq $13, 32($sp) ldq $14, 40($sp) ldq $15, 48($sp) - addq $sp, 56, $sp + addq $sp, 64, $sp .cfi_restore $9 .cfi_restore $10 .cfi_restore $11
@@ -236,7 +232,7 @@ CFI_START_OSF_FRAME entMM .cfi_restore $13 .cfi_restore $14 .cfi_restore $15 - .cfi_adjust_cfa_offset -56 + .cfi_adjust_cfa_offset -64 /* finish up the syscall as normal. */ br ret_from_sys_call CFI_END_OSF_FRAME entMM
@@ -383,8 +379,8 @@ entUnaUser: .cfi_restore $0 .cfi_adjust_cfa_offset -256 SAVE_ALL /* setup normal kernel stack */ - lda $sp, -56($sp) - .cfi_adjust_cfa_offset 56 + lda $sp, -64($sp) + .cfi_adjust_cfa_offset 64 stq $9, 0($sp) stq $10, 8($sp) stq $11, 16($sp)
@@ -400,7 +396,7 @@ entUnaUser: .cfi_rel_offset $14, 40 .cfi_rel_offset $15, 48 lda $8, 0x3fff - addq $sp, 56, $19 + addq $sp, 64, $19 bic $sp, $8, $8 jsr $26, do_entUnaUser ldq $9, 0($sp)
@@ -410,7 +406,7 @@ entUnaUser: ldq $13, 32($sp) ldq $14, 40($sp) ldq $15, 48($sp) - lda $sp, 56($sp) + lda $sp, 64($sp) .cfi_restore $9 .cfi_restore $10 .cfi_restore $11
@@ -418,7 +414,7 @@ entUnaUser: .cfi_restore $13 .cfi_restore $14 .cfi_restore $15 - .cfi_adjust_cfa_offset -56 + .cfi_adjust_cfa_offset -64 br ret_from_sys_call CFI_END_OSF_FRAME entUna
arch/alpha/kernel/traps.c +1 -1
@@ -709,7 +709,7 @@ s_reg_to_mem (unsigned long s_reg)static int unauser_reg_offsets[32 ] = {R (r0),R (r1),R (r2),R (r3),R (r4),R (r5),R (r6),R (r7),R (r8),/* r9 ... r15 are stored in front of regs. */ --56 ,-48 ,-40 ,-32 ,-24 ,-16 ,-8 , +-64 ,-56 ,-48 ,-40 ,-32 ,-24 ,-16 ,/* padding at -8 */ R (r16),R (r17),R (r18),R (r19),R (r20),R (r21),R (r22),R (r23),R (r24),R (r25),R (r26),R (r27),R (r28),R (gp),
arch/alpha/mm/fault.c +2 -2
@@ -78,8 +78,8 @@ __load_new_mm_context(struct mm_struct *next_mm)/* Macro for exception fixup code to access integer registers. */ #define dpf_reg (r) \ - (((unsigned long *)regs)[(r) <= 8 ? (r) : (r) <= 15 ? (r)-16 : \ - (r) <= 18 ? (r)+10 : (r)-10]) + (((unsigned long *)regs)[(r) <= 8 ? (r) : (r) <= 15 ? (r)-17 : \ + (r) <= 18 ? (r)+11 : (r)-10]) asmlinkage void do_page_fault(unsigned long address, unsigned long mmcsr,
arch/arm/boot/dts/dra7-l4.dtsi +2 -0
@@ -12,6 +12,7 @@ &l4_cfg { /* 0x4a000000 */ ranges = <0x00000000 0x4a000000 0x100000>, /* segment 0 */ <0x00100000 0x4a100000 0x100000>, /* segment 1 */ <0x00200000 0x4a200000 0x100000>; /* segment 2 */ + dma-ranges; segment@0 { /* 0x4a000000 */ compatible = "simple-pm-bus";
@@ -557,6 +558,7 @@ segment@100000 { /* 0x4a100000 */ <0x0007e000 0x0017e000 0x001000>, /* ap 124 */ <0x00059000 0x00159000 0x001000>, /* ap 125 */ <0x0005a000 0x0015a000 0x001000>; /* ap 126 */ + dma-ranges; target-module@2000 { /* 0x4a102000, ap 27 3c.0 */ compatible = "ti,sysc";
arch/arm/boot/dts/mt7623.dtsi +1 -1
@@ -309,7 +309,7 @@ pwrap: pwrap@1000d000 { clock-names = "spi", "wrap"; }; - cir: cir@10013000 { + cir: ir-receiver@10013000 { compatible = "mediatek,mt7623-cir"; reg = <0 0x10013000 0 0x1000>; interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_LOW>;
arch/arm/mach-at91/pm.c +20 -11
@@ -403,7 +403,21 @@ static int at91_suspend_finish(unsigned long val)return 0 ; } -static void at91_pm_switch_ba_to_vbat (void ) +/** +* at91_pm_switch_ba_to_auto() - Configure Backup Unit Power Switch +* to automatic/hardware mode. +* +* The Backup Unit Power Switch can be managed either by software or hardware. +* Enabling hardware mode allows the automatic transition of power between +* VDDANA (or VDDIN33) and VDDBU (or VBAT, respectively), based on the +* availability of these power sources. +* +* If the Backup Unit Power Switch is already in automatic mode, no action is +* required. If it is in software-controlled mode, it is switched to automatic +* mode to enhance safety and eliminate the need for toggling between power +* sources. +*/ +static void at91_pm_switch_ba_to_auto (void ) {unsigned int offset = offsetof(struct at91_pm_sfrbu_regs , pswbu);unsigned int val;
@@ -414,24 +428,19 @@ static void at91_pm_switch_ba_to_vbat(void) val =readl (soc_pm.data.sfrbu + offset); -/* Already on VBAT. */ -if (!(val & soc_pm.sfrbu_regs.pswbu.state)) +/* Already on auto/hardware. */ +if (!(val & soc_pm.sfrbu_regs.pswbu.ctrl))return ; - val &= ~soc_pm.sfrbu_regs.pswbu.softsw; - val |= soc_pm.sfrbu_regs.pswbu.key | soc_pm.sfrbu_regs.pswbu.ctrl; + val &= ~soc_pm.sfrbu_regs.pswbu.ctrl; + val |= soc_pm.sfrbu_regs.pswbu.key;writel (val, soc_pm.data.sfrbu + offset); - -/* Wait for update. */ - val =readl (soc_pm.data.sfrbu + offset); -while (val & soc_pm.sfrbu_regs.pswbu.state) - val =readl (soc_pm.data.sfrbu + offset); }static void at91_pm_suspend (suspend_state_t state) {if (soc_pm.data.mode ==AT91_PM_BACKUP ) { -at91_pm_switch_ba_to_vbat (); +at91_pm_switch_ba_to_auto ();cpu_suspend (0 , at91_suspend_finish);
arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi +3 -26
@@ -914,7 +914,7 @@ pmic: mt6397 { interrupt-controller; #interrupt-cells = <2>; - clock: mt6397clock { + clock: clocks { compatible = "mediatek,mt6397-clk"; #clock-cells = <1>; };
@@ -926,11 +926,10 @@ pio6397: pinctrl { #gpio-cells = <2>; }; - regulator: mt6397regulator { + regulators { compatible = "mediatek,mt6397-regulator"; mt6397_vpca15_reg: buck_vpca15 { - regulator-compatible = "buck_vpca15"; regulator-name = "vpca15"; regulator-min-microvolt = < 700000>; regulator-max-microvolt = <1350000>;
@@ -940,7 +939,6 @@ mt6397_vpca15_reg: buck_vpca15 { }; mt6397_vpca7_reg: buck_vpca7 { - regulator-compatible = "buck_vpca7"; regulator-name = "vpca7"; regulator-min-microvolt = < 700000>; regulator-max-microvolt = <1350000>;
@@ -950,7 +948,6 @@ mt6397_vpca7_reg: buck_vpca7 { }; mt6397_vsramca15_reg: buck_vsramca15 { - regulator-compatible = "buck_vsramca15"; regulator-name = "vsramca15"; regulator-min-microvolt = < 700000>; regulator-max-microvolt = <1350000>;
@@ -959,7 +956,6 @@ mt6397_vsramca15_reg: buck_vsramca15 { }; mt6397_vsramca7_reg: buck_vsramca7 { - regulator-compatible = "buck_vsramca7"; regulator-name = "vsramca7"; regulator-min-microvolt = < 700000>; regulator-max-microvolt = <1350000>;
@@ -968,7 +964,6 @@ mt6397_vsramca7_reg: buck_vsramca7 { }; mt6397_vcore_reg: buck_vcore { - regulator-compatible = "buck_vcore"; regulator-name = "vcore"; regulator-min-microvolt = < 700000>; regulator-max-microvolt = <1350000>;
@@ -977,7 +972,6 @@ mt6397_vcore_reg: buck_vcore { }; mt6397_vgpu_reg: buck_vgpu { - regulator-compatible = "buck_vgpu"; regulator-name = "vgpu"; regulator-min-microvolt = < 700000>; regulator-max-microvolt = <1350000>;
@@ -986,7 +980,6 @@ mt6397_vgpu_reg: buck_vgpu { }; mt6397_vdrm_reg: buck_vdrm { - regulator-compatible = "buck_vdrm"; regulator-name = "vdrm"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <1400000>;
@@ -995,7 +988,6 @@ mt6397_vdrm_reg: buck_vdrm { }; mt6397_vio18_reg: buck_vio18 { - regulator-compatible = "buck_vio18"; regulator-name = "vio18"; regulator-min-microvolt = <1620000>; regulator-max-microvolt = <1980000>;
@@ -1004,18 +996,15 @@ mt6397_vio18_reg: buck_vio18 { }; mt6397_vtcxo_reg: ldo_vtcxo { - regulator-compatible = "ldo_vtcxo"; regulator-name = "vtcxo"; regulator-always-on; }; mt6397_va28_reg: ldo_va28 { - regulator-compatible = "ldo_va28"; regulator-name = "va28"; }; mt6397_vcama_reg: ldo_vcama { - regulator-compatible = "ldo_vcama"; regulator-name = "vcama"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>;
@@ -1023,18 +1012,15 @@ mt6397_vcama_reg: ldo_vcama { }; mt6397_vio28_reg: ldo_vio28 { - regulator-compatible = "ldo_vio28"; regulator-name = "vio28"; regulator-always-on; }; mt6397_vusb_reg: ldo_vusb { - regulator-compatible = "ldo_vusb"; regulator-name = "vusb"; }; mt6397_vmc_reg: ldo_vmc { - regulator-compatible = "ldo_vmc"; regulator-name = "vmc"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <3300000>;
@@ -1042,7 +1028,6 @@ mt6397_vmc_reg: ldo_vmc { }; mt6397_vmch_reg: ldo_vmch { - regulator-compatible = "ldo_vmch"; regulator-name = "vmch"; regulator-min-microvolt = <3000000>; regulator-max-microvolt = <3300000>;
@@ -1050,7 +1035,6 @@ mt6397_vmch_reg: ldo_vmch { }; mt6397_vemc_3v3_reg: ldo_vemc3v3 { - regulator-compatible = "ldo_vemc3v3"; regulator-name = "vemc_3v3"; regulator-min-microvolt = <3000000>; regulator-max-microvolt = <3300000>;
@@ -1058,7 +1042,6 @@ mt6397_vemc_3v3_reg: ldo_vemc3v3 { }; mt6397_vgp1_reg: ldo_vgp1 { - regulator-compatible = "ldo_vgp1"; regulator-name = "vcamd"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>;
@@ -1066,7 +1049,6 @@ mt6397_vgp1_reg: ldo_vgp1 { }; mt6397_vgp2_reg: ldo_vgp2 { - regulator-compatible = "ldo_vgp2"; regulator-name = "vcamio"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
@@ -1074,7 +1056,6 @@ mt6397_vgp2_reg: ldo_vgp2 { }; mt6397_vgp3_reg: ldo_vgp3 { - regulator-compatible = "ldo_vgp3"; regulator-name = "vcamaf"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>;
@@ -1082,7 +1063,6 @@ mt6397_vgp3_reg: ldo_vgp3 { }; mt6397_vgp4_reg: ldo_vgp4 { - regulator-compatible = "ldo_vgp4"; regulator-name = "vgp4"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <3300000>;
@@ -1090,7 +1070,6 @@ mt6397_vgp4_reg: ldo_vgp4 { }; mt6397_vgp5_reg: ldo_vgp5 { - regulator-compatible = "ldo_vgp5"; regulator-name = "vgp5"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <3000000>;
@@ -1098,7 +1077,6 @@ mt6397_vgp5_reg: ldo_vgp5 { }; mt6397_vgp6_reg: ldo_vgp6 { - regulator-compatible = "ldo_vgp6"; regulator-name = "vgp6"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
@@ -1107,7 +1085,6 @@ mt6397_vgp6_reg: ldo_vgp6 { }; mt6397_vibr_reg: ldo_vibr { - regulator-compatible = "ldo_vibr"; regulator-name = "vibr"; regulator-min-microvolt = <1300000>; regulator-max-microvolt = <3300000>;
@@ -1115,7 +1092,7 @@ mt6397_vibr_reg: ldo_vibr { }; }; - rtc: mt6397rtc { + rtc: rtc { compatible = "mediatek,mt6397-rtc"; };
arch/arm64/boot/dts/mediatek/mt8173-evb.dts +1 -24
@@ -307,11 +307,10 @@ pmic: mt6397 { interrupt-controller; #interrupt-cells = <2>; - mt6397regulator: mt6397regulator { + regulators { compatible = "mediatek,mt6397-regulator"; mt6397_vpca15_reg: buck_vpca15 { - regulator-compatible = "buck_vpca15"; regulator-name = "vpca15"; regulator-min-microvolt = < 700000>; regulator-max-microvolt = <1350000>;
@@ -320,7 +319,6 @@ mt6397_vpca15_reg: buck_vpca15 { }; mt6397_vpca7_reg: buck_vpca7 { - regulator-compatible = "buck_vpca7"; regulator-name = "vpca7"; regulator-min-microvolt = < 700000>; regulator-max-microvolt = <1350000>;
@@ -329,7 +327,6 @@ mt6397_vpca7_reg: buck_vpca7 { }; mt6397_vsramca15_reg: buck_vsramca15 { - regulator-compatible = "buck_vsramca15"; regulator-name = "vsramca15"; regulator-min-microvolt = < 700000>; regulator-max-microvolt = <1350000>;
@@ -338,7 +335,6 @@ mt6397_vsramca15_reg: buck_vsramca15 { }; mt6397_vsramca7_reg: buck_vsramca7 { - regulator-compatible = "buck_vsramca7"; regulator-name = "vsramca7"; regulator-min-microvolt = < 700000>; regulator-max-microvolt = <1350000>;
@@ -347,7 +343,6 @@ mt6397_vsramca7_reg: buck_vsramca7 { }; mt6397_vcore_reg: buck_vcore { - regulator-compatible = "buck_vcore"; regulator-name = "vcore"; regulator-min-microvolt = < 700000>; regulator-max-microvolt = <1350000>;
@@ -356,7 +351,6 @@ mt6397_vcore_reg: buck_vcore { }; mt6397_vgpu_reg: buck_vgpu { - regulator-compatible = "buck_vgpu"; regulator-name = "vgpu"; regulator-min-microvolt = < 700000>; regulator-max-microvolt = <1350000>;
@@ -365,7 +359,6 @@ mt6397_vgpu_reg: buck_vgpu { }; mt6397_vdrm_reg: buck_vdrm { - regulator-compatible = "buck_vdrm"; regulator-name = "vdrm"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <1400000>;
@@ -374,7 +367,6 @@ mt6397_vdrm_reg: buck_vdrm { }; mt6397_vio18_reg: buck_vio18 { - regulator-compatible = "buck_vio18"; regulator-name = "vio18"; regulator-min-microvolt = <1620000>; regulator-max-microvolt = <1980000>;
@@ -383,19 +375,16 @@ mt6397_vio18_reg: buck_vio18 { }; mt6397_vtcxo_reg: ldo_vtcxo { - regulator-compatible = "ldo_vtcxo"; regulator-name = "vtcxo"; regulator-always-on; }; mt6397_va28_reg: ldo_va28 { - regulator-compatible = "ldo_va28"; regulator-name = "va28"; regulator-always-on; }; mt6397_vcama_reg: ldo_vcama { - regulator-compatible = "ldo_vcama"; regulator-name = "vcama"; regulator-min-microvolt = <1500000>; regulator-max-microvolt = <2800000>;
@@ -403,18 +392,15 @@ mt6397_vcama_reg: ldo_vcama { }; mt6397_vio28_reg: ldo_vio28 { - regulator-compatible = "ldo_vio28"; regulator-name = "vio28"; regulator-always-on; }; mt6397_vusb_reg: ldo_vusb { - regulator-compatible = "ldo_vusb"; regulator-name = "vusb"; }; mt6397_vmc_reg: ldo_vmc { - regulator-compatible = "ldo_vmc"; regulator-name = "vmc"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <3300000>;
@@ -422,7 +408,6 @@ mt6397_vmc_reg: ldo_vmc { }; mt6397_vmch_reg: ldo_vmch { - regulator-compatible = "ldo_vmch"; regulator-name = "vmch"; regulator-min-microvolt = <3000000>; regulator-max-microvolt = <3300000>;
@@ -430,7 +415,6 @@ mt6397_vmch_reg: ldo_vmch { }; mt6397_vemc_3v3_reg: ldo_vemc3v3 { - regulator-compatible = "ldo_vemc3v3"; regulator-name = "vemc_3v3"; regulator-min-microvolt = <3000000>; regulator-max-microvolt = <3300000>;
@@ -438,7 +422,6 @@ mt6397_vemc_3v3_reg: ldo_vemc3v3 { }; mt6397_vgp1_reg: ldo_vgp1 { - regulator-compatible = "ldo_vgp1"; regulator-name = "vcamd"; regulator-min-microvolt = <1220000>; regulator-max-microvolt = <3300000>;
@@ -446,7 +429,6 @@ mt6397_vgp1_reg: ldo_vgp1 { }; mt6397_vgp2_reg: ldo_vgp2 { - regulator-compatible = "ldo_vgp2"; regulator-name = "vcamio"; regulator-min-microvolt = <1000000>; regulator-max-microvolt = <3300000>;
@@ -454,7 +436,6 @@ mt6397_vgp2_reg: ldo_vgp2 { }; mt6397_vgp3_reg: ldo_vgp3 { - regulator-compatible = "ldo_vgp3"; regulator-name = "vcamaf"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <3300000>;
@@ -462,7 +443,6 @@ mt6397_vgp3_reg: ldo_vgp3 { }; mt6397_vgp4_reg: ldo_vgp4 { - regulator-compatible = "ldo_vgp4"; regulator-name = "vgp4"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <3300000>;
@@ -470,7 +450,6 @@ mt6397_vgp4_reg: ldo_vgp4 { }; mt6397_vgp5_reg: ldo_vgp5 { - regulator-compatible = "ldo_vgp5"; regulator-name = "vgp5"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <3000000>;
@@ -478,7 +457,6 @@ mt6397_vgp5_reg: ldo_vgp5 { }; mt6397_vgp6_reg: ldo_vgp6 { - regulator-compatible = "ldo_vgp6"; regulator-name = "vgp6"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <3300000>;
@@ -486,7 +464,6 @@ mt6397_vgp6_reg: ldo_vgp6 { }; mt6397_vibr_reg: ldo_vibr { - regulator-compatible = "ldo_vibr"; regulator-name = "vibr"; regulator-min-microvolt = <1300000>; regulator-max-microvolt = <3300000>;
arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi-damu.dts +4 -0
@@ -25,6 +25,10 @@ &touchscreen { hid-descr-addr = <0x0001>; }; +&mt6358codec { + mediatek,dmic-mode = <1>; /* one-wire */ +}; + &qca_wifi { qcom,ath10k-calibration-variant = "GO_DAMU"; };
arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi-kenzo.dts +15 -0
@@ -10,3 +10,18 @@ / { model = "Google kenzo sku17 board"; compatible = "google,juniper-sku17", "google,juniper", "mediatek,mt8183"; }; + +&i2c0 { + touchscreen@40 { + compatible = "hid-over-i2c"; + reg = <0x40>; + + pinctrl-names = "default"; + pinctrl-0 = <&touchscreen_pins>; + + interrupts-extended = <&pio 155 IRQ_TYPE_LEVEL_LOW>; + + post-power-on-delay-ms = <70>; + hid-descr-addr = <0x0001>; + }; +};
arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi-willow.dtsi +15 -0
@@ -6,6 +6,21 @@ /dts-v1/; #include "mt8183-kukui-jacuzzi.dtsi" +&i2c0 { + touchscreen@40 { + compatible = "hid-over-i2c"; + reg = <0x40>; + + pinctrl-names = "default"; + pinctrl-0 = <&touchscreen_pins>; + + interrupts-extended = <&pio 155 IRQ_TYPE_LEVEL_LOW>; + + post-power-on-delay-ms = <70>; + hid-descr-addr = <0x0001>; + }; +}; + &i2c2 { trackpad@2c { compatible = "hid-over-i2c";
arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi +0 -2
@@ -39,8 +39,6 @@ pp1800_mipibrdg: pp1800-mipibrdg { pp3300_panel: pp3300-panel { compatible = "regulator-fixed"; regulator-name = "pp3300_panel"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; pinctrl-names = "default"; pinctrl-0 = <&pp3300_panel_pins>;
arch/arm64/boot/dts/mediatek/mt8183.dtsi +1 -0
@@ -1236,6 +1236,7 @@ dsi0: dsi@14014000 { clock-names = "engine", "digital", "hs"; phys = <&mipi_tx0>; phy-names = "dphy"; + status = "disabled"; }; mutex: mutex@14016000 {
arch/arm64/boot/dts/mediatek/mt8516.dtsi +13 -25
@@ -144,10 +144,10 @@ reserved-memory { #size-cells = <2>; ranges; - /* 128 KiB reserved for ARM Trusted Firmware (BL31) */ + /* 192 KiB reserved for ARM Trusted Firmware (BL31) */ bl31_secmon_reserved: secmon@43000000 { no-map; - reg = <0 0x43000000 0 0x20000>; + reg = <0 0x43000000 0 0x30000>; }; };
@@ -206,7 +206,7 @@ toprgu: toprgu@10007000 { compatible = "mediatek,mt8516-wdt", "mediatek,mt6589-wdt"; reg = <0 0x10007000 0 0x1000>; - interrupts = <GIC_SPI 198 IRQ_TYPE_EDGE_FALLING>; + interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_LOW>; #reset-cells = <1>; };
@@ -269,7 +269,7 @@ gic: interrupt-controller@10310000 { interrupt-parent = <&gic>; interrupt-controller; reg = <0 0x10310000 0 0x1000>, - <0 0x10320000 0 0x1000>, + <0 0x1032f000 0 0x2000>, <0 0x10340000 0 0x2000>, <0 0x10360000 0 0x2000>; interrupts = <GIC_PPI 9
@@ -345,14 +345,10 @@ i2c0: i2c@11009000 { reg = <0 0x11009000 0 0x90>, <0 0x11000180 0 0x80>; interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_LOW>; - clocks = <&topckgen CLK_TOP_AHB_INFRA_D2>, - <&infracfg CLK_IFR_I2C0_SEL>, - <&topckgen CLK_TOP_I2C0>, + clock-div = <2>; + clocks = <&topckgen CLK_TOP_I2C0>, <&topckgen CLK_TOP_APDMA>; - clock-names = "main-source", - "main-sel", - "main", - "dma"; + clock-names = "main", "dma"; #address-cells = <1>; #size-cells = <0>; status = "disabled";
@@ -364,14 +360,10 @@ i2c1: i2c@1100a000 { reg = <0 0x1100a000 0 0x90>, <0 0x11000200 0 0x80>; interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_LOW>; - clocks = <&topckgen CLK_TOP_AHB_INFRA_D2>, - <&infracfg CLK_IFR_I2C1_SEL>, - <&topckgen CLK_TOP_I2C1>, + clock-div = <2>; + clocks = <&topckgen CLK_TOP_I2C1>, <&topckgen CLK_TOP_APDMA>; - clock-names = "main-source", - "main-sel", - "main", - "dma"; + clock-names = "main", "dma"; #address-cells = <1>; #size-cells = <0>; status = "disabled";
@@ -383,14 +375,10 @@ i2c2: i2c@1100b000 { reg = <0 0x1100b000 0 0x90>, <0 0x11000280 0 0x80>; interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_LOW>; - clocks = <&topckgen CLK_TOP_AHB_INFRA_D2>, - <&infracfg CLK_IFR_I2C2_SEL>, - <&topckgen CLK_TOP_I2C2>, + clock-div = <2>; + clocks = <&topckgen CLK_TOP_I2C2>, <&topckgen CLK_TOP_APDMA>; - clock-names = "main-source", - "main-sel", - "main", - "dma"; + clock-names = "main", "dma"; #address-cells = <1>; #size-cells = <0>; status = "disabled";
arch/arm64/boot/dts/mediatek/pumpkin-common.dtsi +0 -2
@@ -48,7 +48,6 @@ volume-down { }; &i2c0 { - clock-div = <2>; pinctrl-names = "default"; pinctrl-0 = <&i2c0_pins_a>; status = "okay";
@@ -157,7 +156,6 @@ cam-pwdn-hog { }; &i2c2 { - clock-div = <2>; pinctrl-names = "default"; pinctrl-0 = <&i2c2_pins_a>; status = "okay";
arch/arm64/boot/dts/qcom/msm8916.dtsi +1 -1
@@ -105,7 +105,7 @@ xo_board: xo-board { sleep_clk: sleep-clk { compatible = "fixed-clock"; #clock-cells = <0>; - clock-frequency = <32768>; + clock-frequency = <32764>; }; };
arch/arm64/boot/dts/qcom/msm8994.dtsi +10 -1
@@ -25,7 +25,7 @@ xo_board: xo-board { sleep_clk: sleep-clk { compatible = "fixed-clock"; #clock-cells = <0>; - clock-frequency = <32768>; + clock-frequency = <32764>; clock-output-names = "sleep_clk"; }; };
@@ -419,6 +419,15 @@ usb3: usb@f92f8800 { #size-cells = <1>; ranges; + interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 311 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 310 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "pwr_event", + "qusb2_phy", + "hs_phy_irq", + "ss_phy_irq"; + clocks = <&gcc GCC_USB30_MASTER_CLK>, <&gcc GCC_SYS_NOC_USB3_AXI_CLK>, <&gcc GCC_USB30_SLEEP_CLK>,
arch/arm64/boot/dts/qcom/msm8996.dtsi +7 -2
@@ -2608,9 +2608,14 @@ usb3: usb@6af8800 { #size-cells = <1>; ranges; - interrupts = <GIC_SPI 347 IRQ_TYPE_LEVEL_HIGH>, + interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 347 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>; - interrupt-names = "hs_phy_irq", "ss_phy_irq"; + interrupt-names = "pwr_event", + "qusb2_phy", + "hs_phy_irq", + "ss_phy_irq"; clocks = <&gcc GCC_SYS_NOC_USB3_AXI_CLK>, <&gcc GCC_USB30_MASTER_CLK>,
arch/arm64/boot/dts/qcom/sc7280.dtsi +1 -1
@@ -39,7 +39,7 @@ xo_board: xo-board { sleep_clk: sleep-clk { compatible = "fixed-clock"; - clock-frequency = <32000>; + clock-frequency = <32764>; #clock-cells = <0>; }; };
arch/arm64/boot/dts/qcom/sdm845.dtsi +10 -10
@@ -3948,16 +3948,16 @@ camss: camss@acb3000 { "vfe1", "vfe_lite"; - interrupts = <GIC_SPI 464 IRQ_TYPE_LEVEL_HIGH>, - <GIC_SPI 466 IRQ_TYPE_LEVEL_HIGH>, - <GIC_SPI 468 IRQ_TYPE_LEVEL_HIGH>, - <GIC_SPI 477 IRQ_TYPE_LEVEL_HIGH>, - <GIC_SPI 478 IRQ_TYPE_LEVEL_HIGH>, - <GIC_SPI 479 IRQ_TYPE_LEVEL_HIGH>, - <GIC_SPI 448 IRQ_TYPE_LEVEL_HIGH>, - <GIC_SPI 465 IRQ_TYPE_LEVEL_HIGH>, - <GIC_SPI 467 IRQ_TYPE_LEVEL_HIGH>, - <GIC_SPI 469 IRQ_TYPE_LEVEL_HIGH>; + interrupts = <GIC_SPI 464 IRQ_TYPE_EDGE_RISING>, + <GIC_SPI 466 IRQ_TYPE_EDGE_RISING>, + <GIC_SPI 468 IRQ_TYPE_EDGE_RISING>, + <GIC_SPI 477 IRQ_TYPE_EDGE_RISING>, + <GIC_SPI 478 IRQ_TYPE_EDGE_RISING>, + <GIC_SPI 479 IRQ_TYPE_EDGE_RISING>, + <GIC_SPI 448 IRQ_TYPE_EDGE_RISING>, + <GIC_SPI 465 IRQ_TYPE_EDGE_RISING>, + <GIC_SPI 467 IRQ_TYPE_EDGE_RISING>, + <GIC_SPI 469 IRQ_TYPE_EDGE_RISING>; interrupt-names = "csid0", "csid1", "csid2",
arch/arm64/boot/dts/qcom/sm6125.dtsi +1 -1
@@ -27,7 +27,7 @@ xo_board: xo-board { sleep_clk: sleep-clk { compatible = "fixed-clock"; #clock-cells = <0>; - clock-frequency = <32000>; + clock-frequency = <32764>; clock-output-names = "sleep_clk"; }; };
arch/arm64/boot/dts/qcom/sm8150-microsoft-surface-duo.dts +2 -2
@@ -375,8 +375,8 @@ da7280@4a { pinctrl-0 = <&da7280_intr_default>; dlg,actuator-type = "LRA"; - dlg,dlg,const-op-mode = <1>; - dlg,dlg,periodic-op-mode = <1>; + dlg,const-op-mode = <1>; + dlg,periodic-op-mode = <1>; dlg,nom-microvolt = <2000000>; dlg,abs-max-microvolt = <2000000>; dlg,imax-microamp = <129000>;
arch/arm64/boot/dts/qcom/sm8250.dtsi +1 -1
@@ -82,7 +82,7 @@ xo_board: xo-board { sleep_clk: sleep-clk { compatible = "fixed-clock"; - clock-frequency = <32768>; + clock-frequency = <32764>; #clock-cells = <0>; }; };
arch/arm64/boot/dts/qcom/sm8350.dtsi +2 -2
@@ -32,7 +32,7 @@ xo_board: xo-board { sleep_clk: sleep-clk { compatible = "fixed-clock"; - clock-frequency = <32000>; + clock-frequency = <32764>; #clock-cells = <0>; };
@@ -754,7 +754,7 @@ tcsr_mutex: hwlock@1f40000 { mpss: remoteproc@4080000 { compatible = "qcom,sm8350-mpss-pas"; - reg = <0x0 0x04080000 0x0 0x4040>; + reg = <0x0 0x04080000 0x0 0x10000>; interrupts-extended = <&intc GIC_SPI 264 IRQ_TYPE_LEVEL_HIGH>, <&smp2p_modem_in 0 IRQ_TYPE_EDGE_RISING>,
arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi +1 -1
@@ -136,7 +136,7 @@ &gmac { snps,reset-active-low; snps,reset-delays-us = <0 10000 50000>; tx_delay = <0x10>; - rx_delay = <0x10>; + rx_delay = <0x23>; status = "okay"; };
arch/arm64/include/asm/mman.h +6 -3
@@ -31,9 +31,12 @@ static inline unsigned long arch_calc_vm_flag_bits(struct file *file,* backed by tags-capable memory. The vm_flags may be overridden by a * filesystem supporting MTE (RAM-based). */ -if (system_supports_mte () && - ((flags &MAP_ANONYMOUS ) ||shmem_file (file))) -return VM_MTE_ALLOWED ; +if (system_supports_mte ()) { +if ((flags &MAP_ANONYMOUS ) && !(flags &MAP_HUGETLB )) +return VM_MTE_ALLOWED ; +if (shmem_file (file)) +return VM_MTE_ALLOWED ; + }return 0 ; }
arch/arm64/kernel/cacheinfo.c +7 -5
@@ -87,16 +87,18 @@ int populate_cache_leaves(unsigned int cpu)unsigned int level, idx;enum cache_type type;struct cpu_cacheinfo *this_cpu_ci =get_cpu_cacheinfo (cpu); -struct cacheinfo *this_leaf = this_cpu_ci->info_list; +struct cacheinfo *infos = this_cpu_ci->info_list;for (idx =0 , level =1 ; level <= this_cpu_ci->num_levels && - idx < this_cpu_ci->num_leaves; idx++, level++) { + idx < this_cpu_ci->num_leaves; level++) { type =get_cache_type (level);if (type ==CACHE_TYPE_SEPARATE ) { -ci_leaf_init (this_leaf++,CACHE_TYPE_DATA , level); -ci_leaf_init (this_leaf++,CACHE_TYPE_INST , level); +if (idx +1 >= this_cpu_ci->num_leaves) +break ; +ci_leaf_init (&infos[idx++],CACHE_TYPE_DATA , level); +ci_leaf_init (&infos[idx++],CACHE_TYPE_INST , level); }else { -ci_leaf_init (this_leaf++, type, level); +ci_leaf_init (&infos[idx++], type, level); } }return 0 ;
arch/arm64/kernel/vdso/vdso.lds.S +1 -0
@@ -37,6 +37,7 @@ SECTIONS */ /DISCARD/ : { *(.note.GNU-stack .note.gnu.property) + *(.ARM.attributes) } .note : { *(.note.*) } :text :note
arch/arm64/kernel/vmlinux.lds.S +1 -0
@@ -139,6 +139,7 @@ SECTIONS /DISCARD/ : { *(.interp .dynamic) *(.dynsym .dynstr .hash .gnu.hash) + *(.ARM.attributes) } . = KIMAGE_VADDR;
arch/hexagon/include/asm/cmpxchg.h +1 -1
@@ -56,7 +56,7 @@ static inline unsigned long __xchg(unsigned long x, volatile void *ptr,__typeof__ (ptr) __ptr = (ptr); \ __typeof__(*(ptr)) __old = (old); \ __typeof__(*(ptr)) __new = (new); \ - __typeof__(*(ptr)) __oldval = 0; \ + __typeof__(*(ptr)) __oldval = (__typeof__(*(ptr))) 0; \ \ asmvolatile ( \ "1: %0 = memw_locked(%1);\n" \
arch/hexagon/kernel/traps.c +3 -1
@@ -195,8 +195,10 @@ int die(const char *str, struct pt_regs *regs, long err)printk (KERN_EMERG "Oops: %s[#%d]:\n" , str, ++die.counter);if (notify_die (DIE_OOPS , str, regs, err,pt_cause (regs),SIGSEGV ) == -NOTIFY_STOP ) +NOTIFY_STOP ) { +spin_unlock_irq (&die.lock);return 1 ; + }print_modules ();show_regs (regs);
arch/m68k/include/asm/vga.h +4 -4
@@ -9,7 +9,7 @@*/ #ifndef CONFIG_PCI -#include <asm/raw_io.h> +#include <asm/io.h> #include <asm/kmap.h> /*
@@ -29,9 +29,9 @@#define inw_p (port) 0#define outb_p (port, val) do { } while (0)#define outw (port, val) do { } while (0) -#define readb raw_inb -#define writeb raw_outb -#define writew raw_outw +#define readb __raw_readb +#define writeb __raw_writeb +#define writew __raw_writew#endif /* CONFIG_PCI */ #endif /* _ASM_M68K_VGA_H */
arch/mips/kernel/ftrace.c +1 -1
@@ -248,7 +248,7 @@ int ftrace_disable_ftrace_graph_caller(void)#define S_R_SP (0xafb0 << 16)/* s{d,w} R, offset(sp) */ #define OFFSET_MASK 0xffff/* stack offset range: 0 ~ PT_SIZE */ -unsigned long ftrace_get_parent_ra_addr (unsigned long self_ra,unsigned long +static unsigned long ftrace_get_parent_ra_addr (unsigned long self_ra,unsigned long old_parent_ra,unsigned long parent_ra_addr,unsigned long fp) {unsigned long sp, ip, tmp;
arch/mips/loongson64/boardinfo.c +0 -2
@@ -21,13 +21,11 @@ static ssize_t boardinfo_show(struct kobject *kobj,"BIOS Info\n" "Vendor\t\t\t: %s\n" "Version\t\t\t: %s\n" -"ROM Size\t\t: %d KB\n" "Release Date\t\t: %s\n" ,strsep (&tmp_board_manufacturer,"-" ), eboard->name,strsep (&tmp_bios_vendor,"-" ), einter->description, - einter->size, especial->special_name); } static struct kobj_attribute boardinfo_attr = __ATTR(boardinfo, 0444,
arch/mips/math-emu/cp1emu.c +1 -1
@@ -1660,7 +1660,7 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx,break ; } -case 0x3 : +case 0x7 :if (MIPSInst_FUNC (ir) != pfetch_op)return SIGILL ;
arch/mips/mm/init.c +1 -1
@@ -527,7 +527,7 @@ static void * __init pcpu_fc_alloc(unsigned int cpu, size_t size,static void __init pcpu_fc_free (void *ptr,size_t size) { -memblock_free_early (__pa (ptr), size); +memblock_free (__pa (ptr), size); }void __init setup_per_cpu_areas (void )
arch/powerpc/include/asm/book3s/64/hash-4k.h +28 -0
@@ -89,6 +89,34 @@ static inline int hash__hugepd_ok(hugepd_t hpd) }#endif +/* +* With 4K page size the real_pte machinery is all nops. +*/ +static inline real_pte_t __real_pte (pte_t pte,pte_t *ptep,int offset) +{ +return (real_pte_t ){pte}; +} + +#define __rpte_to_pte (r) ((r).pte) + +static inline unsigned long __rpte_to_hidx (real_pte_t rpte,unsigned long index) +{ +return pte_val (__rpte_to_pte (rpte)) >>H_PAGE_F_GIX_SHIFT ; +} + +#define pte_iterate_hashed_subpages (rpte, psize, va, index, shift) \ + do { \ + index = 0; \ + shift = mmu_psize_defs[psize].shift; \ + +#define pte_iterate_hashed_end () } while(0) + +/* +* We expect this to be called only for user addresses or kernel virtual +* addresses other than the linear mapping. +*/ +#define pte_pagesize_index (mm, addr, pte) MMU_PAGE_4K +/* * 4K PTE format is different from 64K PTE format. Saving the hash_slot is just * a matter of returning the PTE bits that need to be modified. On 64K PTE,
arch/powerpc/include/asm/book3s/64/pgtable.h +0 -26
@@ -336,32 +336,6 @@ extern unsigned long pci_io_base;#ifndef __ASSEMBLY__ -/* -* This is the default implementation of various PTE accessors, it's -* used in all cases except Book3S with 64K pages where we have a -* concept of sub-pages -*/ -#ifndef __real_pte - -#define __real_pte (e, p, o) ((real_pte_t){(e)}) -#define __rpte_to_pte (r) ((r).pte) -#define __rpte_to_hidx (r,index) (pte_val(__rpte_to_pte(r)) >> H_PAGE_F_GIX_SHIFT) - -#define pte_iterate_hashed_subpages (rpte, psize, va, index, shift) \ - do { \ - index = 0; \ - shift = mmu_psize_defs[psize].shift; \ - -#define pte_iterate_hashed_end () } while(0) - -/* -* We expect this to be called only for user addresses or kernel virtual -* addresses other than the linear mapping. -*/ -#define pte_pagesize_index (mm, addr, pte) MMU_PAGE_4K - -#endif /* __real_pte */ -static inline unsigned long pte_update (struct mm_struct *mm,unsigned long addr,pte_t *ptep,unsigned long clr,unsigned long set,int huge)
arch/powerpc/lib/code-patching.c +1 -1
@@ -51,7 +51,7 @@ static int text_area_cpu_up(unsigned int cpu) {struct vm_struct *area; - area =get_vm_area (PAGE_SIZE ,VM_ALLOC ); + area =get_vm_area (PAGE_SIZE ,0 );if (!area) {WARN_ONCE (1 ,"Failed to create text area for cpu %d\n" , cpu);
arch/powerpc/platforms/pseries/eeh_pseries.c +4 -2
@@ -578,8 +578,10 @@ static int pseries_eeh_get_state(struct eeh_pe *pe, int *delay)switch (rets[0 ]) {case 0 : - result =EEH_STATE_MMIO_ACTIVE | -EEH_STATE_DMA_ACTIVE ; + result =EEH_STATE_MMIO_ACTIVE | +EEH_STATE_DMA_ACTIVE | +EEH_STATE_MMIO_ENABLED | +EEH_STATE_DMA_ENABLED ;break ;case 1 : result = EEH_STATE_RESET_ACTIVE |
arch/powerpc/platforms/pseries/svm.c +1 -2
@@ -56,8 +56,7 @@ void __init svm_swiotlb_init(void)return ; -memblock_free_early (__pa (vstart), -PAGE_ALIGN (io_tlb_nslabs <<IO_TLB_SHIFT )); +memblock_free (__pa (vstart),PAGE_ALIGN (io_tlb_nslabs <<IO_TLB_SHIFT ));panic ("SVM: Cannot allocate SWIOTLB buffer" ); }
arch/s390/include/asm/futex.h +1 -1
@@ -43,7 +43,7 @@ static inline int arch_futex_atomic_op_inuser(int op, int oparg, int *oval,break ;case FUTEX_OP_ANDN :__futex_atomic_op ("lr %2,%1\nnr %2,%5\n" , - ret, oldval, newval, uaddr, oparg); + ret, oldval, newval, uaddr, ~oparg);break ;case FUTEX_OP_XOR : __futex_atomic_op("lr %2,%1\nxr %2,%5\n",
arch/s390/kernel/smp.c +1 -1
@@ -875,7 +875,7 @@ void __init smp_detect_cpus(void)/* Add CPUs present at boot */ __smp_rescan_cpus (info, true); -memblock_free_early ((unsigned long )info,sizeof (*info)); +memblock_free ((unsigned long )info,sizeof (*info)); }/*
arch/s390/kernel/traps.c +3 -3
@@ -281,10 +281,10 @@ static void __init test_monitor_call(void)return ; asmvolatile (" mc 0,0\n" -"0: xgr %0,%0\n" +"0: lhi %[val],0\n" "1:\n" - EX_TABLE(0b,1b) - : "+d" (val)); + EX_TABLE(0b, 1b) + : [val] "+d" (val)); if (!val)panic ("Monitor call doesn't work!\n" ); }
arch/s390/kvm/vsie.c +19 -6
@@ -1321,8 +1321,14 @@ static struct vsie_page *get_vsie_page(struct kvm *kvm, unsigned long addr) page =radix_tree_lookup (&kvm->arch.vsie.addr_to_page, addr >>9 );rcu_read_unlock ();if (page) { -if (page_ref_inc_return (page) ==2 ) -return page_to_virt (page); +if (page_ref_inc_return (page) ==2 ) { +if (page->index == addr) +return page_to_virt (page); +/* +* We raced with someone reusing + putting this vsie +* page before we grabbed it. +*/ + }page_ref_dec (page); }
@@ -1352,15 +1358,20 @@ static struct vsie_page *get_vsie_page(struct kvm *kvm, unsigned long addr) kvm->arch.vsie.next++; kvm->arch.vsie.next %= nr_vcpus; } -radix_tree_delete (&kvm->arch.vsie.addr_to_page, page->index >>9 ); +if (page->index !=ULONG_MAX ) +radix_tree_delete (&kvm->arch.vsie.addr_to_page, + page->index >>9 ); } - page->index = addr; -/* double use of the same address */ +/* Mark it as invalid until it resides in the tree. */ + page->index =ULONG_MAX ; + +/* Double use of the same address or allocation failure. */ if (radix_tree_insert (&kvm->arch.vsie.addr_to_page, addr >>9 , page)) {page_ref_dec (page);mutex_unlock (&kvm->arch.vsie.mutex);return NULL ; } + page->index = addr;mutex_unlock (&kvm->arch.vsie.mutex); vsie_page =page_to_virt (page);
@@ -1453,7 +1464,9 @@ void kvm_s390_vsie_destroy(struct kvm *kvm) vsie_page =page_to_virt (page);release_gmap_shadow (vsie_page);/* free the radix tree entry */ -radix_tree_delete (&kvm->arch.vsie.addr_to_page, page->index >>9 ); +if (page->index !=ULONG_MAX ) +radix_tree_delete (&kvm->arch.vsie.addr_to_page, + page->index >>9 );__free_page (page); } kvm->arch.vsie.page_count =0 ;
arch/x86/Kconfig +2 -1
@@ -2449,7 +2449,8 @@ config CPU_IBPB_ENTRY depends on CPU_SUP_AMD && X86_64 default y help - Compile the kernel with support for the retbleed=ibpb mitigation. + Compile the kernel with support for the retbleed=ibpb and + spec_rstack_overflow={ibpb,ibpb-vmexit} mitigations. config CPU_IBRS_ENTRY bool "Enable IBRS on kernel entry"
arch/x86/boot/compressed/Makefile +1 -0
@@ -33,6 +33,7 @@ targets := vmlinux vmlinux.bin vmlinux.bin.gz vmlinux.bin.bz2 vmlinux.bin.lzma \ # avoid errors with '-march=i386', and future flags may depend on the target to # be valid. KBUILD_CFLAGS := -m$(BITS) -O2 $(CLANG_FLAGS) +KBUILD_CFLAGS += -std=gnu11 KBUILD_CFLAGS += -fno-strict-aliasing -fPIE KBUILD_CFLAGS += -Wundef KBUILD_CFLAGS += -DDISABLE_BRANCH_PROFILING
arch/x86/events/intel/core.c +4 -1
@@ -4364,8 +4364,11 @@ static void intel_pmu_cpu_starting(int cpu)init_debug_store_on_cpu (cpu);/* -* Deal with CPUs that don't clear their LBRs on power-up. +* Deal with CPUs that don't clear their LBRs on power-up, and that may +* even boot with LBRs enabled. */ +if (!static_cpu_has (X86_FEATURE_ARCH_LBR ) && x86_pmu.lbr_nr) +msr_clear_bit (MSR_IA32_DEBUGCTLMSR ,DEBUGCTLMSR_LBR_BIT );intel_pmu_lbr_reset (); cpuc->lbr_sel =NULL ;
arch/x86/include/asm/mmu.h +2 -0
@@ -33,6 +33,8 @@ typedef struct {*/ atomic64_t tlb_gen; +unsigned long next_trim_cpumask; +#ifdef CONFIG_MODIFY_LDT_SYSCALL struct rw_semaphore ldt_usr_sem;struct ldt_struct *ldt;
arch/x86/include/asm/mmu_context.h +1 -0
@@ -106,6 +106,7 @@ static inline int init_new_context(struct task_struct *tsk, mm->context.ctx_id =atomic64_inc_return (&last_mm_ctx_id);atomic64_set (&mm->context.tlb_gen,0 ); + mm->context.next_trim_cpumask = jiffies +HZ ;#ifdef CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS if (cpu_feature_enabled (X86_FEATURE_OSPKE )) {
arch/x86/include/asm/msr-index.h +2 -1
@@ -337,7 +337,8 @@#define MSR_IA32_PASID_VALID BIT_ULL(31)/* DEBUGCTLMSR bits (others vary by model): */ -#define DEBUGCTLMSR_LBR (1UL << 0)/* last branch recording */ +#define DEBUGCTLMSR_LBR_BIT 0/* last branch recording */ +#define DEBUGCTLMSR_LBR (1UL << DEBUGCTLMSR_LBR_BIT)#define DEBUGCTLMSR_BTF_SHIFT 1#define DEBUGCTLMSR_BTF (1UL << 1)/* single-step on branches */ #define DEBUGCTLMSR_BUS_LOCK_DETECT (1UL << 2)
arch/x86/include/asm/tlbflush.h +1 -0
@@ -207,6 +207,7 @@ struct flush_tlb_info {unsigned int initiating_cpu;u8 stride_shift;u8 freed_tables; +u8 trim_cpumask; };void flush_tlb_local (void );
arch/x86/kernel/amd_nb.c +4 -0
@@ -544,6 +544,10 @@ static __init void fix_erratum_688(void)static __init int init_amd_nbs (void ) { +if (boot_cpu_data.x86_vendor !=X86_VENDOR_AMD && + boot_cpu_data.x86_vendor !=X86_VENDOR_HYGON ) +return 0 ; +amd_cache_northbridges ();amd_cache_gart ();
arch/x86/kernel/cpu/bugs.c +14 -6
@@ -1092,6 +1092,8 @@ static void __init retbleed_select_mitigation(void)case RETBLEED_MITIGATION_IBPB :setup_force_cpu_cap (X86_FEATURE_ENTRY_IBPB ); +setup_force_cpu_cap (X86_FEATURE_IBPB_ON_VMEXIT ); + mitigate_smt = true;/* * IBPB on entry already obviates the need for
@@ -1101,8 +1103,6 @@ static void __init retbleed_select_mitigation(void)setup_clear_cpu_cap (X86_FEATURE_UNRET );setup_clear_cpu_cap (X86_FEATURE_RETHUNK ); - mitigate_smt = true; -/* * There is no need for RSB filling: entry_ibpb() ensures * all predictions, including the RSB, are invalidated,
@@ -2607,6 +2607,7 @@ static void __init srso_select_mitigation(void)if (IS_ENABLED (CONFIG_CPU_IBPB_ENTRY )) {if (has_microcode) {setup_force_cpu_cap (X86_FEATURE_ENTRY_IBPB ); +setup_force_cpu_cap (X86_FEATURE_IBPB_ON_VMEXIT ); srso_mitigation =SRSO_MITIGATION_IBPB ;/*
@@ -2616,6 +2617,13 @@ static void __init srso_select_mitigation(void)*/ setup_clear_cpu_cap (X86_FEATURE_UNRET );setup_clear_cpu_cap (X86_FEATURE_RETHUNK ); + +/* +* There is no need for RSB filling: entry_ibpb() ensures +* all predictions, including the RSB, are invalidated, +* regardless of IBPB implementation. +*/ +setup_clear_cpu_cap (X86_FEATURE_RSB_VMEXIT ); } }else {pr_err ("WARNING: kernel not compiled with CPU_IBPB_ENTRY.\n" );
@@ -2624,8 +2632,8 @@ static void __init srso_select_mitigation(void)break ;case SRSO_CMD_IBPB_ON_VMEXIT : -if (IS_ENABLED (CONFIG_CPU_SRSO )) { -if (!boot_cpu_has (X86_FEATURE_ENTRY_IBPB ) && has_microcode) { +if (IS_ENABLED (CONFIG_CPU_IBPB_ENTRY )) { +if (has_microcode) {setup_force_cpu_cap (X86_FEATURE_IBPB_ON_VMEXIT ); srso_mitigation =SRSO_MITIGATION_IBPB_ON_VMEXIT ;
@@ -2637,9 +2645,9 @@ static void __init srso_select_mitigation(void)setup_clear_cpu_cap (X86_FEATURE_RSB_VMEXIT ); } }else { -pr_err ("WARNING: kernel not compiled with CPU_SRSO.\n" ); +pr_err ("WARNING: kernel not compiled with CPU_IBPB_ENTRY.\n" ); goto pred_cmd; - } + }break ;default :
arch/x86/kernel/cpu/cacheinfo.c +1 -1
@@ -795,7 +795,7 @@ void init_intel_cacheinfo(struct cpuinfo_x86 *c)cpuid (2 , ®s[0 ], ®s[1 ], ®s[2 ], ®s[3 ]);/* If bit 31 is set, this is an unknown format */ -for (j =0 ; j <3 ; j++) +for (j =0 ; j <4 ; j++)if (regs[j] & (1 <<31 )) regs[j] =0 ;
arch/x86/kernel/cpu/cyrix.c +2 -2
@@ -152,8 +152,8 @@ static void geode_configure(void)u8 ccr3;local_irq_save (flags); -/* Suspend on halt power saving and enable #SUSP pin */ -setCx86 (CX86_CCR2 ,getCx86 (CX86_CCR2 ) |0x88 ); +/* Suspend on halt power saving */ +setCx86 (CX86_CCR2 ,getCx86 (CX86_CCR2 ) |0x08 ); ccr3 =getCx86 (CX86_CCR3 );setCx86 (CX86_CCR3 , (ccr3 &0x0f ) |0x10 );/* enable MAPEN */
arch/x86/kernel/cpu/intel.c +35 -17
81 lines not on this page · raw message
arch/x86/kernel/cpu/sgx/encl.c +86 -22
158 lines not on this page · raw message
arch/x86/kernel/cpu/sgx/encl.h +6 -2
@@ -113,11 +113,15 @@ int sgx_encl_alloc_backing(struct sgx_encl *encl, unsigned long page_index,void sgx_encl_put_backing (struct sgx_backing *backing);int sgx_encl_test_and_clear_young (struct mm_struct *mm,struct sgx_encl_page *page); - -struct sgx_epc_page *sgx_alloc_va_page (void ); +void sgx_zap_enclave_ptes (struct sgx_encl *encl,unsigned long addr); +struct sgx_epc_page *sgx_alloc_va_page (bool reclaim);unsigned int sgx_alloc_va_slot (struct sgx_va_page *va_page);void sgx_free_va_slot (struct sgx_va_page *va_page,unsigned int offset);bool sgx_va_page_full (struct sgx_va_page *va_page);void sgx_encl_free_epc_page (struct sgx_epc_page *page); +struct sgx_encl_page *sgx_encl_load_page (struct sgx_encl *encl, +unsigned long addr); +struct sgx_va_page *sgx_encl_grow (struct sgx_encl *encl,bool reclaim); +void sgx_encl_shrink (struct sgx_encl *encl,struct sgx_va_page *va_page);#endif /* _X86_ENCL_H */
arch/x86/kernel/cpu/sgx/ioctl.c +12 -5
@@ -17,7 +17,7 @@#include "encl.h" #include "encls.h" -static struct sgx_va_page *sgx_encl_grow (struct sgx_encl *encl) +struct sgx_va_page *sgx_encl_grow (struct sgx_encl *encl,bool reclaim) {struct sgx_va_page *va_page =NULL ;void *err;
@@ -30,7 +30,7 @@ static struct sgx_va_page *sgx_encl_grow(struct sgx_encl *encl)if (!va_page)return ERR_PTR (-ENOMEM ); - va_page->epc_page =sgx_alloc_va_page (); + va_page->epc_page =sgx_alloc_va_page (reclaim);if (IS_ERR (va_page->epc_page)) { err =ERR_CAST (va_page->epc_page);kfree (va_page);
@@ -43,7 +43,7 @@ static struct sgx_va_page *sgx_encl_grow(struct sgx_encl *encl)return va_page; } -static void sgx_encl_shrink (struct sgx_encl *encl,struct sgx_va_page *va_page) +void sgx_encl_shrink (struct sgx_encl *encl,struct sgx_va_page *va_page) { encl->page_cnt--;
@@ -64,7 +64,14 @@ static int sgx_encl_create(struct sgx_encl *encl, struct sgx_secs *secs)struct file *backing;long ret; - va_page =sgx_encl_grow (encl); +/* +* ECREATE would detect this too, but checking here also ensures +* that the 'encl_size' calculations below can never overflow. +*/ +if (!is_power_of_2 (secs->size)) +return -EINVAL ; + + va_page =sgx_encl_grow (encl, true);if (IS_ERR (va_page))return PTR_ERR (va_page);else if (va_page)
@@ -306,7 +313,7 @@ static int sgx_encl_add_page(struct sgx_encl *encl, unsigned long src,return PTR_ERR (epc_page); } - va_page =sgx_encl_grow (encl); + va_page =sgx_encl_grow (encl, true);if (IS_ERR (va_page)) { ret =PTR_ERR (va_page); goto err_out_free;
arch/x86/kernel/cpu/sgx/main.c +2 -29
@@ -122,36 +122,9 @@ static void sgx_reclaimer_block(struct sgx_epc_page *epc_page)struct sgx_encl_page *page = epc_page->owner;unsigned long addr = page->desc &PAGE_MASK ;struct sgx_encl *encl = page->encl; -unsigned long mm_list_version; -struct sgx_encl_mm *encl_mm; -struct vm_area_struct *vma; -int idx, ret; - -do { - mm_list_version = encl->mm_list_version; - -/* Pairs with smp_rmb() in sgx_encl_mm_add(). */ -smp_rmb (); - - idx =srcu_read_lock (&encl->srcu); - -list_for_each_entry_rcu (encl_mm, &encl->mm_list, list) { -if (!mmget_not_zero (encl_mm->mm)) -continue ; - -mmap_read_lock (encl_mm->mm); - - ret =sgx_encl_find (encl_mm->mm, addr, &vma); -if (!ret && encl == vma->vm_private_data) -zap_vma_ptes (vma, addr,PAGE_SIZE ); - -mmap_read_unlock (encl_mm->mm); - -mmput_async (encl_mm->mm); - } +int ret; -srcu_read_unlock (&encl->srcu, idx); - }while (unlikely (encl->mm_list_version != mm_list_version)); +sgx_zap_enclave_ptes (encl, addr);mutex_lock (&encl->lock);
arch/x86/kernel/i8253.c +9 -2
@@ -8,6 +8,7 @@#include <linux/timex.h> #include <linux/i8253.h> +#include <asm/hypervisor.h> #include <asm/apic.h> #include <asm/hpet.h> #include <asm/time.h>
@@ -39,9 +40,15 @@ static bool __init use_pit(void)bool __init pit_timer_init (void ) { -if (!use_pit ()) +if (!use_pit ()) { +/* +* Don't just ignore the PIT. Ensure it's stopped, because +* VMMs otherwise steal CPU time just to pointlessly waggle +* the (masked) IRQ. +*/ +clockevent_i8253_disable ();return false; - + }clockevent_i8253_init (true); global_clock_event = &i8253_clockevent;return true;
arch/x86/kernel/static_call.c +0 -1
@@ -169,7 +169,6 @@ EXPORT_SYMBOL_GPL(arch_static_call_transform); noinstr void __static_call_update_early(void *tramp, void *func) {BUG_ON (system_state !=SYSTEM_BOOTING ); -BUG_ON (!early_boot_irqs_disabled);BUG_ON (static_call_initialized);__text_gen_insn (tramp,JMP32_INSN_OPCODE , tramp, func,JMP32_INSN_SIZE );sync_core ();
arch/x86/kvm/hyperv.c +5 -1
@@ -1902,6 +1902,9 @@ static u64 kvm_hv_send_ipi(struct kvm_vcpu *vcpu, struct kvm_hv_hcall *hc)bool all_cpus;int i; +if (!lapic_in_kernel (vcpu)) +return HV_STATUS_INVALID_HYPERCALL_INPUT ; +if (hc->code ==HVCALL_SEND_IPI ) {if (!hc->fast) { if (unlikely(kvm_read_guest(kvm, hc->ingpa, &send_ipi,
@@ -2507,7 +2510,8 @@ int kvm_get_hv_cpuid(struct kvm_vcpu *vcpu, struct kvm_cpuid2 *cpuid, ent->eax |=HV_X64_REMOTE_TLB_FLUSH_RECOMMENDED ; ent->eax |=HV_X64_APIC_ACCESS_RECOMMENDED ; ent->eax |=HV_X64_RELAXED_TIMING_RECOMMENDED ; - ent->eax |=HV_X64_CLUSTER_IPI_RECOMMENDED ; +if (!vcpu ||lapic_in_kernel (vcpu)) + ent->eax |=HV_X64_CLUSTER_IPI_RECOMMENDED ; ent->eax |=HV_X64_EX_PROCESSOR_MASKS_RECOMMENDED ;if (evmcs_ver) ent->eax |=HV_X64_ENLIGHTENED_VMCS_RECOMMENDED ;
arch/x86/mm/init.c +14 -9
@@ -264,28 +264,33 @@ static void __init probe_page_size_mask(void) }/* -* INVLPG may not properly flush Global entries -* on these CPUs when PCIDs are enabled. +* INVLPG may not properly flush Global entries on +* these CPUs. New microcode fixes the issue. */ static const struct x86_cpu_id invlpg_miss_ids[] = { -X86_MATCH_INTEL_FAM6_MODEL (ALDERLAKE ,0 ), -X86_MATCH_INTEL_FAM6_MODEL (ALDERLAKE_L ,0 ), -X86_MATCH_INTEL_FAM6_MODEL (ALDERLAKE_N ,0 ), -X86_MATCH_INTEL_FAM6_MODEL (RAPTORLAKE ,0 ), -X86_MATCH_INTEL_FAM6_MODEL (RAPTORLAKE_P ,0 ), -X86_MATCH_INTEL_FAM6_MODEL (RAPTORLAKE_S ,0 ), +X86_MATCH_INTEL_FAM6_MODEL (ALDERLAKE ,0x2e ), +X86_MATCH_INTEL_FAM6_MODEL (ALDERLAKE_L ,0x42c ), +X86_MATCH_INTEL_FAM6_MODEL (ALDERLAKE_N ,0x11 ), +X86_MATCH_INTEL_FAM6_MODEL (RAPTORLAKE ,0x118 ), +X86_MATCH_INTEL_FAM6_MODEL (RAPTORLAKE_P ,0x4117 ), +X86_MATCH_INTEL_FAM6_MODEL (RAPTORLAKE_S ,0x2e ), {} };static void setup_pcid (void ) { +const struct x86_cpu_id *invlpg_miss_match; +if (!IS_ENABLED (CONFIG_X86_64 ))return ;if (!boot_cpu_has (X86_FEATURE_PCID ))return ; -if (x86_match_cpu (invlpg_miss_ids)) { + invlpg_miss_match =x86_match_cpu (invlpg_miss_ids); + +if (invlpg_miss_match && + boot_cpu_data.microcode < invlpg_miss_match->driver_data) {pr_info ("Incomplete global flushes, disabling PCID" );setup_clear_cpu_cap (X86_FEATURE_PCID );return ;
arch/x86/mm/tlb.c +32 -3
@@ -854,9 +854,36 @@ static void flush_tlb_func(void *info) nr_invalidate); } -static bool tlb_is_not_lazy (int cpu,void *data) +static bool should_flush_tlb (int cpu,void *data) { -return !per_cpu (cpu_tlbstate_shared.is_lazy, cpu); +struct flush_tlb_info *info = data; + +/* Lazy TLB will get flushed at the next context switch. */ +if (per_cpu (cpu_tlbstate_shared.is_lazy, cpu)) +return false; + +/* No mm means kernel memory flush. */ +if (!info->mm) +return true; + +/* The target mm is loaded, and the CPU is not lazy. */ +if (per_cpu (cpu_tlbstate.loaded_mm, cpu) == info->mm) +return true; + +/* In cpumask, but not the loaded mm? Periodically remove by flushing. */ +if (info->trim_cpumask) +return true; + +return false; +} + +static bool should_trim_cpumask (struct mm_struct *mm) +{ +if (time_after (jiffies,READ_ONCE (mm->context.next_trim_cpumask))) { +WRITE_ONCE (mm->context.next_trim_cpumask, jiffies +HZ ); +return true; + } +return false; } DEFINE_PER_CPU_SHARED_ALIGNED(struct tlb_state_shared, cpu_tlbstate_shared);
@@ -890,7 +917,7 @@ STATIC_NOPV void native_flush_tlb_multi(const struct cpumask *cpumask,if (info->freed_tables)on_each_cpu_mask (cpumask, flush_tlb_func, (void *)info, true);else -on_each_cpu_cond_mask (tlb_is_not_lazy, flush_tlb_func, +on_each_cpu_cond_mask (should_flush_tlb, flush_tlb_func, (void *)info,1 , cpumask); }
@@ -941,6 +968,7 @@ static struct flush_tlb_info *get_flush_tlb_info(struct mm_struct *mm, info->freed_tables = freed_tables; info->new_tlb_gen = new_tlb_gen; info->initiating_cpu =smp_processor_id (); + info->trim_cpumask =0 ;return info; }
@@ -983,6 +1011,7 @@ void flush_tlb_mm_range(struct mm_struct *mm, unsigned long start,* flush_tlb_func_local() directly in this case. */ if (cpumask_any_but (mm_cpumask (mm), cpu) < nr_cpu_ids) { + info->trim_cpumask =should_trim_cpumask (mm);flush_tlb_multi (mm_cpumask (mm), info); }else if (mm ==this_cpu_read (cpu_tlbstate.loaded_mm)) {lockdep_assert_irqs_enabled ();
arch/x86/xen/mmu_pv.c +65 -14
153 lines not on this page · raw message
arch/x86/xen/p2m.c +1 -1
@@ -197,7 +197,7 @@ static void * __ref alloc_p2m_page(void)static void __ref free_p2m_page (void *p) {if (unlikely (!slab_is_available ())) { -memblock_free ((unsigned long )p,PAGE_SIZE ); +memblock_free_ptr (p,PAGE_SIZE );return ; }
arch/x86/xen/xen-head.S +3 -2
@@ -115,8 +115,8 @@ SYM_FUNC_START(xen_hypercall_hvm) pop %ebx pop %eax #else - lea xen_hypercall_amd(%rip), %rbx - cmp %rax, %rbx + lea xen_hypercall_amd(%rip), %rcx + cmp %rax, %rcx #ifdef CONFIG_FRAME_POINTER pop %rax /* Dummy pop. */ #endif
@@ -130,6 +130,7 @@ SYM_FUNC_START(xen_hypercall_hvm) pop %rcx pop %rax #endif + FRAME_END /* Use correct hypercall function. */ jz xen_hypercall_amd jmp xen_hypercall_intel
block/Kconfig +12 -0
@@ -26,6 +26,18 @@ menuconfig BLOCK if BLOCK +config BLOCK_LEGACY_AUTOLOAD + bool "Legacy autoloading support" + help + Enable loading modules and creating block device instances based on + accesses through their device special file. This is a historic Linux + feature and makes no sense in a udev world where device files are + created on demand. + + Say N here unless booting or other functionality broke without it, in + which case you should also send a report to your distribution and + [email protected]. + config BLK_RQ_ALLOC_TIME bool
block/bdev.c +6 -3
@@ -736,12 +736,15 @@ struct block_device *blkdev_get_no_open(dev_t dev)struct inode *inode; inode =ilookup (blockdev_superblock, dev); -if (!inode) { +if (!inode &&IS_ENABLED (CONFIG_BLOCK_LEGACY_AUTOLOAD )) {blk_request_module (dev); inode =ilookup (blockdev_superblock, dev); -if (!inode) -return NULL ; +if (inode) +pr_warn_ratelimited ( +"block device autoloading is deprecated. It will be removed in Linux 5.19\n" ); } +if (!inode) +return NULL ;/* switch from the inode reference to a device mode one: */ bdev = &BDEV_I (inode)->bdev;
block/blk-cgroup.c +1 -0
@@ -894,6 +894,7 @@ static void blkcg_fill_root_iostats(void)blkg_iostat_set (&blkg->iostat.cur, &tmp);u64_stats_update_end_irqrestore (&blkg->iostat.sync, flags); } +class_dev_iter_exit (&iter); }static void blkcg_print_one_stat (struct blkcg_gq *blkg,struct seq_file *s)
block/genhd.c +23 -5
@@ -182,7 +182,9 @@ static struct blk_major_name {struct blk_major_name *next;int major;char name[16 ]; +#ifdef CONFIG_BLOCK_LEGACY_AUTOLOAD void (*probe)(dev_t devt); +#endif } *major_names[BLKDEV_MAJOR_HASH_SIZE ];static DEFINE_MUTEX (major_names_lock);static DEFINE_SPINLOCK (major_names_spinlock);
@@ -269,7 +271,9 @@ int __register_blkdev(unsigned int major, const char *name, } p->major = major; +#ifdef CONFIG_BLOCK_LEGACY_AUTOLOAD p->probe = probe; +#endif strlcpy (p->name, name,sizeof (p->name)); p->next =NULL ; index =major_to_index (major);
@@ -669,7 +673,8 @@ static ssize_t disk_badblocks_store(struct device *dev,return badblocks_store (disk->bb, page, len,0 ); } -void blk_request_module (dev_t devt) +#ifdef CONFIG_BLOCK_LEGACY_AUTOLOAD +static bool blk_probe_dev (dev_t devt) {unsigned int major =MAJOR (devt);struct blk_major_name **n;
@@ -679,15 +684,28 @@ void blk_request_module(dev_t devt)if ((*n)->major == major && (*n)->probe) { (*n)->probe (devt);mutex_unlock (&major_names_lock); -return ; +return true; } }mutex_unlock (&major_names_lock); +return false; +} + +void blk_request_module (dev_t devt) +{ +int error; + +if (blk_probe_dev (devt)) +return ; -if (request_module ("block-major-%d-%d" ,MAJOR (devt),MINOR (devt)) >0 ) -/* Make old-style 2.4 aliases work */ -request_module ("block-major-%d" ,MAJOR (devt)); + error =request_module ("block-major-%d-%d" ,MAJOR (devt),MINOR (devt)); +/* Make old-style 2.4 aliases work */ +if (error >0 ) + error =request_module ("block-major-%d" ,MAJOR (devt)); +if (!error) +blk_probe_dev (devt); } +#endif /* CONFIG_BLOCK_LEGACY_AUTOLOAD */ /* * print a full list of all partitions - intended for places where the root
block/partitions/efi.c +1 -1
@@ -682,7 +682,7 @@ static void utf16_le_to_7bit(const __le16 *in, unsigned int size, u8 *out) out[size] =0 ;while (i < size) { -u8 c =le16_to_cpu (in[i]) &0xff ; +u8 c =le16_to_cpu (in[i]) &0x7f ;if (c && !isprint (c)) c ='!' ;
block/partitions/ldm.h +1 -1
@@ -1,5 +1,5 @@// SPDX-License-Identifier: GPL-2.0-or-later -/** +/* * ldm - Part of the Linux-NTFS project. * * Copyright (C) 2001,2002 Richard Russon <[email protected]>
block/partitions/mac.c +15 -3
@@ -51,13 +51,25 @@ int mac_partition(struct parsed_partitions *state) } secsize =be16_to_cpu (md->block_size);put_dev_sector (sect); + +/* +* If the "block size" is not a power of 2, things get weird - we might +* end up with a partition straddling a sector boundary, so we wouldn't +* be able to read a partition entry with read_part_sector(). +* Real block sizes are probably (?) powers of two, so just require +* that. +*/ +if (!is_power_of_2 (secsize)) +return -1 ; datasize =round_down (secsize,512 ); data =read_part_sector (state, datasize /512 , §);if (!data)return -1 ; partoffset = secsize %512 ; -if (partoffset +sizeof (*part) > datasize) +if (partoffset +sizeof (*part) > datasize) { +put_dev_sector (sect);return -1 ; + } part = (struct mac_partition *) (data + partoffset);if (be16_to_cpu (part->signature) !=MAC_PARTITION_MAGIC ) {put_dev_sector (sect);
@@ -110,8 +122,8 @@ int mac_partition(struct parsed_partitions *state)int i, l; goodness++; - l =strlen (part->name); -if (strcmp (part->name,"/" ) ==0 ) + l =strnlen (part->name,sizeof (part->name)); +if (strncmp (part->name,"/" ,sizeof (part->name)) ==0 ) goodness++;for (i =0 ; i <= l -4 ; ++i) { if (strncasecmp(part->name + i, "root",
crypto/testmgr.h +165 -62
111 lines not on this page · raw message
drivers/clk/analogbits/wrpll-cln28hpc.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/crypto/hisilicon/sec2/sec_crypto.c +86 -96
182 lines not on this page · raw message
drivers/crypto/hisilicon/sec2/sec_crypto.h +0 -11
Lines of this file are not shown. View the raw message.
drivers/firmware/efi/libstub/randomalloc.c +3 -0
Lines of this file are not shown. View the raw message.
drivers/firmware/efi/libstub/relocate.c +3 -0
Lines of this file are not shown. View the raw message.
drivers/gpio/gpio-bcm-kona.c +58 -13
71 lines not on this page · raw message
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +11 -0
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c +14 -0
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/pm/powerplay/hwmgr/ppatomctrl.c +2 -0
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/pm/swsmu/smu13/aldebaran_ppt.c +0 -1
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/arm/display/komeda/komeda_wb_connector.c +4 -0
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/drm_probe_helper.c +85 -31
116 lines not on this page · raw message
drivers/gpu/drm/i915/display/skl_universal_plane.c +0 -4
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/i915/selftests/i915_gem_gtt.c +2 -2
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/scheduler/gpu_scheduler_trace.h +2 -2
Lines of this file are not shown. View the raw message.
drivers/hwmon/ntc_thermistor.c +33 -33
66 lines not on this page · raw message
drivers/infiniband/hw/mlx5/odp.c +33 -28
61 lines not on this page · raw message
drivers/media/dvb-frontends/cxd2841er.c +2 -6
Lines of this file are not shown. View the raw message.
drivers/media/i2c/imx412.c +21 -21
42 lines not on this page · raw message
drivers/media/platform/exynos4-is/mipi-csis.c +8 -2
Lines of this file are not shown. View the raw message.
drivers/media/platform/imx-jpeg/mxc-jpeg.c +4 -3
Lines of this file are not shown. View the raw message.
drivers/media/platform/marvell-ccic/mcam-core.c +6 -1
Lines of this file are not shown. View the raw message.
drivers/media/platform/s3c-camif/camif-core.c +11 -2
Lines of this file are not shown. View the raw message.
drivers/media/test-drivers/vidtv/vidtv_bridge.c +7 -1
Lines of this file are not shown. View the raw message.
drivers/media/usb/dvb-usb-v2/lmedm04.c +11 -1
Lines of this file are not shown. View the raw message.
drivers/media/usb/uvc/uvc_ctrl.c +115 -24
139 lines not on this page · raw message
drivers/media/usb/uvc/uvc_driver.c +50 -55
105 lines not on this page · raw message
drivers/memory/jedec_ddr.h +47 -0
47 lines not on this page · raw message
drivers/memory/jedec_ddr_data.c +41 -0
41 lines not on this page · raw message
drivers/memory/of_memory.c +87 -0
87 lines not on this page · raw message
drivers/memory/tegra/tegra20-emc.c +187 -16
203 lines not on this page · raw message
drivers/mmc/host/sdhci-msm.c +51 -2
53 lines not on this page · raw message
drivers/mtd/nand/onenand/onenand_base.c +1 -0
Lines of this file are not shown. View the raw message.
drivers/mtd/nand/raw/cadence-nand-controller.c +33 -11
44 lines not on this page · raw message
drivers/net/ethernet/aquantia/atlantic/aq_nic.c +3 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/broadcom/tg3.c +58 -0
58 lines not on this page · raw message
drivers/net/ethernet/cadence/macb_main.c +10 -2
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/emulex/benet/be_cmds.c +98 -99
197 lines not on this page · raw message
drivers/net/ethernet/emulex/benet/be_main.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/freescale/enetc/enetc.c +54 -15
69 lines not on this page · raw message
drivers/net/ethernet/freescale/fec_main.c +30 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/hisilicon/hns3/hnae3.c +15 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/hisilicon/hns3/hnae3.h +2 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c +2 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c +2 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_ptp.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c +2 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c +13 -11
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/mellanox/mlx5/core/mr.c +0 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/mellanox/mlx5/core/pci_irq.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/mellanox/mlxfw/mlxfw_fsm.c +0 -2
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c +3 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/netronome/nfp/bpf/cmsg.c +2 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/ti/am65-cpsw-nuss.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c +5 -0
Lines of this file are not shown. View the raw message.
drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy/phy_n.c +3 -0
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/iwlwifi/fw/acpi.c +8 -5
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/iwlwifi/iwl-drv.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/mediatek/mt76/usb.c +2 -2
Lines of this file are not shown. View the raw message.
drivers/net/wireless/realtek/rtlwifi/base.c +13 -29
42 lines not on this page · raw message
drivers/net/wireless/realtek/rtlwifi/base.h +0 -2
Lines of this file are not shown. View the raw message.
drivers/net/wireless/realtek/rtlwifi/pci.c +9 -58
67 lines not on this page · raw message
drivers/net/wireless/realtek/rtlwifi/rtl8192se/sw.c +4 -3
Lines of this file are not shown. View the raw message.
drivers/net/wireless/realtek/rtlwifi/rtl8821ae/fw.h +2 -2
Lines of this file are not shown. View the raw message.
drivers/net/wireless/realtek/rtlwifi/usb.c +5 -7
Lines of this file are not shown. View the raw message.
drivers/net/wireless/realtek/rtlwifi/wifi.h +0 -23
Lines of this file are not shown. View the raw message.
drivers/net/wwan/iosm/iosm_ipc_pcie.c +55 -1
56 lines not on this page · raw message
drivers/phy/samsung/phy-exynos5-usbdrd.c +6 -6
Lines of this file are not shown. View the raw message.
drivers/pps/pps.c +66 -61
127 lines not on this page · raw message
drivers/rapidio/devices/rio_mport_cdev.c +2 -1
Lines of this file are not shown. View the raw message.
drivers/scsi/qla2xxx/qla_dfs.c +102 -22
124 lines not on this page · raw message
drivers/scsi/scsi_lib.c +28 -32
60 lines not on this page · raw message
drivers/staging/media/imx/imx-media-of.c +2 -6
Lines of this file are not shown. View the raw message.
drivers/usb/core/hub.c +46 -3
49 lines not on this page · raw message
drivers/usb/dwc3/core.c +69 -46
115 lines not on this page · raw message
drivers/usb/dwc3/gadget.c +43 -4
47 lines not on this page · raw message
drivers/usb/gadget/function/f_tcm.c +26 -40
66 lines not on this page · raw message
drivers/usb/serial/option.c +29 -20
49 lines not on this page · raw message
drivers/usb/typec/tcpm/tcpci_rt1711h.c +11 -0
Lines of this file are not shown. View the raw message.
drivers/vfio/platform/vfio_platform_common.c +10 -0
Lines of this file are not shown. View the raw message.
drivers/video/fbdev/omap2/omapfb/dss/dss-of.c +1 -0
Lines of this file are not shown. View the raw message.
fs/afs/server_list.c +104 -10
114 lines not on this page · raw message
fs/f2fs/dir.c +38 -15
53 lines not on this page · raw message
fs/file_table.c +39 -8
47 lines not on this page · raw message
fs/nfs/flexfilelayout/flexfilelayout.c +21 -6
Lines of this file are not shown. View the raw message.
fs/nilfs2/page.c +32 -23
55 lines not on this page · raw message
fs/overlayfs/copy_up.c +24 -20
44 lines not on this page · raw message
fs/overlayfs/dir.c +53 -47
100 lines not on this page · raw message
fs/overlayfs/overlayfs.h +61 -31
92 lines not on this page · raw message
fs/xfs/xfs_qm_bhv.c +27 -14
41 lines not on this page · raw message
kernel/acct.c +84 -50
134 lines not on this page · raw message
kernel/hung_task.c +78 -3
81 lines not on this page · raw message
kernel/padata.c +36 -9
45 lines not on this page · raw message
kernel/sysctl.c +21 -125
146 lines not on this page · raw message
mm/kfence/core.c +49 -2
51 lines not on this page · raw message
net/batman-adv/bat_v_elp.c +86 -37
123 lines not on this page · raw message
net/core/flow_dissector.c +29 -20
49 lines not on this page · raw message
net/ipv4/route.c +72 -30
102 lines not on this page · raw message
net/ipv6/rpl_iptunnel.c +39 -23
62 lines not on this page · raw message
net/ipv6/seg6_iptunnel.c +197 -30
227 lines not on this page · raw message
net/llc/llc_s_ac.c +27 -22
49 lines not on this page · raw message
net/ncsi/ncsi-rsp.c +44 -14
58 lines not on this page · raw message
net/sched/sch_cake.c +75 -65
140 lines not on this page · raw message
net/vmw_vsock/af_vsock.c +55 -27
82 lines not on this page · raw message
scripts/kconfig/confdata.c +51 -51
102 lines not on this page · raw message
security/landlock/fs.c +45 -41
86 lines not on this page · raw message
sound/pci/hda/patch_realtek.c +78 -0
78 lines not on this page · raw message
tools/power/cpupower/utils/idle_monitor/mperf_monitor.c +9 -6
Lines of this file are not shown. View the raw message.
tools/testing/selftests/bpf/test_tc_tunnel.sh +1 -0
Lines of this file are not shown. View the raw message.
tools/testing/selftests/drivers/net/netdevsim/udp_tunnel_nic.sh +8 -8
Lines of this file are not shown. View the raw message.
tools/testing/selftests/kselftest_harness.h +12 -12
Lines of this file are not shown. View the raw message.
tools/testing/selftests/landlock/fs_test.c +1 -2
Lines of this file are not shown. View the raw message.
tools/testing/selftests/net/pmtu.sh +220 -9
229 lines not on this page · raw message
tools/testing/selftests/net/rtnetlink.sh +2 -2
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.