Linux 5.7.5
Greg Kroah-Hartman
maintainerI'm announcing the release of the 5.7.5 kernel.
All users of the 5.7 kernel series must upgrade.
The updated 5.7.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-5.7.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/devicetree/bindings/display/mediatek/mediatek,dpi.txt | 6 Documentation/virt/kvm/api.rst | 2 Makefile | 15 arch/alpha/include/asm/io.h | 74 ++ arch/alpha/kernel/io.c | 60 ++ arch/arm/boot/compressed/.gitignore | 9 arch/arm/boot/compressed/Makefile | 38 - arch/arm/boot/compressed/atags_to_fdt.c | 1 arch/arm/boot/compressed/fdt.c | 2 arch/arm/boot/compressed/fdt_ro.c | 2 arch/arm/boot/compressed/fdt_rw.c | 2 arch/arm/boot/compressed/fdt_wip.c | 2 arch/arm/boot/compressed/libfdt_env.h | 24 arch/arm/boot/dts/at91-sama5d2_ptc_ek.dts | 2 arch/arm/boot/dts/exynos4412-galaxy-s3.dtsi | 2 arch/arm/boot/dts/s5pv210-aries.dtsi | 1 arch/arm/mach-tegra/tegra.c | 4 arch/arm/mm/proc-macros.S | 3 arch/arm64/include/asm/cacheflush.h | 6 arch/arm64/include/asm/pgtable.h | 1 arch/arm64/kernel/head.S | 12 arch/arm64/kernel/insn.c | 14 arch/arm64/kernel/machine_kexec_file.c | 6 arch/arm64/kernel/vmlinux.lds.S | 1 arch/m68k/include/asm/mac_via.h | 1 arch/m68k/mac/config.c | 21 arch/m68k/mac/via.c | 6 arch/mips/Makefile | 13 arch/mips/boot/compressed/Makefile | 2 arch/mips/configs/loongson3_defconfig | 2 arch/mips/include/asm/cpu-features.h | 6 arch/mips/include/asm/mipsregs.h | 2 arch/mips/kernel/genex.S | 6 arch/mips/kernel/mips-cm.c | 6 arch/mips/kernel/setup.c | 10 arch/mips/kernel/time.c | 70 ++ arch/mips/kernel/vmlinux.lds.S | 2 arch/mips/loongson2ef/common/init.c | 4 arch/mips/loongson64/init.c | 4 arch/mips/mm/dma-noncoherent.c | 1 arch/mips/mti-malta/malta-init.c | 8 arch/mips/pistachio/init.c | 8 arch/mips/tools/elf-entry.c | 9 arch/powerpc/Kconfig | 4 arch/powerpc/include/asm/book3s/32/kup.h | 3 arch/powerpc/include/asm/fadump-internal.h | 4 arch/powerpc/include/asm/kasan.h | 6 arch/powerpc/kernel/dt_cpu_ftrs.c | 8 arch/powerpc/kernel/fadump.c | 155 ++++-- arch/powerpc/kernel/prom.c | 19 arch/powerpc/mm/init_32.c | 2 arch/powerpc/mm/kasan/kasan_init_32.c | 4 arch/powerpc/mm/pgtable_32.c | 4 arch/powerpc/platforms/cell/spufs/file.c | 113 +++- arch/powerpc/platforms/powernv/smp.c | 1 arch/riscv/mm/init.c | 11 arch/riscv/net/bpf_jit_comp32.c | 5 arch/s390/net/bpf_jit_comp.c | 19 arch/sparc/kernel/ptrace_32.c | 228 +++------ arch/sparc/kernel/ptrace_64.c | 17 arch/x86/boot/compressed/head_32.S | 5 arch/x86/boot/compressed/head_64.S | 1 arch/x86/include/asm/smap.h | 11 arch/x86/kernel/amd_nb.c | 5 arch/x86/kernel/irq_64.c | 2 arch/x86/mm/init.c | 2 block/blk-iocost.c | 28 - block/blk-mq.c | 26 - block/blk.h | 2 crypto/blake2b_generic.c | 4 drivers/acpi/acpica/dsfield.c | 17 drivers/acpi/arm64/iort.c | 5 drivers/acpi/evged.c | 2 drivers/acpi/video_detect.c | 10 drivers/base/swnode.c | 27 - drivers/bluetooth/btbcm.c | 2 drivers/bluetooth/btmtkuart.c | 14 drivers/bluetooth/btusb.c | 1 drivers/bluetooth/hci_bcm.c | 8 drivers/bluetooth/hci_qca.c | 10 drivers/clk/mediatek/clk-mux.c | 2 drivers/clocksource/Kconfig | 1 drivers/clocksource/dw_apb_timer.c | 5 drivers/clocksource/dw_apb_timer_of.c | 6 drivers/clocksource/timer-versatile.c | 3 drivers/cpufreq/qcom-cpufreq-nvmem.c | 2 drivers/cpuidle/cpuidle-psci.c | 8 drivers/cpuidle/sysfs.c | 6 drivers/crypto/ccp/Kconfig | 3 drivers/crypto/chelsio/chcr_algo.c | 45 + drivers/crypto/chelsio/chcr_crypto.h | 1 drivers/crypto/stm32/stm32-crc32.c | 144 +++-- drivers/edac/amd64_edac.c | 14 drivers/edac/amd64_edac.h | 3 drivers/firmware/efi/libstub/Makefile | 1 drivers/firmware/efi/libstub/randomalloc.c | 4 drivers/gnss/sirf.c | 8 drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 43 + drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 14 drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 11 drivers/gpu/drm/amd/display/dc/clk_mgr/dcn10/rv1_clk_mgr_vbios_smu.c | 3 drivers/gpu/drm/amd/display/dc/core/dc_link_hwss.c | 2 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_optc.c | 6 drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c | 5 drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c | 9 drivers/gpu/drm/amd/display/dc/dcn21/dcn21_resource.c | 6 drivers/gpu/drm/amd/display/dc/inc/hw/dchubbub.h | 2 drivers/gpu/drm/ast/ast_mode.c | 13 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c | 12 drivers/gpu/drm/bridge/panel.c | 6 drivers/gpu/drm/bridge/tc358768.c | 4 drivers/gpu/drm/drm_dp_helper.c | 1 drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c | 9 drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c | 4 drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c | 2 drivers/gpu/drm/mcde/mcde_dsi.c | 7 drivers/gpu/drm/mediatek/mtk_dpi.c | 31 + drivers/gpu/drm/rcar-du/rcar_du_plane.c | 16 drivers/gpu/drm/rcar-du/rcar_du_vsp.c | 14 drivers/hv/connection.c | 20 drivers/hv/hv.c | 7 drivers/hv/hyperv_vmbus.h | 11 drivers/hv/vmbus_drv.c | 20 drivers/hwmon/k10temp.c | 1 drivers/iommu/intel-iommu.c | 28 - drivers/irqchip/irq-sifive-plic.c | 17 drivers/macintosh/windfarm_pm112.c | 21 drivers/md/bcache/request.c | 1 drivers/md/bcache/super.c | 7 drivers/md/dm-crypt.c | 2 drivers/md/md.c | 3 drivers/md/raid5.c | 15 drivers/media/cec/cec-adap.c | 8 drivers/media/dvb-frontends/m88ds3103.c | 2 drivers/media/i2c/imx219.c | 2 drivers/media/i2c/ov5640.c | 4 drivers/media/platform/qcom/venus/core.c | 12 drivers/media/platform/rcar-fcp.c | 5 drivers/media/platform/sunxi/sun8i-di/sun8i-di.c | 6 drivers/media/platform/vicodec/vicodec-core.c | 15 drivers/media/tuners/si2157.c | 15 drivers/media/usb/dvb-usb/dibusb-mb.c | 2 drivers/media/v4l2-core/v4l2-ctrls.c | 18 drivers/memory/samsung/exynos5422-dmc.c | 2 drivers/mmc/host/meson-mx-sdio.c | 3 drivers/mmc/host/mmci.c | 30 - drivers/mmc/host/mmci_stm32_sdmmc.c | 1 drivers/mmc/host/owl-mmc.c | 8 drivers/mmc/host/sdhci-esdhc-imx.c | 2 drivers/mmc/host/sdhci-msm.c | 4 drivers/mmc/host/sdhci.c | 10 drivers/mmc/host/sdhci.h | 3 drivers/mmc/host/via-sdmmc.c | 7 drivers/mtd/nand/raw/brcmnand/brcmnand.c | 11 drivers/mtd/nand/raw/diskonchip.c | 7 drivers/mtd/nand/raw/ingenic/ingenic_nand_drv.c | 2 drivers/mtd/nand/raw/mtk_nand.c | 2 drivers/mtd/nand/raw/nand_base.c | 10 drivers/mtd/nand/raw/nand_onfi.c | 2 drivers/mtd/nand/raw/orion_nand.c | 2 drivers/mtd/nand/raw/oxnas_nand.c | 8 drivers/mtd/nand/raw/pasemi_nand.c | 4 drivers/mtd/nand/raw/plat_nand.c | 2 drivers/mtd/nand/raw/sharpsl.c | 2 drivers/mtd/nand/raw/socrates_nand.c | 2 drivers/mtd/nand/raw/sunxi_nand.c | 2 drivers/mtd/nand/raw/tmio_nand.c | 2 drivers/mtd/nand/raw/xway_nand.c | 2 drivers/net/dsa/sja1105/sja1105_ethtool.c | 144 ++--- drivers/net/ethernet/allwinner/sun4i-emac.c | 4 drivers/net/ethernet/amazon/ena/ena_com.c | 6 drivers/net/ethernet/aquantia/atlantic/aq_nic.c | 6 drivers/net/ethernet/broadcom/genet/bcmgenet.c | 4 drivers/net/ethernet/broadcom/genet/bcmgenet.h | 2 drivers/net/ethernet/broadcom/genet/bcmgenet_wol.c | 39 - drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c | 4 drivers/net/ethernet/intel/e1000/e1000_main.c | 4 drivers/net/ethernet/intel/e1000e/e1000.h | 1 drivers/net/ethernet/intel/e1000e/netdev.c | 16 drivers/net/ethernet/intel/ice/ice.h | 2 drivers/net/ethernet/intel/ice/ice_common.c | 8 drivers/net/ethernet/intel/ice/ice_controlq.c | 49 + drivers/net/ethernet/intel/ice/ice_ethtool.c | 4 drivers/net/ethernet/intel/ice/ice_flex_pipe.c | 8 drivers/net/ethernet/intel/ice/ice_main.c | 8 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c | 65 ++ drivers/net/ethernet/intel/ice/ice_virtchnl_pf.h | 2 drivers/net/ethernet/intel/igb/igb_ethtool.c | 3 drivers/net/ethernet/intel/igc/igc_main.c | 2 drivers/net/ethernet/intel/ixgbe/ixgbe_common.c | 2 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 3 drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c | 8 drivers/net/ethernet/mellanox/mlx4/crdump.c | 1 drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c | 2 drivers/net/ethernet/mellanox/mlx5/core/en_rx.c | 15 drivers/net/ethernet/mscc/ocelot_ace.c | 103 ++++ drivers/net/ethernet/mscc/ocelot_ace.h | 5 drivers/net/ethernet/mscc/ocelot_flower.c | 2 drivers/net/ethernet/nxp/lpc_eth.c | 3 drivers/net/ethernet/qlogic/qede/qede.h | 2 drivers/net/ethernet/qlogic/qede/qede_main.c | 11 drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c | 20 drivers/net/ethernet/stmicro/stmmac/stmmac_pci.c | 5 drivers/net/ethernet/ti/davinci_mdio.c | 2 drivers/net/ethernet/ti/k3-cppi-desc-pool.c | 4 drivers/net/ipa/gsi.c | 11 drivers/net/macvlan.c | 4 drivers/net/veth.c | 8 drivers/net/vmxnet3/vmxnet3_ethtool.c | 2 drivers/net/wireless/ath/ath10k/bmi.c | 1 drivers/net/wireless/ath/ath10k/htt.h | 7 drivers/net/wireless/ath/ath10k/htt_tx.c | 8 drivers/net/wireless/ath/ath10k/mac.c | 5 drivers/net/wireless/ath/ath10k/pci.c | 1 drivers/net/wireless/ath/ath10k/qmi.c | 13 drivers/net/wireless/ath/ath10k/qmi.h | 6 drivers/net/wireless/ath/ath10k/txrx.c | 2 drivers/net/wireless/ath/ath10k/wmi-ops.h | 10 drivers/net/wireless/ath/ath10k/wmi-tlv.c | 15 drivers/net/wireless/ath/ath11k/dp.c | 4 drivers/net/wireless/ath/ath11k/dp_rx.c | 20 drivers/net/wireless/ath/ath11k/thermal.c | 6 drivers/net/wireless/ath/ath11k/wmi.c | 7 drivers/net/wireless/ath/carl9170/fw.c | 4 drivers/net/wireless/ath/carl9170/main.c | 21 drivers/net/wireless/ath/wcn36xx/main.c | 6 drivers/net/wireless/broadcom/b43/main.c | 2 drivers/net/wireless/broadcom/b43legacy/main.c | 1 drivers/net/wireless/broadcom/b43legacy/xmit.c | 1 drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 12 drivers/net/wireless/broadcom/brcm80211/brcmfmac/feature.c | 3 drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c | 11 drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c | 5 drivers/net/wireless/intel/iwlwifi/mvm/rs-fw.c | 15 drivers/net/wireless/intel/iwlwifi/mvm/sta.c | 18 drivers/net/wireless/intel/iwlwifi/mvm/sta.h | 6 drivers/net/wireless/marvell/libertas_tf/if_usb.c | 6 drivers/net/wireless/marvell/mwifiex/cfg80211.c | 14 drivers/net/wireless/mediatek/mt76/agg-rx.c | 8 drivers/net/wireless/mediatek/mt76/mt76.h | 6 drivers/net/wireless/mediatek/mt76/mt7615/mac.c | 34 - drivers/net/wireless/mediatek/mt76/mt7615/mac.h | 3 drivers/net/wireless/mediatek/mt76/mt7615/main.c | 21 drivers/net/wireless/mediatek/mt76/mt7615/mcu.c | 16 drivers/net/wireless/mediatek/mt76/mt7615/regs.h | 2 drivers/net/wireless/realtek/rtlwifi/usb.c | 8 drivers/net/wireless/realtek/rtw88/pci.c | 1 drivers/nvme/host/core.c | 16 drivers/nvme/host/fc.c | 2 drivers/nvme/host/pci.c | 79 ++- drivers/nvme/host/tcp.c | 4 drivers/nvme/target/core.c | 15 drivers/pci/probe.c | 24 drivers/pci/quirks.c | 48 + drivers/perf/arm_smmuv3_pmu.c | 5 drivers/perf/hisilicon/hisi_uncore_hha_pmu.c | 2 drivers/pinctrl/samsung/pinctrl-exynos.c | 82 ++- drivers/platform/x86/asus-wmi.c | 2 drivers/platform/x86/dell-laptop.c | 11 drivers/platform/x86/hp-wmi.c | 10 drivers/platform/x86/intel-hid.c | 7 drivers/platform/x86/intel-vbtn.c | 75 ++- drivers/power/reset/vexpress-poweroff.c | 1 drivers/power/supply/power_supply_hwmon.c | 4 drivers/pwm/pwm-jz4740.c | 6 drivers/pwm/pwm-lpss.c | 15 drivers/regulator/qcom-rpmh-regulator.c | 8 drivers/soc/fsl/dpio/qbman-portal.c | 1 drivers/soc/tegra/Kconfig | 1 drivers/spi/spi-dw-mid.c | 16 drivers/spi/spi-dw.c | 8 drivers/spi/spi-fsl-dspi.c | 24 drivers/spi/spi-mem.c | 10 drivers/spi/spi-mux.c | 8 drivers/spi/spi-pxa2xx.c | 1 drivers/spi/spi.c | 1 drivers/staging/android/ion/ion_heap.c | 4 drivers/staging/greybus/sdio.c | 10 drivers/staging/media/imx/imx-media-utils.c | 201 ++------ drivers/staging/media/imx/imx7-mipi-csis.c | 82 +-- drivers/staging/media/ipu3/ipu3-mmu.c | 10 drivers/staging/media/ipu3/ipu3-v4l2.c | 10 drivers/staging/media/ipu3/ipu3.c | 5 drivers/staging/media/ipu3/ipu3.h | 4 drivers/staging/media/sunxi/cedrus/cedrus_dec.c | 2 drivers/staging/media/sunxi/cedrus/cedrus_video.c | 3 drivers/tty/serial/8250/8250_core.c | 14 drivers/tty/serial/8250/8250_pci.c | 6 drivers/tty/serial/kgdboc.c | 126 ++++- drivers/usb/musb/mediatek.c | 6 drivers/virtio/virtio_balloon.c | 9 drivers/w1/masters/omap_hdq.c | 74 +- fs/btrfs/block-group.c | 2 fs/btrfs/block-rsv.c | 3 fs/btrfs/ctree.h | 4 fs/btrfs/disk-io.c | 5 fs/btrfs/extent-io-tree.h | 1 fs/btrfs/file-item.c | 6 fs/btrfs/inode.c | 81 ++- fs/btrfs/qgroup.c | 14 fs/btrfs/relocation.c | 12 fs/btrfs/scrub.c | 38 + fs/btrfs/send.c | 67 ++ fs/btrfs/space-info.c | 43 + fs/btrfs/space-info.h | 1 fs/btrfs/transaction.c | 60 -- fs/btrfs/transaction.h | 3 fs/btrfs/tree-log.c | 22 fs/btrfs/volumes.c | 14 fs/ext4/ext4_extents.h | 9 fs/ext4/fsync.c | 28 - fs/ext4/ialloc.c | 1 fs/ext4/xattr.c | 7 fs/f2fs/f2fs.h | 1 fs/f2fs/inline.c | 6 fs/f2fs/super.c | 25 - fs/io_uring.c | 250 ++++++---- fs/jbd2/transaction.c | 14 fs/xfs/kmem.h | 6 fs/xfs/libxfs/xfs_attr_leaf.c | 17 fs/xfs/xfs_bmap_util.c | 2 fs/xfs/xfs_buf.c | 8 fs/xfs/xfs_dquot.c | 9 include/linux/intel-iommu.h | 1 include/linux/kgdb.h | 2 include/linux/mmzone.h | 2 include/linux/pci_ids.h | 7 include/linux/property.h | 1 include/linux/sched/mm.h | 2 include/linux/skbuff.h | 8 include/linux/skmsg.h | 8 include/linux/string.h | 60 +- include/linux/sunrpc/gss_api.h | 1 include/linux/sunrpc/svcauth_gss.h | 3 include/net/bluetooth/hci.h | 9 include/net/tls.h | 9 include/trace/events/btrfs.h | 1 include/uapi/linux/bpf.h | 8 include/uapi/linux/kvm.h | 2 kernel/audit.c | 52 +- kernel/audit.h | 2 kernel/auditfilter.c | 16 kernel/bpf/syscall.c | 3 kernel/cpu.c | 18 kernel/cpu_pm.c | 4 kernel/debug/debug_core.c | 5 kernel/exit.c | 25 - kernel/sched/core.c | 13 kernel/sched/fair.c | 4 kernel/sched/rt.c | 12 kernel/sched/sched.h | 2 kernel/time/clocksource.c | 2 lib/Kconfig.ubsan | 2 lib/mpi/longlong.h | 2 lib/test_kasan.c | 29 - lib/test_printf.c | 4 mm/huge_memory.c | 31 + mm/page_alloc.c | 27 - net/batman-adv/bat_v_elp.c | 15 net/bluetooth/hci_event.c | 1 net/core/filter.c | 8 net/core/skmsg.c | 98 ++- net/netfilter/nft_nat.c | 4 net/sunrpc/auth_gss/gss_mech_switch.c | 12 net/sunrpc/auth_gss/svcauth_gss.c | 18 net/tls/tls_sw.c | 20 scripts/sphinx-pre-install | 7 security/integrity/evm/evm_crypto.c | 2 security/integrity/ima/ima.h | 10 security/integrity/ima/ima_crypto.c | 53 +- security/integrity/ima/ima_init.c | 24 security/integrity/ima/ima_main.c | 3 security/integrity/ima/ima_policy.c | 12 security/integrity/ima/ima_template_lib.c | 18 security/lockdown/lockdown.c | 2 security/selinux/ss/policydb.c | 1 tools/cgroup/iocost_monitor.py | 42 - tools/include/uapi/linux/bpf.h | 8 tools/lib/api/fs/fs.c | 17 tools/lib/api/fs/fs.h | 12 tools/lib/bpf/hashmap.c | 7 tools/lib/bpf/libbpf.c | 236 +++++---- tools/lib/perf/evlist.c | 1 tools/objtool/check.c | 6 tools/perf/builtin-probe.c | 3 tools/perf/util/dso.c | 16 tools/perf/util/dso.h | 1 tools/perf/util/probe-event.c | 46 + tools/perf/util/probe-finder.c | 1 tools/perf/util/symbol.c | 4 tools/power/x86/intel-speed-select/isst-config.c | 1 tools/testing/selftests/bpf/.gitignore | 2 tools/testing/selftests/bpf/Makefile | 6 tools/testing/selftests/bpf/config | 2 tools/testing/selftests/bpf/prog_tests/core_reloc.c | 2 tools/testing/selftests/bpf/prog_tests/flow_dissector.c | 1 tools/testing/selftests/bpf/prog_tests/ns_current_pid_tgid.c | 5 tools/testing/selftests/bpf/test_align.c | 41 - tools/testing/selftests/bpf/test_progs.c | 21 399 files changed, 3999 insertions(+), 2004 deletions(-)
Adrian Hunter (2):
perf symbols: Fix debuginfo search for Ubuntu perf symbols: Fix kernel maps for kcore and eBPF
Ahmed S. Darwish (1):
block: nr_sects_write(): Disable preemption on seqcount write
Al Viro (2):
sparc32: fix register window handling in genregs32_[gs]et()
sparc64: fix misuses of access_process_vm() in genregs32_[sg]et()
Alain Michaud (1):
Bluetooth: Adding driver and quirk defs for multi-role LE
Alan Maguire (2):
selftests/bpf: CONFIG_IPV6_SEG6_BPF required for test_seg6_loop.o selftests/bpf: CONFIG_LIRC required for test_lirc_mode2.sh
Alex Elder (1):
net: ipa: do not clear interrupt in gsi_channel_start()
Alexander Duyck (1):
virtio-balloon: Disable free page reporting if page poison reporting is not enabled
Alexander Monakov (3):
x86/amd_nb: Add AMD family 17h model 60h PCI IDs
hwmon: (k10temp) Add AMD family 17h model 60h PCI match EDAC/amd64: Add AMD family 17h model 60h PCI IDs
Alexander Sverdlin (1):
macvlan: Skip loopback packets in RX handler
Alvin Lee (1):
drm/amd/display: Revert to old formula in set_vtg_params
Anand Jain (2):
btrfs: free alien device after device add
btrfs: include non-missing as a qualifier for the latest_bdev
Anders Roxell (1):
power: vexpress: add suppress_bind_attrs to true
Andre Guedes (1):
igc: Fix default MAC address filter override
Andrea Arcangeli (1):
mm: thp: make the THP mapcount atomic against __split_huge_pmd_locked()
Andrea Parri (Microsoft) (1):
Drivers: hv: vmbus: Always handle the VMBus messages on CPU0
Andrii Nakryiko (9):
libbpf: Fix memory leak and possible double-free in hashmap__clear
libbpf: Refactor map creation logic and fix cleanup leak selftests/bpf: Ensure test flavors use correct skeletons selftests/bpf: Fix memory leak in test selector selftests/bpf: Fix memory leak in extract_build_id() selftests/bpf: Fix invalid memory reads in core_relo selftest
libbpf: Fix huge memory leak in libbpf_find_vmlinux_btf_id() selftests/bpf: Fix bpf_link leak in ns_current_pid_tgid selftest selftests/bpf: Add runqslower binary to .gitignore
Andy Shevchenko (4):
spi: dw: Zero DMA Tx and Rx configurations on stack
spi: Respect DataBitLength field of SpiSerialBusV2() ACPI resource
stmmac: intel: Fix clock handling on error and remove paths platform/x86: hp-wmi: Convert simple_strtoul() to kstrtou32()
Angelo Dureghello (2):
mmc: sdhci: add quirks for be to le byte swapping
spi: spi-fsl-dspi: fix native data copy
Ansuel Smith (1):
cpufreq: qcom: fix wrong compatible binding
Anton Protopopov (1):
bpf: Fix map permissions check
Anup Patel (3):
irqchip/sifive-plic: Set default irq affinity in plic_irqdomain_map() irqchip/sifive-plic: Setup cpuhp once after boot CPU handler is present
RISC-V: Don't mark init section as non-executable
Ard Biesheuvel (3):
ACPI: GED: use correct trigger type field in _Exx / _Lxx handling efi/libstub/x86: Work around LLVM ELF quirk build regression efi/libstub/random: Align allocate size to EFI_ALLOC_ALIGN
Arnd Bergmann (5):
crypto: ccp -- don't "select" CONFIG_DMADEVICES drm/bridge: fix stack usage warning on old gcc
dsa: sja1105: dynamically allocate stats structure
nvme-fc: avoid gcc-10 zero-length-bounds warning
crypto: blake2b - Fix clang optimization for ARMv7-M
Arthur Kiyanovski (1):
net: ena: fix error returning in ena_com_get_hash_function()
Arvind Sankar (2):
x86/boot: Correct relocation destination on old linkers x86/mm: Stop printing BRK addresses
Ashok Raj (2):
PCI: Add ACS quirk for Intel Root Complex Integrated Endpoints
PCI: Program MPS for RCiEP devices
Ayush Sawal (1):
Crypto/chcr: Fixes a coccinile check error
Ben Hutchings (1):
MIPS: Fix exception handler memcpy()
Bernard Zhao (1):
memory: samsung: exynos5422-dmc: Fix tFAW timings alignment
Bhupesh Sharma (1):
net: qed*: Reduce RX and TX default ring count when running inside kdump kernel
Bingbu Cao (2):
media: staging: imgu: do not hold spinlock during freeing mmu page table
media: staging/intel-ipu3: Implement lock for stream on/off operations
Bjorn Andersson (1):
regulator: qcom-rpmh: Fix typos in pm8150 and pm8150l
Bogdan Togorean (1):
drm: bridge: adv7511: Extend list of audio sample rates
Boris Brezillon (1):
mtd: rawnand: Fix nand_gpio_waitrdy()
Brad Love (1):
media: si2157: Better check for running tuner in init
Brett Creeley (1):
ice: Fix Tx timeout when link is toggled on a VF's interface
Brian Foster (3):
xfs: reset buffer write failure state on successful completion
xfs: fix duplicate verification from xfs_qm_dqflush()
xfs: don't fail verifier on empty attr3 leaf block
Chris Chiu (1):
platform/x86: asus_wmi: Reserve more space for struct bias_args
Christian König (1):
drm/amdgpu: fix and cleanup amdgpu_gem_object_close v4
Christian Lamparter (1):
carl9170: remove P2P_GO support
Christoph Hellwig (4):
x86: fix vmap arguments in map_irq_stack
staging: android: ion: use vmap instead of vm_map_ram
bcache: remove a duplicate ->make_request_fn assignment
nvme: refine the Qemu Identify CNS quirk
Christophe JAILLET (3):
ath11k: Fix some resource leaks in error path in 'ath11k_thermal_register()'
media: sun8i: Fix an error handling path in 'deinterlace_runtime_resume()'
wcn36xx: Fix error handling path in 'wcn36xx_probe()'
Christophe Leroy (5):
powerpc/mm: Fix conditions to perform MMU specific management by blocks on PPC32. powerpc/32s: Fix another build failure with CONFIG_PPC_KUAP_DEBUG powerpc/kasan: Fix issues by lowering KASAN_SHADOW_END powerpc/kasan: Fix shadow pages allocation failure
powerpc/32: Disable KASAN with pages bigger than 16k
Chuhong Yuan (1):
Bluetooth: btmtkuart: Improve exception handling in btmtuart_probe()
Chung-Hsien Hsu (1):
brcmfmac: fix WPA/WPA2-PSK 4-way handshake offload and SAE offload failures
Colin Ian King (3):
ath11k: fix error message to correctly report the command that failed
media: dvb: return -EREMOTEIO on i2c transfer failure.
libertas_tf: avoid a null dereference in pointer priv
Coly Li (2):
raid5: remove gfp flags from scribble_alloc()
bcache: fix refcount underflow in bcache_device_free()
Corentin Labbe (1):
soc/tegra: pmc: Select GENERIC_PINCONF
Dafna Hirschfeld (1):
media: i2c: imx219: Fix a bug in imx219_enum_frame_size
Dale Zhao (1):
drm/amd/display: Correct updating logic of dcn21's pipe VM flags
Dan Carpenter (3):
media: vicodec: Fix error codes in probe function
media: cec: silence shift wrapping warning in __cec_s_log_addrs()
rtlwifi: Fix a double free in _rtl_usb_tx_urb_setup()
Daniel Axtens (2):
kasan: stop tests being eliminated as dead code with FORTIFY_SOURCE string.h: fix incompatibility between FORTIFY_SOURCE and KASAN
Daniel Borkmann (1):
bpf: Fix up bpf_skb_adjust_room helper's skb csum setting
Daniel Jordan (1):
mm/pagealloc.c: call touch_nmi_watchdog() on max order boundaries in deferred init
Daniel Thompson (2):
arm64: cacheflush: Fix KGDB trap detection
kgdb: Fix spurious true from in_dbg_master()
Darrick J. Wong (2):
xfs: more lockdep whackamole with kmem_alloc*
xfs: clean up the error handling in xfs_swap_extents
Dejin Zheng (1):
rtw88: fix an issue about leak system resources
Devulapally Shiva Krishna (2):
Crypto/chcr: fix ctr, cbc, xts and rfc3686-ctr failed tests Crypto/chcr: fix for ccm(aes) failed test
Dmitry Osipenko (1):
ARM: tegra: Correct PL310 Auxiliary Control Register initialization
Dmytro Laktyushkin (1):
drm/amd/display: fix virtual signal dsc setup
Doug Berger (2):
net: bcmgenet: set Rx mode before starting netif
net: bcmgenet: Fix WoL with password after deep sleep
Douglas Anderson (4):
kgdb: Disable WARN_CONSOLE_UNLOCKED for all kgdb
kgdb: Prevent infinite recursive entries to the debugger
kgdboc: Use a platform device to handle tty drivers showing up late kernel/cpu_pm: Fix uninitted local in cpu_pm
Eelco Chaudron (1):
libbpf: Fix perf_buffer__free() API for sparse allocs
Enric Balletbo i Serra (1):
drm/bridge: panel: Return always an error pointer in drm_panel_bridge_add()
Erez Shitrit (1):
net/mlx5e: IPoIB, Drop multicast packets that this interface sent
Eric Biggers (3):
ext4: fix race between ext4_sync_parent() and rename() dm crypt: avoid truncating the logical block size
f2fs: don't leak filename in f2fs_try_convert_inline_dir()
Eric Joyner (1):
ice: Fix resource leak on early exit from function
Erik Kaneda (1):
ACPICA: Dispatcher: add status checks
Evan Green (1):
spi: pxa2xx: Apply CS clk quirk to BXT
Felix Kuehling (1):
drm/amdgpu: Sync with VM root BO when switching VM to CPU update mode
Filipe Manana (6):
btrfs: do not ignore error from btrfs_next_leaf() when inserting checksums
btrfs: fix a race between scrub and block group removal/allocation
btrfs: fix corrupt log due to concurrent fsync of inodes with shared extents
btrfs: fix wrong file range cleanup after an error filling dealloc range
btrfs: fix space_info bytes_may_use underflow after nocow buffered write
btrfs: fix space_info bytes_may_use underflow during space cache writeout
Finn Thain (1):
m68k: mac: Don't call via_flush_cache() on Mac IIfx
Gavin Shan (1):
arm64/kernel: Fix range on invalidating dcache for boot page tables
Geert Uytterhoeven (1):
spi: spi-mem: Fix Dual/Quad modes on Octal-capable devices
Greg Kroah-Hartman (2):
software node: implement software_node_unregister() Linux 5.7.5
Guoqing Jiang (1):
md: don't flush workqueue unconditionally in md_open
H. Nikolaus Schaller (3):
w1: omap-hdq: cleanup to add missing newline for some dev_dbg
w1: omap-hdq: fix return value to be -1 if there is a timeout
w1: omap-hdq: fix interrupt handling which did show spurious timeouts
Haibo Chen (1):
mmc: sdhci-esdhc-imx: fix the mask for tuning start point
Hans Verkuil (1):
media: v4l2-ctrls: v4l2_ctrl_g/s_ctrl*(): don't continue when WARN_ON
Hans de Goede (7):
Bluetooth: btbcm: Add 2 missing models to subver tables
platform/x86: intel-vbtn: Use acpi_evaluate_integer()
platform/x86: intel-vbtn: Split keymap into buttons and switches parts
platform/x86: intel-vbtn: Do not advertise switches to userspace if they are not there platform/x86: intel-vbtn: Also handle tablet-mode switch on "Detachable" and "Portable" chassis-types platform/x86: intel-vbtn: Only blacklist SW_TABLET_MODE on the 9 / "Laptop" chasis-type
pwm: lpss: Fix get_state runtime-pm reference handling
Hari Bathini (3):
powerpc/fadump: use static allocation for reserved memory ranges powerpc/fadump: consider reserved ranges while reserving memory powerpc/fadump: Account for memory_limit while reserving memory
Harshad Shirwadkar (1):
ext4: fix EXT_MAX_EXTENT/INDEX to check for zeroed eh_max
Hsin-Yu Chao (1):
Bluetooth: Add SCO fallback for invalid LMP parameters error
Huaixin Chang (2):
sched/fair: Refill bandwidth before scaling
sched: Defend cfs and rt bandwidth quota against overflow
Ian Rogers (1):
libperf evlist: Fix a refcount leak
Ilya Leoshkevich (1):
s390/bpf: Maintain 8-byte stack alignment
Ioana Ciornei (1):
soc: fsl: dpio: properly compute the consumer index
Jacob Keller (1):
ice: fix potential double free in probe unrolling
Jaegeuk Kim (1):
f2fs: fix checkpoint=disable:%u%%
Jaehoon Chung (1):
brcmfmac: fix wrong location to get firmware feature
Jakub Sitnicki (1):
selftests/bpf, flow_dissector: Close TAP device FD after the test
Jan Kara (1):
jbd2: avoid leaking transaction credits when unreserving handle
Jann Horn (1):
exit: Move preemption fixup up, move blocking operations down
Jean-Philippe Brucker (1):
pmu/smmuv3: Clear IRQ affinity hint on device removal
Jeffle Xu (1):
ext4: fix error pointer dereference
Jens Axboe (2):
io_uring: cleanup io_poll_remove_one() logic
io_uring: allow POLL_ADD with double poll_wait() users
Jeremy Cline (1):
lockdown: Allow unprivileged users to see lockdown status
Jeremy Kerr (1):
powerpc/spufs: fix copy_to_user while atomic
Jesper Dangaard Brouer (3):
ixgbe: Fix XDP redirect on archs with PAGE_SIZE above 4K
dpaa2-eth: fix return codes used in ndo_setup_tc
veth: Adjust hard_start offset on redirect XDP frames
Jesse Brandeburg (2):
ice: cleanup vf_id signedness
ice: Fix inability to set channels when down
Jia-Ju Bai (1):
net: vmxnet3: fix possible buffer overflow caused by bad DMA value in vmxnet3_get_rss()
Jiaxun Yang (2):
MIPS: Truncate link address into 32bit for 32bit kernel
PCI: Don't disable decoding when mmio_always_on is set
Jitao Shi (2):
dt-bindings: display: mediatek: control dpi pins mode to avoid leakage drm/mediatek: set dpi pin mode to gpio low to avoid leakage current
John Fastabend (2):
bpf: Refactor sockmap redirect code so its easy to reuse
bpf: Fix running sk_skb program types with ktls
Jon Derrick (2):
iommu/vt-d: Only clear real DMA device's context entries iommu/vt-d: Allocate domain info for real DMA sub-devices
Jon Doron (1):
x86/kvm/hyper-v: Explicitly align hcall param for kvm_hyperv_exit
Jonathan Bakker (3):
pinctrl: samsung: Correct setting of eint wakeup mask on s5pv210
pinctrl: samsung: Save/restore eint_mask over suspend for EINT_TYPE GPIOs
ARM: dts: s5pv210: Set keep-power-in-suspend for SDHCI1 on Aries
Josef Bacik (3):
btrfs: account for trans_block_rsv in may_commit_transaction
btrfs: improve global reserve stealing logic
btrfs: force chunk allocation if our global rsv is larger than metadata
Joshua Aberback (1):
drm/amd/display: Force watermark value propagation
Julien Thierry (1):
objtool: Ignore empty alternatives
Kai-Heng Feng (4):
PCI: Avoid Pericom USB controller OHCI/EHCI PME# defect
serial: 8250_pci: Move Pericom IDs to pci_ids.h
e1000e: Disable TSO for buffer overrun workaround
igb: Report speed and duplex as unknown when device is runtime suspended
Kaige Li (1):
MIPS: tools: Fix resource leak in elf-entry.c
Kees Cook (2):
ubsan: entirely disable alignment checks under UBSAN_TRAP
e1000: Distribute switch variables for initialization
Kevin Buettner (1):
PCI: Avoid FLR for AMD Starship USB 3.0
Kieran Bingham (1):
media: platform: fcp: Set appropriate DMA parameters
Koba Ko (1):
platform/x86: dell-laptop: don't register micmute LED if there is no token
Krzysztof Struczynski (3):
ima: Fix ima digest hash table key calculation
ima: Remove redundant policy rule set in add_rules()
ima: Set again build_ima_appraise variable
Larry Finger (3):
b43legacy: Fix case where channel status is corrupted
b43: Fix connection problem with WPA3
b43_legacy: Fix connection problem with WPA3
Laurent Pinchart (1):
media: imx: imx7-mipi-csis: Cleanup and fix subdev pad format handling
Lichao Liu (1):
MIPS: CPU_LOONGSON2EF need software to maintain cache consistency
Linus Walleij (1):
ARM: 8978/1: mm: make act_mm() respect THREAD_SIZE
Lorenzo Bianconi (7):
mt76: mt7615: fix aid configuration in mt7615_mcu_wtbl_generic_tlv
mt76: mt7663: fix mt7615_mac_cca_stats_reset routine
mt76: mt7615: do not always reset the dfs state setting the channel
mt76: mt7622: fix DMA unmap length
mt76: mt7663: fix DMA unmap length
mt76: mt7615: fix mt7615_firmware_own for mt7663e
mt76: mt7615: fix mt7615_driver_own routine
Ludovic Barre (1):
mmc: mmci_sdmmc: fix power on issue due to pwr_reg initialization
Ludovic Desroches (1):
ARM: dts: at91: sama5d2_ptc_ek: fix vbus pin
Lukas Wunner (1):
serial: 8250: Avoid error message on reprobe
Luke Nelson (2):
arm64: insn: Fix two bugs in encoding 32-bit logical immediates bpf, riscv: Fix tail call count off by one in RV32 BPF JIT
Macpaul Lin (1):
usb: musb: mediatek: add reset FADDR to zero in reset interrupt handle
Maharaja Kennadyrajan (1):
ath10k: Fix the race condition in firmware dump work queue
Mansur Alisha Shaik (1):
media: venus: core: remove CNOC voting while device suspend
Marcos Paulo de Souza (1):
btrfs: send: emit file capabilities after chown
Marcos Scriven (1):
PCI: Avoid FLR for AMD Matisse HD Audio & USB 3.0
Marek Szyprowski (1):
ARM: dts: exynos: Fix GPIO polarity for thr GalaxyS3 CM36651 sensor's bus
Marek Vasut (1):
mmc: mmci: Switch to mmc_regulator_set_vqmmc()
Mark Pearson (1):
drm/dp: Lenovo X13 Yoga OLED panel brightness fix
Mark Starovoytov (1):
net: atlantic: make hw_get_regs optional
Marta Plantykow (1):
ice: Change number of XDP TxQ to 0 when destroying rings
Martin Blumenstingl (1):
mmc: meson-mx-sdio: trigger a soft reset after a timeout or CRC error
Masahiro Yamada (2):
ARM: 8969/1: decompressor: simplify libfdt builds
kbuild: force to build vmlinux if CONFIG_MODVERSION=y
Masami Hiramatsu (3):
perf probe: Do not show the skipped events
perf probe: Fix to check blacklist address correctly perf probe: Check address correctness by map instead of _etext
Mauro Carvalho Chehab (1):
scripts: sphinx-pre-install: address some issues with Gentoo
Michael Ellerman (4):
clocksource/drivers/timer-microchip-pit64b: Select CONFIG_TIMER_OF drivers/macintosh: Fix memleak in windfarm_pm112 driver powerpc/64s: Don't let DT CPU features set FSCR_DSCR powerpc/64s: Save FSCR to init_task.thread.fscr after feature init
Michał Mirosław (3):
Bluetooth: hci_bcm: respect IRQ polarity from DT
Bluetooth: hci_bcm: fix freeing not-requested IRQ
power: supply: core: fix HWMON temperature labels
Mikulas Patocka (1):
alpha: fix memory barriers so that they conform to the specification
Ming Lei (1):
block: alloc map and request for new hardware queue
Miquel Raynal (13):
mtd: rawnand: onfi: Fix redundancy detection check
mtd: rawnand: diskonchip: Fix the probe error path
mtd: rawnand: sharpsl: Fix the probe error path
mtd: rawnand: ingenic: Fix the probe error path
mtd: rawnand: xway: Fix the probe error path
mtd: rawnand: orion: Fix the probe error path
mtd: rawnand: socrates: Fix the probe error path
mtd: rawnand: oxnas: Fix the probe error path
mtd: rawnand: sunxi: Fix the probe error path
mtd: rawnand: plat_nand: Fix the probe error path
mtd: rawnand: pasemi: Fix the probe error path
mtd: rawnand: mtk: Fix the probe error path
mtd: rawnand: tmio: Fix the probe error path
Mordechay Goodstein (1):
iwlwifi: avoid debug max amsdu config overwriting itself
Nathan Chancellor (1):
lib/mpi: Fix 64-bit MIPS build with Clang
NeilBrown (2):
sunrpc: svcauth_gss_register_pseudoflavor must reject duplicate registrations.
sunrpc: clean up properly in gss_mech_unregister()
Nickolai Kozachenko (1):
platform/x86: intel-hid: Add a quirk to support HP Spectre X2 (2015)
Nicolas Toromanoff (3):
crypto: stm32/crc32 - fix ext4 chksum BUG_ON()
crypto: stm32/crc32 - fix run-time self test issue.
crypto: stm32/crc32 - fix multi-instance
Omar Sandoval (1):
btrfs: fix error handling when submitting direct I/O bio
Pablo Neira Ayuso (1):
netfilter: nft_nat: return EOPNOTSUPP if type or flags are not supported
Pali Rohár (1):
mwifiex: Fix memory corruption in dump_station
Paul Cercueil (1):
pwm: jz4740: Enhance precision in calculation of duty cycle
Paul Hsieh (1):
drm/amd/display: dmcu wait loop calculation is incorrect in RV
Paul M Stillwell Jr (1):
ice: fix PCI device serial number to be lowercase values
Paul Menzel (1):
ACPI: video: Use native backlight on Acer TravelMate 5735Z
Paul Moore (2):
audit: fix a net reference leak in audit_send_reply()
audit: fix a net reference leak in audit_list_rules_send()
Pavel Begunkov (1):
io_uring: fix overflowed reqs cancellation
Pavel Tatashin (2):
mm: initialize deferred pages with interrupts enabled
mm: call cond_resched() from deferred_init_memmap()
Peter Rosin (1):
spi: mux: repair mux usage
Peter Zijlstra (2):
x86,smap: Fix smap_{save,restore}() alternatives sched/core: Fix illegal RCU from offline CPUs
Philipp Zabel (2):
media: imx: utils: fix and simplify pixel format enumeration
media: imx: utils: fix media bus format enumeration
Prarit Bhargava (1):
tools/power/x86/intel-speed-select: Fix CLX-N package information output
Punit Agrawal (1):
e1000e: Relax condition to trigger reset for ME workaround
Qiushi Wu (2):
cpuidle: Fix three reference count leaks
power: supply: core: fix memory leak in HWMON error path
Qu Wenruo (2):
btrfs: qgroup: mark qgroup inconsistent if we're inherting snapshot to a new qgroup
btrfs: reloc: fix reloc root leak and NULL pointer dereference
Rakesh Pillai (2):
ath10k: Skip handling del_server during driver exit
ath10k: Remove msdu from idr when management pkt send fails
Roberto Sassu (6):
ima: Switch to ima_hash_algo for boot aggregate
ima: Evaluate error in init_ima()
ima: Directly assign the ima_default_policy pointer to ima_rules
ima: Call ima_calc_boot_aggregate() in ima_eventdigest_init()
ima: Remove __init annotation from ima_pcrread()
evm: Fix possible memory leak in evm_calc_hmac_or_hash()
Roi Dayan (1):
net/mlx5e: CT: Avoid false warning about rule may be used uninitialized
Ryder Lee (1):
mt76: avoid rx reorder buffer overflow
Sagi Grimberg (2):
nvme-tcp: use bh_lock in data_ready
nvmet: fix memory leak when removing namespaces and controllers concurrently
Samuel Holland (1):
media: cedrus: Program output format during each run
Saravana Kannan (1):
clocksource/drivers/timer-versatile: Clear OF_POPULATED flag
Sean Young (1):
media: m88ds3103: error in set_frontend is swallowed and not reported
Serge Semin (9):
mips: Fix cpu_has_mips64r1/2 activation for MIPS32 CPUs
spi: dw: Enable interrupts in accordance with DMA xfer mode
clocksource: dw_apb_timer: Make CPU-affiliation being optional
clocksource: dw_apb_timer_of: Fix missing clockevent timers
spi: dw: Fix Rx-only DMA transfers
mips: cm: Fix an invalid error code of INTVN_*_ERR
mips: MAAR: Use more precise address mask
mips: Add udelay lpj numbers adjustment
spi: dw: Return any value retrieved from the dma_transfer callback
Shaokun Zhang (1):
drivers/perf: hisi: Fix typo in events attribute array
Sharon (1):
iwlwifi: mvm: fix aux station leak
Sriram R (1):
ath11k: Avoid mgmt tx count underflow
Stanislav Fomichev (1):
selftests/bpf: Fix test_align verifier log patterns
Stephane Eranian (1):
tools api fs: Make xxx__mountpoint() more scalable
Sung Lee (1):
drm/amd/display: Do not disable pipe split if mode is not supported
Surabhi Boob (2):
ice: Fix memory leak
ice: Fix for memory leaks and modify ICE_FREE_CQ_BUFS
Sven Eckelmann (1):
batman-adv: Revert "disable ethtool link speed detection when auto negotiation off"
Tamizh Chelvam (1):
ath11k: fix kernel panic by freeing the msdu received with invalid length
Tejun Heo (2):
iocost_monitor: drop string wrap around numbers when outputting json
iocost: don't let vrate run wild while there's no saturation signal
Thomas Gleixner (1):
clocksource: Remove obsolete ifdef
Thomas Zimmermann (1):
drm/ast: Allocate initial CRTC state of the correct size
Tian Tao (1):
drm/hisilicon: Enforce 128-byte stride alignment to fix the hardware limitation
Tiezhu Yang (2):
MIPS: Loongson: Build ATI Radeon GPU driver as module
MIPS: Make sparse_init() using top-down allocation
Tomasz Figa (1):
media: staging: ipu3: Fix stale list entries on parameter queue failure
Tomi Valkeinen (1):
media: ov5640: fix use of destroyed mutex
Tomohito Esaki (1):
drm: rcar-du: Set primary plane zpos immutably at initializing
Tuan Phan (1):
ACPI/IORT: Fix PMCG node single ID mapping handling
Ulf Hansson (4):
cpuidle: psci: Fixup execution order when entering a domain idle state
staging: greybus: sdio: Respect the cmd->busy_timeout from the mmc core
mmc: owl-mmc: Respect the cmd->busy_timeout from the mmc core
mmc: via-sdmmc: Respect the cmd->busy_timeout from the mmc coreVeerabhadrarao Badiganti (1):
mmc: sdhci-msm: Set SDHCI_QUIRK_MULTIBLOCK_READ_ACMD12 quirk
Venkateswara Naralasetty (1):
ath10k: fix kernel null pointer dereference
Veronika Kabatova (1):
selftests/bpf: Copy runqslower to OUTPUT directory
Vladimir Oltean (1):
net: mscc: ocelot: deal with problematic MAC_ETYPE VCAP IS2 rules
Wei Yongjun (11):
net: ethernet: ti: fix return value check in k3_cppi_desc_pool_create_name()
ath11k: use GFP_ATOMIC under spin lock
octeontx2-pf: Fix error return code in otx2_probe()
ice: Fix error return code in ice_add_prof()
net: lpc-enet: fix error return code in lpc_mii_init()
selinux: fix error return code in policydb_read()
drivers: net: davinci_mdio: fix potential NULL dereference in davinci_mdio_probe()
ath10k: fix possible memory leak in ath10k_bmi_lz_data_large()
ath11k: fix error return code in ath11k_dp_alloc()
drm/mcde: dsi: Fix return value check in mcde_dsi_bind()
gnss: sirf: fix error return code in sirf_probe()
Weiping Zhang (3):
block: reset mapping if failed to update hardware queue count
nvme-pci: align io queue count with allocted nvme_queue in nvme_probe
nvme-pci: make sure write/poll_queues less or equal then cpu count
Weiyi Lu (1):
clk: mediatek: assign the initial value to clk_init_data of mtk_mux
Wen Gong (2):
ath10k: remove the max_sched_scan_reqs value
ath10k: add flush tx packets for SDIO chip
Xie XiuQi (1):
ixgbe: fix signed-integer-overflow warning
Xiyu Yang (1):
ext4: fix buffer_head refcnt leak when ext4_iget() fails
Yauheni Kaliuta (1):
selftests/bpf: Install generated test progs
YuanJunQing (1):
MIPS: Fix IRQ tracing when call handle_fpe() and handle_msa_fpe()
Yunjian Wang (1):
net: allwinner: Fix use correct return type for ndo_start_xmit()
Zijun Hu (1):
Bluetooth: hci_qca: Fix suspend/resume functionality failure
Zou Wei (1):
net/mlx4_core: Add missing iounmap() in error path
chen gong (1):
drm/amd/powerpay: Disable gfxoff when setting manual mode on picasso and raven
limingyu (1):
drm/amdgpu: Init data to avoid oops while reading pp_num_states.
Álvaro Fernández Rojas (1):
mtd: rawnand: brcmnand: fix hamming oob layout
Łukasz Stelmach (1):
arm64: kexec_file: print appropriate variable
Greg Kroah-Hartman
maintainerDocumentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt +6 -0
@@ -17,6 +17,9 @@ Required properties: Documentation/devicetree/bindings/graph.txt. This port should be connected to the input port of an attached HDMI or LVDS encoder chip. +Optional properties: +- pinctrl-names: Contain "default" and "sleep". + Example: dpi0: dpi@1401d000 {
@@ -27,6 +30,9 @@ dpi0: dpi@1401d000 { <&mmsys CLK_MM_DPI_ENGINE>, <&apmixedsys CLK_APMIXED_TVDPLL>; clock-names = "pixel", "engine", "pll"; + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&dpi_pin_func>; + pinctrl-1 = <&dpi_pin_idle>; port { dpi0_out: endpoint {
Documentation/virt/kvm/api.rst +2 -0
@@ -5067,9 +5067,11 @@ EOI was received. #define KVM_EXIT_HYPERV_SYNIC 1 #define KVM_EXIT_HYPERV_HCALL 2 __u32 type; + __u32 pad1; union { struct { __u32 msr; + __u32 pad2; __u64 control; __u64 evt_page; __u64 msg_page;
Makefile +9 -6
@@ -1,7 +1,7 @@ # SPDX-License-Identifier: GPL-2.0 VERSION = 5 PATCHLEVEL = 7 -SUBLEVEL = 4 +SUBLEVEL = 5 EXTRAVERSION = NAME = Kleptomaniac Octopus
@@ -608,12 +608,8 @@ KBUILD_MODULES := KBUILD_BUILTIN := 1 # If we have only "make modules", don't compile built-in objects. -# When we're building modules with modversions, we need to consider -# the built-in objects during the descend as well, in order to -# make sure the checksums are up to date before we record them. - ifeq ($(MAKECMDGOALS),modules) - KBUILD_BUILTIN := $(if $(CONFIG_MODVERSIONS),1) + KBUILD_BUILTIN := endif # If we have "make <whatever> modules", compile modules
@@ -1315,6 +1311,13 @@ ifdef CONFIG_MODULES all: modules +# When we're building modules with modversions, we need to consider +# the built-in objects during the descend as well, in order to +# make sure the checksums are up to date before we record them. +ifdef CONFIG_MODVERSIONS + KBUILD_BUILTIN := 1 +endif + # Build modules # # A module can be listed more than once in obj-m resulting in
arch/alpha/include/asm/io.h +59 -15
122 lines not on this page · raw message
arch/alpha/kernel/io.c +53 -7
108 lines not on this page · raw message
arch/arm/boot/compressed/.gitignore +0 -9
@@ -7,12 +7,3 @@ hyp-stub.S piggy_data vmlinux vmlinux.lds - -# borrowed libfdt files -fdt.c -fdt.h -fdt_ro.c -fdt_rw.c -fdt_wip.c -libfdt.h -libfdt_internal.h
arch/arm/boot/compressed/Makefile +15 -23
@@ -76,29 +76,30 @@ compress-$(CONFIG_KERNEL_LZMA) = lzma compress-$(CONFIG_KERNEL_XZ) = xzkern compress-$(CONFIG_KERNEL_LZ4) = lz4 -# Borrowed libfdt files for the ATAG compatibility mode - -libfdt := fdt_rw.c fdt_ro.c fdt_wip.c fdt.c -libfdt_hdrs := fdt.h libfdt.h libfdt_internal.h - -libfdt_objs := $(addsuffix .o, $(basename $(libfdt))) - -$(addprefix $(obj)/,$(libfdt) $(libfdt_hdrs)): $(obj)/%: $(srctree)/scripts/dtc/libfdt/% - $(call cmd,shipped) - -$(addprefix $(obj)/,$(libfdt_objs) atags_to_fdt.o): \ - $(addprefix $(obj)/,$(libfdt_hdrs)) +libfdt_objs := fdt_rw.o fdt_ro.o fdt_wip.o fdt.o ifeq ($(CONFIG_ARM_ATAG_DTB_COMPAT),y) OBJS += $(libfdt_objs) atags_to_fdt.o endif +# -fstack-protector-strong triggers protection checks in this code, +# but it is being used too early to link to meaningful stack_chk logic. +nossp-flags-$(CONFIG_CC_HAS_STACKPROTECTOR_NONE) := -fno-stack-protector +$(foreach o, $(libfdt_objs) atags_to_fdt.o, \ + $(eval CFLAGS_$(o) := -I $(srctree)/scripts/dtc/libfdt $(nossp-flags-y))) + +# These were previously generated C files. When you are building the kernel +# with O=, make sure to remove the stale files in the output tree. Otherwise, +# the build system wrongly compiles the stale ones. +ifdef building_out_of_srctree +$(shell rm -f $(addprefix $(obj)/, fdt_rw.c fdt_ro.c fdt_wip.c fdt.c)) +endif + targets := vmlinux vmlinux.lds piggy_data piggy.o \ lib1funcs.o ashldi3.o bswapsdi2.o \ head.o $(OBJS) -clean-files += piggy_data lib1funcs.S ashldi3.S bswapsdi2.S \ - $(libfdt) $(libfdt_hdrs) hyp-stub.S +clean-files += piggy_data lib1funcs.S ashldi3.S bswapsdi2.S hyp-stub.S KBUILD_CFLAGS += -DDISABLE_BRANCH_PROFILING
@@ -107,15 +108,6 @@ ORIG_CFLAGS := $(KBUILD_CFLAGS) KBUILD_CFLAGS = $(subst -pg, , $(ORIG_CFLAGS)) endif -# -fstack-protector-strong triggers protection checks in this code, -# but it is being used too early to link to meaningful stack_chk logic. -nossp-flags-$(CONFIG_CC_HAS_STACKPROTECTOR_NONE) := -fno-stack-protector -CFLAGS_atags_to_fdt.o := $(nossp-flags-y) -CFLAGS_fdt.o := $(nossp-flags-y) -CFLAGS_fdt_ro.o := $(nossp-flags-y) -CFLAGS_fdt_rw.o := $(nossp-flags-y) -CFLAGS_fdt_wip.o := $(nossp-flags-y) - ccflags-y := -fpic $(call cc-option,-mno-single-pic-base,) -fno-builtin \ -I$(obj) $(DISABLE_ARM_SSP_PER_TASK_PLUGIN) asflags-y := -DZIMAGE
arch/arm/boot/compressed/atags_to_fdt.c +1 -0
@@ -1,4 +1,5 @@// SPDX-License-Identifier: GPL-2.0 +#include <linux/libfdt_env.h> #include <asm/setup.h> #include <libfdt.h>
arch/arm/boot/compressed/fdt.c new file +2 -0
@@ -0,0 +1,2 @@ +// SPDX-License-Identifier: GPL-2.0-only +#include "../../../../lib/fdt.c"
arch/arm/boot/compressed/fdt_ro.c new file +2 -0
@@ -0,0 +1,2 @@ +// SPDX-License-Identifier: GPL-2.0-only +#include "../../../../lib/fdt_ro.c"
arch/arm/boot/compressed/fdt_rw.c new file +2 -0
@@ -0,0 +1,2 @@ +// SPDX-License-Identifier: GPL-2.0-only +#include "../../../../lib/fdt_rw.c"
arch/arm/boot/compressed/fdt_wip.c new file +2 -0
@@ -0,0 +1,2 @@ +// SPDX-License-Identifier: GPL-2.0-only +#include "../../../../lib/fdt_wip.c"
arch/arm/boot/compressed/libfdt_env.h deleted +0 -24
@@ -1,24 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 */ -#ifndef _ARM_LIBFDT_ENV_H -#define _ARM_LIBFDT_ENV_H - -#include <linux/limits.h> -#include <linux/types.h> -#include <linux/string.h> -#include <asm/byteorder.h> - -#define INT32_MAX S32_MAX -#define UINT32_MAX U32_MAX - -typedef __be16 fdt16_t ; -typedef __be32 fdt32_t ; -typedef __be64 fdt64_t ; - -#define fdt16_to_cpu (x) be16_to_cpu(x) -#define cpu_to_fdt16 (x) cpu_to_be16(x) -#define fdt32_to_cpu (x) be32_to_cpu(x) -#define cpu_to_fdt32 (x) cpu_to_be32(x) -#define fdt64_to_cpu (x) be64_to_cpu(x) -#define cpu_to_fdt64 (x) cpu_to_be64(x) - -#endif
arch/arm/boot/dts/at91-sama5d2_ptc_ek.dts +1 -1
@@ -40,7 +40,7 @@ main_xtal { ahb { usb0: gadget@300000 { - atmel,vbus-gpio = <&pioA PIN_PA27 GPIO_ACTIVE_HIGH>; + atmel,vbus-gpio = <&pioA PIN_PB11 GPIO_ACTIVE_HIGH>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usba_vbus>; status = "okay";
arch/arm/boot/dts/exynos4412-galaxy-s3.dtsi +1 -1
@@ -68,7 +68,7 @@ ak8975@c { i2c_cm36651: i2c-gpio-2 { compatible = "i2c-gpio"; - gpios = <&gpf0 0 GPIO_ACTIVE_LOW>, <&gpf0 1 GPIO_ACTIVE_LOW>; + gpios = <&gpf0 0 GPIO_ACTIVE_HIGH>, <&gpf0 1 GPIO_ACTIVE_HIGH>; i2c-gpio,delay-us = <2>; #address-cells = <1>; #size-cells = <0>;
arch/arm/boot/dts/s5pv210-aries.dtsi +1 -0
@@ -454,6 +454,7 @@ &sdhci1 { pinctrl-names = "default"; cap-sd-highspeed; cap-mmc-highspeed; + keep-power-in-suspend; mmc-pwrseq = <&wifi_pwrseq>; non-removable;
arch/arm/mach-tegra/tegra.c +2 -2
@@ -107,8 +107,8 @@ static const char * const tegra_dt_board_compat[] = { };DT_MACHINE_START (TEGRA_DT ,"NVIDIA Tegra SoC (Flattened Device Tree)" ) - .l2c_aux_val = 0x3c400001, - .l2c_aux_mask = 0xc20fc3fe, + .l2c_aux_val = 0x3c400000, + .l2c_aux_mask = 0xc20fc3ff, .smp = smp_ops(tegra_smp_ops), .map_io = tegra_map_common_io, .init_early = tegra_init_early,
arch/arm/mm/proc-macros.S +2 -1
@@ -5,6 +5,7 @@ * VMA_VM_FLAGS * VM_EXEC */ +#include <linux/const.h> #include <asm/asm-offsets.h> #include <asm/thread_info.h>
@@ -30,7 +31,7 @@ * act_mm - get current->active_mm */ .macro act_mm, rd - bic \rd, sp, #8128 + bic \rd, sp, #(THREAD_SIZE - 1) & ~63 bic \rd, \rd, #63 ldr \rd, [\rd, #TI_TASK] .if (TSK_ACTIVE_MM > IMM12_MASK)
arch/arm64/include/asm/cacheflush.h +3 -3
@@ -79,7 +79,7 @@ static inline void flush_icache_range(unsigned long start, unsigned long end)* IPI all online CPUs so that they undergo a context synchronization * event and are forced to refetch the new instructions. */ -#ifdef CONFIG_KGDB +/* * KGDB performs cache maintenance with interrupts disabled, so we * will deadlock trying to IPI the secondary CPUs. In theory, we can
@@ -89,9 +89,9 @@ static inline void flush_icache_range(unsigned long start, unsigned long end)* the patching operation, so we don't need extra IPIs here anyway. * In which case, add a KGDB-specific bodge and return early. */ -if (kgdb_connected &&irqs_disabled ()) +if (in_dbg_master ())return ; -#endif +kick_all_cpus_sync (); }
arch/arm64/include/asm/pgtable.h +1 -0
@@ -457,6 +457,7 @@ extern pgd_t init_pg_dir[PTRS_PER_PGD];extern pgd_t init_pg_end[];extern pgd_t swapper_pg_dir[PTRS_PER_PGD ];extern pgd_t idmap_pg_dir[PTRS_PER_PGD ]; +extern pgd_t idmap_pg_end[];extern pgd_t tramp_pg_dir[PTRS_PER_PGD ];extern void set_swapper_pgd (pgd_t *pgdp,pgd_t pgd);
arch/arm64/kernel/head.S +9 -3
@@ -394,13 +394,19 @@ SYM_FUNC_START_LOCAL(__create_page_tables) /* * Since the page tables have been populated with non-cacheable - * accesses (MMU disabled), invalidate the idmap and swapper page - * tables again to remove any speculatively loaded cache lines. + * accesses (MMU disabled), invalidate those tables again to + * remove any speculatively loaded cache lines. */ + dmb sy + adrp x0, idmap_pg_dir + adrp x1, idmap_pg_end + sub x1, x1, x0 + bl __inval_dcache_area + + adrp x0, init_pg_dir adrp x1, init_pg_end sub x1, x1, x0 - dmb sy bl __inval_dcache_area ret x28
arch/arm64/kernel/insn.c +7 -7
@@ -1535,16 +1535,10 @@ static u32 aarch64_encode_immediate(u64 imm, u32 insn) {unsigned int immr, imms, n, ones, ror, esz, tmp; -u64 mask = ~0UL ; - -/* Can't encode full zeroes or full ones */ -if (!imm || !~imm) -return AARCH64_BREAK_FAULT ; +u64 mask;switch (variant) {case AARCH64_INSN_VARIANT_32BIT : -if (upper_32_bits (imm)) -return AARCH64_BREAK_FAULT ; esz =32 ;break ;case AARCH64_INSN_VARIANT_64BIT :
@@ -1556,6 +1550,12 @@ static u32 aarch64_encode_immediate(u64 imm,return AARCH64_BREAK_FAULT ; } + mask =GENMASK (esz -1 ,0 ); + +/* Can't encode full zeroes, full ones, or value wider than the mask */ +if (!imm || imm == mask || imm & ~mask) +return AARCH64_BREAK_FAULT ; +/* * Inverse of Replicate(). Try to spot a repeating pattern * with a pow2 stride.
arch/arm64/kernel/machine_kexec_file.c +3 -3
@@ -284,7 +284,7 @@ int load_other_segments(struct kimage *image, image->arch.elf_headers_sz = headers_sz;pr_debug ("Loaded elf core header at 0x%lx bufsz=0x%lx memsz=0x%lx\n" , - image->arch.elf_headers_mem, headers_sz, headers_sz); + image->arch.elf_headers_mem, kbuf.bufsz, kbuf.memsz); }/* load initrd */
@@ -305,7 +305,7 @@ int load_other_segments(struct kimage *image, initrd_load_addr = kbuf.mem;pr_debug ("Loaded initrd at 0x%lx bufsz=0x%lx memsz=0x%lx\n" , - initrd_load_addr, initrd_len, initrd_len); + initrd_load_addr, kbuf.bufsz, kbuf.memsz); }/* load dtb */
@@ -332,7 +332,7 @@ int load_other_segments(struct kimage *image, image->arch.dtb_mem = kbuf.mem;pr_debug ("Loaded dtb at 0x%lx bufsz=0x%lx memsz=0x%lx\n" , - kbuf.mem, dtb_len, dtb_len); + kbuf.mem, kbuf.bufsz, kbuf.memsz);return 0 ;
arch/arm64/kernel/vmlinux.lds.S +1 -0
@@ -139,6 +139,7 @@ SECTIONS idmap_pg_dir = .; . += IDMAP_DIR_SIZE; + idmap_pg_end = .; #ifdef CONFIG_UNMAP_KERNEL_AT_EL0 tramp_pg_dir = .;
arch/m68k/include/asm/mac_via.h +1 -0
@@ -257,6 +257,7 @@ extern int rbv_present,via_alt_mapping;struct irq_desc ; +extern void via_l2_flush (int writeback);extern void via_register_interrupts (void );extern void via_irq_enable (int );extern void via_irq_disable (int );
arch/m68k/mac/config.c +2 -19
@@ -59,7 +59,6 @@ extern void iop_preinit(void);extern void iop_init (void );extern void via_init (void );extern void via_init_clock (irq_handler_t func); -extern void via_flush_cache (void );extern void oss_init (void );extern void psc_init (void );extern void baboon_init (void );
@@ -130,21 +129,6 @@ int __init mac_parse_bootinfo(const struct bi_record *record)return unknown; } -/* -* Flip into 24bit mode for an instant - flushes the L2 cache card. We -* have to disable interrupts for this. Our IRQ handlers will crap -* themselves if they take an IRQ in 24bit mode! -*/ - -static void mac_cache_card_flush (int writeback) -{ -unsigned long flags; - -local_irq_save (flags); -via_flush_cache (); -local_irq_restore (flags); -} -void __init config_mac (void ) {if (!MACH_IS_MAC )
@@ -175,9 +159,8 @@ void __init config_mac(void)* not. */ -if (macintosh_config->ident ==MAC_MODEL_IICI - || macintosh_config->ident ==MAC_MODEL_IIFX ) - mach_l2_flush = mac_cache_card_flush; +if (macintosh_config->ident ==MAC_MODEL_IICI ) + mach_l2_flush = via_l2_flush; }
arch/m68k/mac/via.c +5 -1
@@ -294,10 +294,14 @@ void via_debug_dump(void)* the system into 24-bit mode for an instant. */ -void via_flush_cache (void ) +void via_l2_flush (int writeback) { +unsigned long flags; + +local_irq_save (flags); via2[gBufB] &= ~VIA2B_vMode32; via2[gBufB] |= VIA2B_vMode32; +local_irq_restore (flags); }/*
arch/mips/Makefile +12 -1
@@ -288,12 +288,23 @@ ifdef CONFIG_64BIT endif endif +# When linking a 32-bit executable the LLVM linker cannot cope with a +# 32-bit load address that has been sign-extended to 64 bits. Simply +# remove the upper 32 bits then, as it is safe to do so with other +# linkers. +ifdef CONFIG_64BIT + load-ld = $(load-y) +else + load-ld = $(subst 0xffffffff,0x,$(load-y)) +endif + KBUILD_AFLAGS += $(cflags-y) KBUILD_CFLAGS += $(cflags-y) -KBUILD_CPPFLAGS += -DVMLINUX_LOAD_ADDRESS=$(load-y) +KBUILD_CPPFLAGS += -DVMLINUX_LOAD_ADDRESS=$(load-y) -DLINKER_LOAD_ADDRESS=$(load-ld) KBUILD_CPPFLAGS += -DDATAOFFSET=$(if $(dataoffset-y),$(dataoffset-y),0) bootvars-y = VMLINUX_LOAD_ADDRESS=$(load-y) \ + LINKER_LOAD_ADDRESS=$(load-ld) \ VMLINUX_ENTRY_ADDRESS=$(entry-y) \ PLATFORM="$(platform-y)" \ ITS_INPUTS="$(its-y)"
arch/mips/boot/compressed/Makefile +1 -1
@@ -90,7 +90,7 @@ ifneq ($(zload-y),) VMLINUZ_LOAD_ADDRESS := $(zload-y) else VMLINUZ_LOAD_ADDRESS = $(shell $(obj)/calc_vmlinuz_load_addr \ - $(obj)/vmlinux.bin $(VMLINUX_LOAD_ADDRESS)) + $(obj)/vmlinux.bin $(LINKER_LOAD_ADDRESS)) endif UIMAGE_LOADADDR = $(VMLINUZ_LOAD_ADDRESS)
arch/mips/configs/loongson3_defconfig +1 -1
@@ -229,7 +229,7 @@ CONFIG_MEDIA_CAMERA_SUPPORT=y CONFIG_MEDIA_USB_SUPPORT=y CONFIG_USB_VIDEO_CLASS=m CONFIG_DRM=y -CONFIG_DRM_RADEON=y +CONFIG_DRM_RADEON=m CONFIG_FB_RADEON=y CONFIG_LCD_CLASS_DEVICE=y CONFIG_LCD_PLATFORM=m
arch/mips/include/asm/cpu-features.h +4 -2
@@ -288,10 +288,12 @@# define cpu_has_mips32r6 __isa_ge_or_flag(6, MIPS_CPU_ISA_M32R6)#endif #ifndef cpu_has_mips64r1 -# define cpu_has_mips64r1 __isa_range_or_flag(1, 6, MIPS_CPU_ISA_M64R1) +# define cpu_has_mips64r1 (cpu_has_64bits && \ + __isa_range_or_flag(1, 6, MIPS_CPU_ISA_M64R1))#endif #ifndef cpu_has_mips64r2 -# define cpu_has_mips64r2 __isa_range_or_flag(2, 6, MIPS_CPU_ISA_M64R2) +# define cpu_has_mips64r2 (cpu_has_64bits && \ + __isa_range_or_flag(2, 6, MIPS_CPU_ISA_M64R2))#endif #ifndef cpu_has_mips64r6# define cpu_has_mips64r6 __isa_ge_and_flag(6, MIPS_CPU_ISA_M64R6)
arch/mips/include/asm/mipsregs.h +1 -1
@@ -753,7 +753,7 @@/* MAAR bit definitions */ #define MIPS_MAAR_VH (_U64CAST_(1) << 63) -#define MIPS_MAAR_ADDR ((BIT_ULL(BITS_PER_LONG - 12) - 1) << 12) +#define MIPS_MAAR_ADDR GENMASK_ULL(55, 12)#define MIPS_MAAR_ADDR_SHIFT 12#define MIPS_MAAR_S (_ULCAST_(1) << 1)#define MIPS_MAAR_VL (_ULCAST_(1) << 0)
arch/mips/kernel/genex.S +3 -3
@@ -476,20 +476,20 @@ NESTED(nmi_handler, PT_SIZE, sp) .endm .macro __build_clear_fpe + CLI + TRACE_IRQS_OFF .set push /* gas fails to assemble cfc1 for some archs (octeon).*/ \ .set mips1 SET_HARDFLOAT cfc1 a1, fcr31 .set pop - CLI - TRACE_IRQS_OFF .endm .macro __build_clear_msa_fpe - _cfcmsa a1, MSA_CSR CLI TRACE_IRQS_OFF + _cfcmsa a1, MSA_CSR .endm .macro __build_clear_ade
arch/mips/kernel/mips-cm.c +3 -3
@@ -119,9 +119,9 @@ static char *cm2_causes[32] = {"COH_RD_ERR" ,"MMIO_WR_ERR" ,"MMIO_RD_ERR" ,"0x07" ,"0x08" ,"0x09" ,"0x0a" ,"0x0b" ,"0x0c" ,"0x0d" ,"0x0e" ,"0x0f" , -"0x10" ,"0x11" ,"0x12" ,"0x13" , -"0x14" ,"0x15" ,"0x16" ,"INTVN_WR_ERR" , -"INTVN_RD_ERR" ,"0x19" ,"0x1a" ,"0x1b" , +"0x10" ,"INTVN_WR_ERR" ,"INTVN_RD_ERR" ,"0x13" , +"0x14" ,"0x15" ,"0x16" ,"0x17" , +"0x18" ,"0x19" ,"0x1a" ,"0x1b" ,"0x1c" ,"0x1d" ,"0x1e" ,"0x1f" };
arch/mips/kernel/setup.c +10 -0
@@ -702,7 +702,17 @@ static void __init arch_mem_init(char **cmdline_p)memblock_reserve (crashk_res.start,resource_size (&crashk_res));#endif device_tree_init (); + +/* +* In order to reduce the possibility of kernel panic when failed to +* get IO TLB memory under CONFIG_SWIOTLB, it is better to allocate +* low memory as small as possible before plat_swiotlb_setup(), so +* make sparse_init() using top-down allocation. +*/ +memblock_set_bottom_up (false);sparse_init (); +memblock_set_bottom_up (true); +plat_swiotlb_setup ();dma_contiguous_reserve (PFN_PHYS (max_low_pfn));
arch/mips/kernel/time.c +70 -0
82 lines not on this page · raw message
arch/mips/kernel/vmlinux.lds.S +1 -1
@@ -55,7 +55,7 @@ SECTIONS /* . = 0xa800000000300000; */ . = 0xffffffff80300000; #endif - . = VMLINUX_LOAD_ADDRESS; + . = LINKER_LOAD_ADDRESS; /* read-only */ _text = .; /* Text and read-only data */ .text : {
arch/mips/loongson2ef/common/init.c +2 -2
@@ -19,10 +19,10 @@ unsigned long __maybe_unused _loongson_addrwincfg_base;static void __init mips_nmi_setup (void ) {void *base; -extern char except_vec_nmi; +extern char except_vec_nmi[]; base = (void *)(CAC_BASE +0x380 ); -memcpy (base, &except_vec_nmi,0x80 ); +memcpy (base, except_vec_nmi,0x80 );flush_icache_range ((unsigned long )base, (unsigned long )base +0x80 ); }
arch/mips/loongson64/init.c +2 -2
@@ -17,10 +17,10 @@static void __init mips_nmi_setup (void ) {void *base; -extern char except_vec_nmi; +extern char except_vec_nmi[]; base = (void *)(CAC_BASE +0x380 ); -memcpy (base, &except_vec_nmi,0x80 ); +memcpy (base, except_vec_nmi,0x80 );flush_icache_range ((unsigned long )base, (unsigned long )base +0x80 ); }
arch/mips/mm/dma-noncoherent.c +1 -0
@@ -33,6 +33,7 @@ static inline bool cpu_needs_post_dma_flush(void)case CPU_R10000 :case CPU_R12000 :case CPU_BMIPS5000 : +case CPU_LOONGSON2EF :return true;default :/*
arch/mips/mti-malta/malta-init.c +4 -4
@@ -90,24 +90,24 @@ static void __init console_config(void)static void __init mips_nmi_setup (void ) {void *base; -extern char except_vec_nmi; +extern char except_vec_nmi[]; base = cpu_has_veic ? (void *)(CAC_BASE +0xa80 ) : (void *)(CAC_BASE +0x380 ); -memcpy (base, &except_vec_nmi,0x80 ); +memcpy (base, except_vec_nmi,0x80 );flush_icache_range ((unsigned long )base, (unsigned long )base +0x80 ); }static void __init mips_ejtag_setup (void ) {void *base; -extern char except_vec_ejtag_debug; +extern char except_vec_ejtag_debug[]; base = cpu_has_veic ? (void *)(CAC_BASE +0xa00 ) : (void *)(CAC_BASE +0x300 ); -memcpy (base, &except_vec_ejtag_debug,0x80 ); +memcpy (base, except_vec_ejtag_debug,0x80 );flush_icache_range ((unsigned long )base, (unsigned long )base +0x80 ); }
arch/mips/pistachio/init.c +4 -4
@@ -83,12 +83,12 @@ phys_addr_t mips_cdmm_phys_base(void)static void __init mips_nmi_setup (void ) {void *base; -extern char except_vec_nmi; +extern char except_vec_nmi[]; base = cpu_has_veic ? (void *)(CAC_BASE +0xa80 ) : (void *)(CAC_BASE +0x380 ); -memcpy (base, &except_vec_nmi,0x80 ); +memcpy (base, except_vec_nmi,0x80 );flush_icache_range ((unsigned long )base, (unsigned long )base +0x80 ); }
@@ -96,12 +96,12 @@ static void __init mips_nmi_setup(void)static void __init mips_ejtag_setup (void ) {void *base; -extern char except_vec_ejtag_debug; +extern char except_vec_ejtag_debug[]; base = cpu_has_veic ? (void *)(CAC_BASE +0xa00 ) : (void *)(CAC_BASE +0x300 ); -memcpy (base, &except_vec_ejtag_debug,0x80 ); +memcpy (base, except_vec_ejtag_debug,0x80 );flush_icache_range ((unsigned long )base, (unsigned long )base +0x80 ); }
arch/mips/tools/elf-entry.c +8 -1
@@ -51,11 +51,14 @@ int main(int argc, const char *argv[]) nread =fread (&hdr,1 ,sizeof (hdr), file);if (nread !=sizeof (hdr)) {perror ("Unable to read input file" ); +fclose (file);return EXIT_FAILURE ; } -if (memcmp (hdr.ehdr32.e_ident,ELFMAG ,SELFMAG )) +if (memcmp (hdr.ehdr32.e_ident,ELFMAG ,SELFMAG )) { +fclose (file);die ("Input is not an ELF\n" ); + }switch (hdr.ehdr32.e_ident[EI_CLASS ]) {case ELFCLASS32 :
@@ -67,6 +70,7 @@ int main(int argc, const char *argv[]) entry =be32toh (hdr.ehdr32.e_entry);break ;default : +fclose (file);die ("Invalid ELF encoding\n" ); }
@@ -83,14 +87,17 @@ int main(int argc, const char *argv[]) entry =be64toh (hdr.ehdr64.e_entry);break ;default : +fclose (file);die ("Invalid ELF encoding\n" ); }break ;default : +fclose (file);die ("Invalid ELF class\n" ); }printf ("0x%016" PRIx64"\n" , entry); +fclose (file);return EXIT_SUCCESS ; }
arch/powerpc/Kconfig +2 -2
@@ -170,8 +170,8 @@ config PPC select HAVE_ARCH_AUDITSYSCALL select HAVE_ARCH_HUGE_VMAP if PPC_BOOK3S_64 && PPC_RADIX_MMU select HAVE_ARCH_JUMP_LABEL - select HAVE_ARCH_KASAN if PPC32 - select HAVE_ARCH_KASAN_VMALLOC if PPC32 + select HAVE_ARCH_KASAN if PPC32 && PPC_PAGE_SHIFT <= 14 + select HAVE_ARCH_KASAN_VMALLOC if PPC32 && PPC_PAGE_SHIFT <= 14 select HAVE_ARCH_KGDB select HAVE_ARCH_MMAP_RND_BITS select HAVE_ARCH_MMAP_RND_COMPAT_BITS if COMPAT
arch/powerpc/include/asm/book3s/32/kup.h +2 -1
@@ -2,6 +2,7 @@#ifndef _ASM_POWERPC_BOOK3S_32_KUP_H#define _ASM_POWERPC_BOOK3S_32_KUP_H +#include <asm/bug.h> #include <asm/book3s/32/mmu-hash.h> #ifdef __ASSEMBLY__
@@ -75,7 +76,7 @@ .macro kuap_check current, gpr#ifdef CONFIG_PPC_KUAP_DEBUG - lwz \gpr, KUAP(thread) + lwz \gpr, THREAD + KUAP(\current) 999: twnei \gpr, 0 EMIT_BUG_ENTRY 999b, __FILE__, __LINE__, (BUGFLAG_WARNING | BUGFLAG_ONCE) #endif
arch/powerpc/include/asm/fadump-internal.h +3 -1
@@ -64,12 +64,14 @@ struct fadump_memory_range { };/* fadump memory ranges info */ +#define RNG_NAME_SZ 16struct fadump_mrange_info { -char name[16 ]; +char name[RNG_NAME_SZ ];struct fadump_memory_range *mem_ranges;u32 mem_ranges_sz;u32 mem_range_cnt;u32 max_mem_ranges; +bool is_static; };/* Platform specific callback functions */
arch/powerpc/include/asm/kasan.h +1 -5
@@ -23,18 +23,14 @@#define KASAN_SHADOW_OFFSET ASM_CONST(CONFIG_KASAN_SHADOW_OFFSET) -#define KASAN_SHADOW_END 0UL - -#define KASAN_SHADOW_SIZE (KASAN_SHADOW_END - KASAN_SHADOW_START) +#define KASAN_SHADOW_END (-(-KASAN_SHADOW_START >> KASAN_SHADOW_SCALE_SHIFT))#ifdef CONFIG_KASAN void kasan_early_init (void ); -void kasan_mmu_init (void );void kasan_init (void );void kasan_late_init (void );#else static inline void kasan_init (void ) { } -static inline void kasan_mmu_init (void ) { }static inline void kasan_late_init (void ) { }#endif
arch/powerpc/kernel/dt_cpu_ftrs.c +8 -0
@@ -346,6 +346,14 @@ static int __init feat_enable_dscr(struct dt_cpu_feature *f) {u64 lpcr; +/* +* Linux relies on FSCR[DSCR] being clear, so that we can take the +* facility unavailable interrupt and track the task's usage of DSCR. +* See facility_unavailable_exception(). +* Clear the bit here so that feat_enable() doesn't set it. +*/ + f->fscr_bit_nr =-1 ; +feat_enable (f); lpcr =mfspr (SPRN_LPCR );
arch/powerpc/kernel/fadump.c +113 -42
234 lines not on this page · raw message
arch/powerpc/kernel/prom.c +19 -0
@@ -685,6 +685,23 @@ static void __init tm_init(void)static void tm_init (void ) { }#endif /* CONFIG_PPC_TRANSACTIONAL_MEM */ +#ifdef CONFIG_PPC64 +static void __init save_fscr_to_task (void ) +{ +/* +* Ensure the init_task (pid 0, aka swapper) uses the value of FSCR we +* have configured via the device tree features or via __init_FSCR(). +* That value will then be propagated to pid 1 (init) and all future +* processes. +*/ +if (early_cpu_has_feature (CPU_FTR_ARCH_207S )) + init_task.thread.fscr =mfspr (SPRN_FSCR ); +} +#else +static inline void save_fscr_to_task (void ) {}; +#endif + +void __init early_init_devtree (void *params) {phys_addr_t limit;
@@ -773,6 +790,8 @@ void __init early_init_devtree(void *params)BUG (); } +save_fscr_to_task (); +#if defined(CONFIG_SMP ) && defined(CONFIG_PPC64 )/* We'll later wait for secondaries to check in; there are * NCPUS-1 non-boot CPUs :-)
arch/powerpc/mm/init_32.c +0 -2
@@ -170,8 +170,6 @@ void __init MMU_init(void)btext_unmap ();#endif -kasan_mmu_init (); -setup_kup ();/* Shortly after that, the entire linear mapping will be available */
arch/powerpc/mm/kasan/kasan_init_32.c +3 -1
@@ -132,7 +132,7 @@ static void __init kasan_unmap_early_shadow_vmalloc(void)flush_tlb_kernel_range (k_start, k_end); } -void __init kasan_mmu_init (void ) +static void __init kasan_mmu_init (void ) {int ret;struct memblock_region *reg;
@@ -160,6 +160,8 @@ void __init kasan_mmu_init(void)void __init kasan_init (void ) { +kasan_mmu_init (); +kasan_remap_early_shadow_ro ();clear_page (kasan_early_shadow_page);
arch/powerpc/mm/pgtable_32.c +2 -2
@@ -169,7 +169,7 @@ void mark_initmem_nx(void)unsigned long numpages =PFN_UP ((unsigned long )_einittext) -PFN_DOWN ((unsigned long )_sinittext); -if (v_block_mapped ((unsigned long )_stext +1 )) +if (v_block_mapped ((unsigned long )_sinittext))mmu_mark_initmem_nx ();else change_page_attr (page, numpages,PAGE_KERNEL );
@@ -181,7 +181,7 @@ void mark_rodata_ro(void)struct page *page;unsigned long numpages; -if (v_block_mapped ((unsigned long )_sinittext)) { +if (v_block_mapped ((unsigned long )_stext +1 )) {mmu_mark_rodata_ro ();ptdump_check_wx ();return ;
arch/powerpc/platforms/cell/spufs/file.c +75 -38
234 lines not on this page · raw message
arch/powerpc/platforms/powernv/smp.c +0 -1
@@ -167,7 +167,6 @@ static void pnv_smp_cpu_kill_self(void)/* Standard hot unplug procedure */ idle_task_exit (); - current->active_mm =NULL ;/* for sanity */ cpu =smp_processor_id ();DBG ("CPU%d offline\n" , cpu);generic_set_cpu_dead (cpu);
arch/riscv/mm/init.c +0 -11
@@ -479,17 +479,6 @@ static void __init setup_vm_final(void)csr_write (CSR_SATP ,PFN_DOWN (__pa_symbol (swapper_pg_dir)) |SATP_MODE );local_flush_tlb_all (); } - -void free_initmem (void ) -{ -unsigned long init_begin = (unsigned long )__init_begin; -unsigned long init_end = (unsigned long )__init_end; - -/* Make the region as non-execuatble. */ -set_memory_nx (init_begin, (init_end - init_begin) >>PAGE_SHIFT ); -free_initmem_default (POISON_FREE_INITMEM ); -} -#else asmlinkage void __init setup_vm(uintptr_t dtb_pa) {
arch/riscv/net/bpf_jit_comp32.c +3 -2
@@ -770,12 +770,13 @@ static int emit_bpf_tail_call(int insn, struct rv_jit_context *ctx)emit_bcc (BPF_JGE ,lo (idx_reg),RV_REG_T1 , off, ctx);/* -* if ((temp_tcc = tcc - 1) < 0) +* temp_tcc = tcc - 1; +* if (tcc < 0) * goto out; */ emit (rv_addi (RV_REG_T1 ,RV_REG_TCC ,-1 ), ctx); off = (tc_ninsn - (ctx->ninsns - start_insn)) <<2 ; -emit_bcc (BPF_JSLT ,RV_REG_T1 ,RV_REG_ZERO , off, ctx); +emit_bcc (BPF_JSLT ,RV_REG_TCC ,RV_REG_ZERO , off, ctx);/* * prog = array->ptrs[index];
arch/s390/net/bpf_jit_comp.c +10 -9
@@ -594,7 +594,7 @@ static void bpf_jit_epilogue(struct bpf_jit *jit, u32 stack_depth)* stack space for the large switch statement. */ static noinline int bpf_jit_insn(struct bpf_jit *jit, struct bpf_prog *fp, -int i,bool extra_pass) +int i,bool extra_pass,u32 stack_depth) {struct bpf_insn *insn = &fp->insnsi[i];u32 dst_reg = insn->dst_reg;
@@ -1207,7 +1207,7 @@ static noinline int bpf_jit_insn(struct bpf_jit *jit, struct bpf_prog *fp,*/ if (jit->seen &SEEN_STACK ) - off =STK_OFF_TCCNT +STK_OFF + fp->aux->stack_depth; + off =STK_OFF_TCCNT +STK_OFF + stack_depth;else off =STK_OFF_TCCNT ;/* lhi %w0,1 */
@@ -1249,7 +1249,7 @@ static noinline int bpf_jit_insn(struct bpf_jit *jit, struct bpf_prog *fp,/* * Restore registers before calling function */ -save_restore_regs (jit,REGS_RESTORE , fp->aux->stack_depth); +save_restore_regs (jit,REGS_RESTORE , stack_depth);/* * goto *(prog->bpf_func + tail_call_start);
@@ -1519,7 +1519,7 @@ static int bpf_set_addr(struct bpf_jit *jit, int i)* Compile eBPF program into s390x code */ static int bpf_jit_prog (struct bpf_jit *jit,struct bpf_prog *fp, -bool extra_pass) +bool extra_pass,u32 stack_depth) {int i, insn_count, lit32_size, lit64_size;
@@ -1527,18 +1527,18 @@ static int bpf_jit_prog(struct bpf_jit *jit, struct bpf_prog *fp, jit->lit64 = jit->lit64_start; jit->prg =0 ; -bpf_jit_prologue (jit, fp->aux->stack_depth); +bpf_jit_prologue (jit, stack_depth);if (bpf_set_addr (jit,0 ) <0 )return -1 ;for (i =0 ; i < fp->len; i += insn_count) { - insn_count =bpf_jit_insn (jit, fp, i, extra_pass); + insn_count =bpf_jit_insn (jit, fp, i, extra_pass, stack_depth);if (insn_count <0 )return -1 ;/* Next instruction address */ if (bpf_set_addr (jit, i + insn_count) <0 )return -1 ; } -bpf_jit_epilogue (jit, fp->aux->stack_depth); +bpf_jit_epilogue (jit, stack_depth); lit32_size = jit->lit32 - jit->lit32_start; lit64_size = jit->lit64 - jit->lit64_start;
@@ -1569,6 +1569,7 @@ struct s390_jit_data {*/ struct bpf_prog *bpf_int_jit_compile (struct bpf_prog *fp) { +u32 stack_depth =round_up (fp->aux->stack_depth,8 );struct bpf_prog *tmp, *orig_fp = fp;struct bpf_binary_header *header;struct s390_jit_data *jit_data;
@@ -1621,7 +1622,7 @@ struct bpf_prog *bpf_int_jit_compile(struct bpf_prog *fp)* - 3: Calculate program size and addrs arrray */ for (pass =1 ; pass <=3 ; pass++) { -if (bpf_jit_prog (&jit, fp, extra_pass)) { +if (bpf_jit_prog (&jit, fp, extra_pass, stack_depth)) { fp = orig_fp; goto free_addrs; }
@@ -1635,7 +1636,7 @@ struct bpf_prog *bpf_int_jit_compile(struct bpf_prog *fp) goto free_addrs; } skip_init_ctx: -if (bpf_jit_prog (&jit, fp, extra_pass)) { +if (bpf_jit_prog (&jit, fp, extra_pass, stack_depth)) {bpf_jit_binary_free (header); fp = orig_fp; goto free_addrs;
arch/sparc/kernel/ptrace_32.c +98 -130
262 lines not on this page · raw message
arch/sparc/kernel/ptrace_64.c +3 -14
@@ -572,19 +572,13 @@ static int genregs32_get(struct task_struct *target,for (; count >0 && pos <32 ; count--) {if (access_process_vm (target, (unsigned long ) - ®_window[pos], + ®_window[pos++], ®,sizeof (reg),FOLL_FORCE ) !=sizeof (reg))return -EFAULT ; -if (access_process_vm (target, - (unsigned long ) u, - ®,sizeof (reg), -FOLL_FORCE |FOLL_WRITE ) - !=sizeof (reg)) +if (put_user (reg, u++))return -EFAULT ; - pos++; - u++; } } }
@@ -684,12 +678,7 @@ static int genregs32_set(struct task_struct *target, } }else {for (; count >0 && pos <32 ; count--) { -if (access_process_vm (target, - (unsigned long ) - u, - ®,sizeof (reg), -FOLL_FORCE ) - !=sizeof (reg)) +if (get_user (reg, u++))return -EFAULT ; if (access_process_vm(target, (unsigned long)
arch/x86/boot/compressed/head_32.S +3 -2
@@ -49,16 +49,17 @@ * Position Independent Executable (PIE) so that linker won't optimize * R_386_GOT32X relocation to its fixed symbol address. Older * linkers generate R_386_32 relocations against locally defined symbols, - * _bss, _ebss, _got and _egot, in PIE. It isn't wrong, just less + * _bss, _ebss, _got, _egot and _end, in PIE. It isn't wrong, just less * optimal than R_386_RELATIVE. But the x86 kernel fails to properly handle * R_386_32 relocations when relocating the kernel. To generate - * R_386_RELATIVE relocations, we mark _bss, _ebss, _got and _egot as + * R_386_RELATIVE relocations, we mark _bss, _ebss, _got, _egot and _end as * hidden: */ .hidden _bss .hidden _ebss .hidden _got .hidden _egot + .hidden _end __HEAD SYM_FUNC_START(startup_32)
arch/x86/boot/compressed/head_64.S +1 -0
@@ -42,6 +42,7 @@ .hidden _ebss .hidden _got .hidden _egot + .hidden _end __HEAD .code32
arch/x86/include/asm/smap.h +8 -3
@@ -57,8 +57,10 @@ static __always_inline unsigned long smap_save(void) {unsigned long flags; - asm volatile (ALTERNATIVE("", "pushf; pop %0; " __ASM_CLAC, - X86_FEATURE_SMAP) + asmvolatile ("# smap_save\n\t" + ALTERNATIVE("jmp 1f", "", X86_FEATURE_SMAP) + "pushf; pop %0; " __ASM_CLAC "\n\t" + "1:" : "=rm" (flags) : : "memory", "cc"); return flags;
@@ -66,7 +68,10 @@ static __always_inline unsigned long smap_save(void) static __always_inline void smap_restore(unsigned long flags) { - asm volatile (ALTERNATIVE("", "push %0; popf", X86_FEATURE_SMAP) + asmvolatile ("# smap_restore\n\t" + ALTERNATIVE("jmp 1f", "", X86_FEATURE_SMAP) + "push %0; popf\n\t" + "1:" : : "g" (flags) : "memory", "cc"); }
arch/x86/kernel/amd_nb.c +5 -0
@@ -18,9 +18,11 @@#define PCI_DEVICE_ID_AMD_17H_ROOT 0x1450#define PCI_DEVICE_ID_AMD_17H_M10H_ROOT 0x15d0#define PCI_DEVICE_ID_AMD_17H_M30H_ROOT 0x1480 +#define PCI_DEVICE_ID_AMD_17H_M60H_ROOT 0x1630#define PCI_DEVICE_ID_AMD_17H_DF_F4 0x1464#define PCI_DEVICE_ID_AMD_17H_M10H_DF_F4 0x15ec#define PCI_DEVICE_ID_AMD_17H_M30H_DF_F4 0x1494 +#define PCI_DEVICE_ID_AMD_17H_M60H_DF_F4 0x144c#define PCI_DEVICE_ID_AMD_17H_M70H_DF_F4 0x1444#define PCI_DEVICE_ID_AMD_19H_DF_F4 0x1654
@@ -33,6 +35,7 @@ static const struct pci_device_id amd_root_ids[] = { { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_ROOT) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M10H_ROOT) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M30H_ROOT) }, + { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M60H_ROOT) }, {} };
@@ -50,6 +53,7 @@ static const struct pci_device_id amd_nb_misc_ids[] = { { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_DF_F3) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M10H_DF_F3) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M30H_DF_F3) }, + { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M60H_DF_F3) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_CNB17H_F3) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M70H_DF_F3) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_DF_F3) },
@@ -65,6 +69,7 @@ static const struct pci_device_id amd_nb_link_ids[] = { { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_DF_F4) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M10H_DF_F4) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M30H_DF_F4) }, + { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M60H_DF_F4) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M70H_DF_F4) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_DF_F4) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_CNB17H_F4) },
arch/x86/kernel/irq_64.c +1 -1
@@ -43,7 +43,7 @@ static int map_irq_stack(unsigned int cpu) pages[i] =pfn_to_page (pa >>PAGE_SHIFT ); } - va =vmap (pages,IRQ_STACK_SIZE /PAGE_SIZE ,GFP_KERNEL ,PAGE_KERNEL ); + va =vmap (pages,IRQ_STACK_SIZE /PAGE_SIZE ,VM_MAP ,PAGE_KERNEL );if (!va)return -ENOMEM ;
arch/x86/mm/init.c +0 -2
@@ -121,8 +121,6 @@ __ref void *alloc_low_pages(unsigned int num) }else { pfn = pgt_buf_end; pgt_buf_end += num; -printk (KERN_DEBUG "BRK [%#010lx, %#010lx] PGTABLE\n" , - pfn <<PAGE_SHIFT , (pgt_buf_end <<PAGE_SHIFT ) -1 ); }for (i =0 ; i < num; i++) {
block/blk-iocost.c +24 -4
@@ -1543,19 +1543,39 @@ static void ioc_timer_fn(struct timer_list *timer)if (rq_wait_pct >RQ_WAIT_BUSY_PCT || missed_ppm[READ ] > ppm_rthr || missed_ppm[WRITE ] > ppm_wthr) { +/* clearly missing QoS targets, slow down vrate */ ioc->busy_level =max (ioc->busy_level,0 ); ioc->busy_level++; }else if (rq_wait_pct <=RQ_WAIT_BUSY_PCT *UNBUSY_THR_PCT /100 && missed_ppm[READ ] <= ppm_rthr *UNBUSY_THR_PCT /100 && missed_ppm[WRITE ] <= ppm_wthr *UNBUSY_THR_PCT /100 ) { -/* take action iff there is contention */ -if (nr_shortages && !nr_lagging) { +/* QoS targets are being met with >25% margin */ +if (nr_shortages) { +/* +* We're throttling while the device has spare +* capacity. If vrate was being slowed down, stop. +*/ ioc->busy_level =min (ioc->busy_level,0 ); -/* redistribute surpluses first */ -if (!nr_surpluses) + +/* +* If there are IOs spanning multiple periods, wait +* them out before pushing the device harder. If +* there are surpluses, let redistribution work it +* out first. +*/ +if (!nr_lagging && !nr_surpluses) ioc->busy_level--; + }else { +/* +* Nobody is being throttled and the users aren't +* issuing enough IOs to saturate the device. We +* simply don't know how close the device is to +* saturation. Coast. +*/ + ioc->busy_level =0 ; } }else { +/* inside the hysterisis margin, we're good */ ioc->busy_level =0 ; }
block/blk-mq.c +13 -13
@@ -2521,18 +2521,6 @@ static void blk_mq_map_swqueue(struct request_queue *q)* If the cpu isn't present, the cpu is mapped to first hctx. */ for_each_possible_cpu (i) { - hctx_idx = set->map[HCTX_TYPE_DEFAULT ].mq_map[i]; -/* unmapped hw queue can be remapped after CPU topo changed */ -if (!set->tags[hctx_idx] && - !__blk_mq_alloc_rq_map (set, hctx_idx)) { -/* -* If tags initialization fail for some hctx, -* that hctx won't be brought online. In this -* case, remap the current ctx to hctx[0] which -* is guaranteed to always have tags allocated -*/ - set->map[HCTX_TYPE_DEFAULT ].mq_map[i] =0 ; - } ctx =per_cpu_ptr (q->queue_ctx, i);for (j =0 ; j < set->nr_maps; j++) {
@@ -2541,6 +2529,18 @@ static void blk_mq_map_swqueue(struct request_queue *q) HCTX_TYPE_DEFAULT, i);continue ; } + hctx_idx = set->map[j].mq_map[i]; +/* unmapped hw queue can be remapped after CPU topo changed */ +if (!set->tags[hctx_idx] && + !__blk_mq_alloc_rq_map (set, hctx_idx)) { +/* +* If tags initialization fail for some hctx, +* that hctx won't be brought online. In this +* case, remap the current ctx to hctx[0] which +* is guaranteed to always have tags allocated +*/ + set->map[j].mq_map[i] =0 ; + } hctx =blk_mq_map_queue_type (q, j, i); ctx->hctxs[j] = hctx;
@@ -3353,8 +3353,8 @@ static void __blk_mq_update_nr_hw_queues(struct blk_mq_tag_set *set, prev_nr_hw_queues = set->nr_hw_queues; set->nr_hw_queues = nr_hw_queues; -blk_mq_update_queue_map (set); fallback: +blk_mq_update_queue_map (set);list_for_each_entry (q, &set->tag_list, tag_set_list) {blk_mq_realloc_hw_ctxs (set, q);if (q->nr_hw_queues != set->nr_hw_queues) {
block/blk.h +2 -0
@@ -470,9 +470,11 @@ static inline sector_t part_nr_sects_read(struct hd_struct *part)static inline void part_nr_sects_write (struct hd_struct *part,sector_t size) {#if BITS_PER_LONG ==32 && defined(CONFIG_SMP ) +preempt_disable ();write_seqcount_begin (&part->nr_sects_seq); part->nr_sects = size;write_seqcount_end (&part->nr_sects_seq); +preempt_enable ();#elif BITS_PER_LONG ==32 && defined(CONFIG_PREEMPTION )preempt_disable (); part->nr_sects = size;
crypto/blake2b_generic.c +3 -1
@@ -129,7 +129,9 @@ static void blake2b_compress(struct blake2b_state *S,ROUND (9 );ROUND (10 );ROUND (11 ); - +#ifdef CONFIG_CC_IS_CLANG +#pragma nounroll/* https://bugs.llvm.org/show_bug.cgi?id=45803 */ +#endif for (i =0 ; i <8 ; ++i)S ->h[i] =S ->h[i] ^ v[i] ^ v[i +8 ]; }
drivers/acpi/acpica/dsfield.c +12 -5
@@ -514,13 +514,20 @@ acpi_ds_create_field(union acpi_parse_object *op, info.region_node = region_node; status =acpi_ds_get_field_names (&info, walk_state, arg->common.next); +if (ACPI_FAILURE (status)) { +return_ACPI_STATUS (status); + } +if (info.region_node->object->region.space_id == -ACPI_ADR_SPACE_PLATFORM_COMM - && !(region_node->object->field.internal_pcc_buffer = -ACPI_ALLOCATE_ZEROED (info.region_node->object->region. - length))) { -return_ACPI_STATUS (AE_NO_MEMORY ); +ACPI_ADR_SPACE_PLATFORM_COMM ) { + region_node->object->field.internal_pcc_buffer = +ACPI_ALLOCATE_ZEROED (info.region_node->object->region. + length); +if (!region_node->object->field.internal_pcc_buffer) { +return_ACPI_STATUS (AE_NO_MEMORY ); + } } +return_ACPI_STATUS (status); }
drivers/acpi/arm64/iort.c +5 -0
@@ -414,6 +414,7 @@ static struct acpi_iort_node *iort_node_get_id(struct acpi_iort_node *node,static int iort_get_id_mapping_index (struct acpi_iort_node *node) {struct acpi_iort_smmu_v3 *smmu; +struct acpi_iort_pmcg *pmcg;switch (node->type) {case ACPI_IORT_NODE_SMMU_V3 :
@@ -441,6 +442,10 @@ static int iort_get_id_mapping_index(struct acpi_iort_node *node)return smmu->id_mapping_index;case ACPI_IORT_NODE_PMCG : + pmcg = (struct acpi_iort_pmcg *)node->node_data; +if (pmcg->overflow_gsiv || node->mapping_count ==0 ) +return -EINVAL ; +return 0 ;default :return -EINVAL ;
drivers/acpi/evged.c +1 -1
@@ -94,7 +94,7 @@ static acpi_status acpi_ged_request_interrupt(struct acpi_resource *ares, trigger = p->triggering; }else { gsi = pext->interrupts[0 ]; - trigger = p->triggering; + trigger = pext->triggering; } irq = r.start;
drivers/acpi/video_detect.c +10 -0
@@ -361,6 +361,16 @@ static const struct dmi_system_id video_detect_dmi_table[] = { DMI_MATCH(DMI_BOARD_NAME, "JV50"), }, }, + { + /* https://bugzilla.kernel.org/show_bug.cgi?id=207835 */ + .callback = video_detect_force_native, + .ident = "Acer TravelMate 5735Z", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Acer"), + DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate 5735Z"), + DMI_MATCH(DMI_BOARD_NAME, "BA51_MV"), + }, + },/* * Desktops which falsely report a backlight and which our heuristics
drivers/base/swnode.c +21 -6
@@ -712,17 +712,18 @@ EXPORT_SYMBOL_GPL(software_node_register_nodes);* @nodes: Zero terminated array of software nodes to be unregistered * * Unregister multiple software nodes at once. +* +* NOTE: Be careful using this call if the nodes had parent pointers set up in +* them before registering. If so, it is wiser to remove the nodes +* individually, in the correct order (child before parent) instead of relying +* on the sequential order of the list of nodes in the array. */ void software_node_unregister_nodes (const struct software_node *nodes) { -struct swnode *swnode;int i; -for (i =0 ; nodes[i].name; i++) { - swnode =software_node_to_swnode (&nodes[i]); -if (swnode) -fwnode_remove_software_node (&swnode->fwnode); - } +for (i =0 ; nodes[i].name; i++) +software_node_unregister (&nodes[i]); }EXPORT_SYMBOL_GPL (software_node_unregister_nodes);
@@ -741,6 +742,20 @@ int software_node_register(const struct software_node *node) }EXPORT_SYMBOL_GPL (software_node_register); +/** +* software_node_unregister - Unregister static software node +* @node: The software node to be unregistered +*/ +void software_node_unregister (const struct software_node *node) +{ +struct swnode *swnode; + + swnode =software_node_to_swnode (node); +if (swnode) +fwnode_remove_software_node (&swnode->fwnode); +} +EXPORT_SYMBOL_GPL (software_node_unregister); +struct fwnode_handle *fwnode_create_software_node (const struct property_entry *properties,const struct fwnode_handle *parent)
drivers/bluetooth/btbcm.c +2 -0
@@ -380,6 +380,7 @@ static const struct bcm_subver_table bcm_uart_subver_table[] = { { 0x410e, "BCM43341B0" }, /* 002.001.014 */ { 0x4204, "BCM2076B1" }, /* 002.002.004 */ { 0x4406, "BCM4324B3" }, /* 002.004.006 */ + { 0x4606, "BCM4324B5" }, /* 002.006.006 */ { 0x6109, "BCM4335C0" }, /* 003.001.009 */ { 0x610c, "BCM4354" }, /* 003.001.012 */ { 0x2122, "BCM4343A0" }, /* 001.001.034 */
@@ -395,6 +396,7 @@ static const struct bcm_subver_table bcm_uart_subver_table[] = { };static const struct bcm_subver_table bcm_usb_subver_table[] = { + {0x2105 ,"BCM20703A1" },/* 001.001.005 */ {0x210b ,"BCM43142A0" },/* 001.001.011 */ {0x2112 ,"BCM4314A0" },/* 001.001.018 */ {0x2118 ,"BCM20702A0" },/* 001.001.024 */
drivers/bluetooth/btmtkuart.c +8 -6
@@ -1015,7 +1015,7 @@ static int btmtkuart_probe(struct serdev_device *serdev)if (btmtkuart_is_standalone (bdev)) { err =clk_prepare_enable (bdev->osc);if (err <0 ) -return err; + goto err_hci_free_dev;if (bdev->boot) {gpiod_set_value_cansleep (bdev->boot,1 );
@@ -1028,10 +1028,8 @@ static int btmtkuart_probe(struct serdev_device *serdev)/* Power on */ err =regulator_enable (bdev->vcc); -if (err <0 ) { -clk_disable_unprepare (bdev->osc); -return err; - } +if (err <0 ) + goto err_clk_disable_unprepare;/* Reset if the reset-gpios is available otherwise the board * -level design should be guaranteed.
@@ -1063,7 +1061,6 @@ static int btmtkuart_probe(struct serdev_device *serdev) err =hci_register_dev (hdev);if (err <0 ) {dev_err (&serdev->dev,"Can't register HCI device\n" ); -hci_free_dev (hdev); goto err_regulator_disable; }
@@ -1072,6 +1069,11 @@ static int btmtkuart_probe(struct serdev_device *serdev) err_regulator_disable:if (btmtkuart_is_standalone (bdev))regulator_disable (bdev->vcc); +err_clk_disable_unprepare: +if (btmtkuart_is_standalone (bdev)) +clk_disable_unprepare (bdev->osc); +err_hci_free_dev: +hci_free_dev (hdev);return err; }
drivers/bluetooth/btusb.c +1 -0
@@ -58,6 +58,7 @@ static struct usb_driver btusb_driver;#define BTUSB_CW6622 0x100000#define BTUSB_MEDIATEK 0x200000#define BTUSB_WIDEBAND_SPEECH 0x400000 +#define BTUSB_VALID_LE_STATES 0x800000static const struct usb_device_id btusb_table[] = {/* Generic Bluetooth USB device */
drivers/bluetooth/hci_bcm.c +6 -2
@@ -118,6 +118,7 @@ struct bcm_device {u32 oper_speed;int irq;bool irq_active_low; +bool irq_acquired;#ifdef CONFIG_PM struct hci_uart *hu;
@@ -333,6 +334,8 @@ static int bcm_request_irq(struct bcm_data *bcm) goto unlock; } + bdev->irq_acquired = true; +device_init_wakeup (bdev->dev, true); pm_runtime_set_autosuspend_delay(bdev->dev,
@@ -514,7 +517,7 @@ static int bcm_close(struct hci_uart *hu) }if (bdev) { -if (IS_ENABLED (CONFIG_PM ) && bdev->irq >0 ) { +if (IS_ENABLED (CONFIG_PM ) && bdev->irq_acquired) {devm_free_irq (bdev->dev, bdev->irq, bdev);device_init_wakeup (bdev->dev, false);pm_runtime_disable (bdev->dev);
@@ -1153,7 +1156,8 @@ static int bcm_of_probe(struct bcm_device *bdev)device_property_read_u8_array (bdev->dev,"brcm,bt-pcm-int-params" , bdev->pcm_int_params,5 ); bdev->irq =of_irq_get_byname (bdev->dev->of_node,"host-wakeup" ); - + bdev->irq_active_low =irq_get_trigger_type (bdev->irq) + & (IRQ_TYPE_EDGE_FALLING |IRQ_TYPE_LEVEL_LOW );return 0 ; }
drivers/bluetooth/hci_qca.c +6 -4
@@ -1953,8 +1953,9 @@ static void qca_serdev_remove(struct serdev_device *serdev)static int __maybe_unused qca_suspend (struct device *dev) { - struct hci_dev *hdev = container_of(dev, struct hci_dev, dev); -struct hci_uart *hu =hci_get_drvdata (hdev); +struct serdev_device *serdev =to_serdev_device (dev); +struct qca_serdev *qcadev =serdev_device_get_drvdata (serdev); +struct hci_uart *hu = &qcadev->serdev_hu;struct qca_data *qca = hu->priv;unsigned long flags;int ret =0 ;
@@ -2033,8 +2034,9 @@ static int __maybe_unused qca_suspend(struct device *dev)static int __maybe_unused qca_resume (struct device *dev) { - struct hci_dev *hdev = container_of(dev, struct hci_dev, dev); -struct hci_uart *hu =hci_get_drvdata (hdev); +struct serdev_device *serdev =to_serdev_device (dev); +struct qca_serdev *qcadev =serdev_device_get_drvdata (serdev); +struct hci_uart *hu = &qcadev->serdev_hu;struct qca_data *qca = hu->priv;clear_bit (QCA_SUSPENDING , &qca->flags);
drivers/clk/mediatek/clk-mux.c +1 -1
@@ -160,7 +160,7 @@ struct clk *mtk_clk_register_mux(const struct mtk_mux *mux, spinlock_t *lock) {struct mtk_clk_mux *clk_mux; -struct clk_init_data init; +struct clk_init_data init = {};struct clk *clk; clk_mux =kzalloc (sizeof (*clk_mux),GFP_KERNEL );
drivers/clocksource/Kconfig +1 -0
@@ -709,6 +709,7 @@ config MICROCHIP_PIT64B bool "Microchip PIT64B support" depends on OF || COMPILE_TEST select CLKSRC_MMIO + select TIMER_OF help This option enables Microchip PIT64B timer for Atmel based system. It supports the oneshot, the periodic
drivers/clocksource/dw_apb_timer.c +3 -2
@@ -222,7 +222,8 @@ static int apbt_next_event(unsigned long delta,/** * dw_apb_clockevent_init() - use an APB timer as a clock_event_device * -* @cpu: The CPU the events will be targeted at. +* @cpu: The CPU the events will be targeted at or -1 if CPU affiliation +* isn't required. * @name: The name used for the timer and the IRQ for it. * @rating: The rating to give the timer. * @base: I/O base for the timer registers.
@@ -257,7 +258,7 @@ dw_apb_clockevent_init(int cpu, const char *name, unsigned rating, dw_ced->ced.max_delta_ticks =0x7fffffff ; dw_ced->ced.min_delta_ns =clockevent_delta2ns (5000 , &dw_ced->ced); dw_ced->ced.min_delta_ticks =5000 ; - dw_ced->ced.cpumask =cpumask_of (cpu); + dw_ced->ced.cpumask = cpu <0 ? cpu_possible_mask :cpumask_of (cpu); dw_ced->ced.features =CLOCK_EVT_FEAT_PERIODIC |CLOCK_EVT_FEAT_ONESHOT |CLOCK_EVT_FEAT_DYNIRQ ; dw_ced->ced.set_state_shutdown = apbt_shutdown;
drivers/clocksource/dw_apb_timer_of.c +2 -4
@@ -147,10 +147,6 @@ static int num_called;static int __init dw_apb_timer_init (struct device_node *timer) {switch (num_called) { -case 0 : -pr_debug ("%s: found clockevent timer\n" , __func__); -add_clockevent (timer); -break ;case 1 :pr_debug ("%s: found clocksource timer\n" , __func__);add_clocksource (timer);
@@ -161,6 +157,8 @@ static int __init dw_apb_timer_init(struct device_node *timer)#endif break ;default : +pr_debug ("%s: found clockevent timer\n" , __func__); +add_clockevent (timer);break ; }
drivers/clocksource/timer-versatile.c +3 -0
@@ -6,6 +6,7 @@#include <linux/clocksource.h> #include <linux/io.h> +#include <linux/of.h> #include <linux/of_address.h> #include <linux/sched_clock.h>
@@ -22,6 +23,8 @@ static int __init versatile_sched_clock_init(struct device_node *node) {void __iomem *base =of_iomap (node,0 ); +of_node_clear_flag (node,OF_POPULATED ); +if (!base)return -ENXIO ;
drivers/cpufreq/qcom-cpufreq-nvmem.c +1 -1
@@ -277,7 +277,7 @@ static int qcom_cpufreq_probe(struct platform_device *pdev)if (!np)return -ENOENT ; - ret =of_device_is_compatible (np,"operating-points-v2-qcom-cpu" ); + ret =of_device_is_compatible (np,"operating-points-v2-kryo-cpu" );if (!ret) {of_node_put (np);return -ENOENT ;
drivers/cpuidle/cpuidle-psci.c +7 -1
@@ -58,6 +58,10 @@ static int psci_enter_domain_idle_state(struct cpuidle_device *dev,u32 state;int ret; + ret =cpu_pm_enter (); +if (ret) +return -1 ; +/* Do runtime PM to manage a hierarchical CPU toplogy. */ pm_runtime_put_sync_suspend (pd_dev);
@@ -65,10 +69,12 @@ static int psci_enter_domain_idle_state(struct cpuidle_device *dev,if (!state) state = states[idx]; - ret =psci_enter_state (idx, state); + ret =psci_cpu_suspend_enter (state) ?-1 : idx;pm_runtime_get_sync (pd_dev); +cpu_pm_exit (); +/* Clear the domain state to start fresh when back from idle. */ psci_set_domain_state (0 );return ret;
drivers/cpuidle/sysfs.c +3 -3
@@ -515,7 +515,7 @@ static int cpuidle_add_state_sysfs(struct cpuidle_device *device) ret =kobject_init_and_add (&kobj->kobj, &ktype_state_cpuidle, &kdev->kobj,"state%d" , i);if (ret) { -kfree (kobj); +kobject_put (&kobj->kobj); goto error_state; }cpuidle_add_s2idle_attr_group (kobj);
@@ -646,7 +646,7 @@ static int cpuidle_add_driver_sysfs(struct cpuidle_device *dev) ret =kobject_init_and_add (&kdrv->kobj, &ktype_driver_cpuidle, &kdev->kobj,"driver" );if (ret) { -kfree (kdrv); +kobject_put (&kdrv->kobj);return ret; }
@@ -740,7 +740,7 @@ int cpuidle_add_sysfs(struct cpuidle_device *dev) error =kobject_init_and_add (&kdev->kobj, &ktype_cpuidle, &cpu_dev->kobj,"cpuidle" );if (error) { -kfree (kdev); +kobject_put (&kdev->kobj);return error; }
drivers/crypto/ccp/Kconfig +1 -2
@@ -10,10 +10,9 @@ config CRYPTO_DEV_CCP_DD config CRYPTO_DEV_SP_CCP bool "Cryptographic Coprocessor device" default y - depends on CRYPTO_DEV_CCP_DD + depends on CRYPTO_DEV_CCP_DD && DMADEVICES select HW_RANDOM select DMA_ENGINE - select DMADEVICES select CRYPTO_SHA1 select CRYPTO_SHA256 help
drivers/crypto/chelsio/chcr_algo.c +30 -15
124 lines not on this page · raw message
drivers/crypto/chelsio/chcr_crypto.h +1 -0
@@ -302,6 +302,7 @@ struct chcr_skcipher_req_ctx {unsigned int op;u16 imm;u8 iv[CHCR_MAX_CRYPTO_IV_LEN ]; +u8 init_iv[CHCR_MAX_CRYPTO_IV_LEN ];u16 txqidx;u16 rxqidx; };
drivers/crypto/stm32/stm32-crc32.c +83 -61
230 lines not on this page · raw message
drivers/edac/amd64_edac.c +14 -0
@@ -2319,6 +2319,16 @@ static struct amd64_family_type family_types[] = { .dbam_to_cs = f17_addr_mask_to_cs_size, } }, + [F17_M60H_CPUS] = { + .ctl_name = "F17h_M60h", + .f0_id = PCI_DEVICE_ID_AMD_17H_M60H_DF_F0, + .f6_id = PCI_DEVICE_ID_AMD_17H_M60H_DF_F6, + .max_mcs = 2, + .ops = { + .early_channel_count = f17_early_channel_count, + .dbam_to_cs = f17_addr_mask_to_cs_size, + } + }, [F17_M70H_CPUS] = { .ctl_name = "F17h_M70h", .f0_id = PCI_DEVICE_ID_AMD_17H_M70H_DF_F0,
@@ -3357,6 +3367,10 @@ static struct amd64_family_type *per_family_init(struct amd64_pvt *pvt) fam_type = &family_types[F17_M30H_CPUS ]; pvt->ops = &family_types[F17_M30H_CPUS ].ops;break ; + }else if (pvt->model >=0x60 && pvt->model <=0x6f ) { + fam_type = &family_types[F17_M60H_CPUS ]; + pvt->ops = &family_types[F17_M60H_CPUS ].ops; +break ; }else if (pvt->model >=0x70 && pvt->model <=0x7f ) { fam_type = &family_types[F17_M70H_CPUS ]; pvt->ops = &family_types[F17_M70H_CPUS ].ops;
drivers/edac/amd64_edac.h +3 -0
@@ -120,6 +120,8 @@#define PCI_DEVICE_ID_AMD_17H_M10H_DF_F6 0x15ee#define PCI_DEVICE_ID_AMD_17H_M30H_DF_F0 0x1490#define PCI_DEVICE_ID_AMD_17H_M30H_DF_F6 0x1496 +#define PCI_DEVICE_ID_AMD_17H_M60H_DF_F0 0x1448 +#define PCI_DEVICE_ID_AMD_17H_M60H_DF_F6 0x144e#define PCI_DEVICE_ID_AMD_17H_M70H_DF_F0 0x1440#define PCI_DEVICE_ID_AMD_17H_M70H_DF_F6 0x1446#define PCI_DEVICE_ID_AMD_19H_DF_F0 0x1650
@@ -293,6 +295,7 @@ enum amd_families {F17_CPUS ,F17_M10H_CPUS ,F17_M30H_CPUS , +F17_M60H_CPUS ,F17_M70H_CPUS ,F19_CPUS , NUM_FAMILIES,
drivers/firmware/efi/libstub/Makefile +1 -0
@@ -30,6 +30,7 @@ KBUILD_CFLAGS := $(cflags-y) -DDISABLE_BRANCH_PROFILING \ -D__NO_FORTIFY \ $(call cc-option,-ffreestanding) \ $(call cc-option,-fno-stack-protector) \ + $(call cc-option,-fno-addrsig) \ -D__DISABLE_EXPORTS GCOV_PROFILE := n
drivers/firmware/efi/libstub/randomalloc.c +3 -1
@@ -74,6 +74,8 @@ efi_status_t efi_random_alloc(unsigned long size,if (align <EFI_ALLOC_ALIGN ) align =EFI_ALLOC_ALIGN ; + size =round_up (size,EFI_ALLOC_ALIGN ); +/* count the suitable slots in each memory map entry */ for (map_offset =0 ; map_offset < map_size; map_offset += desc_size) {efi_memory_desc_t *md = (void *)memory_map + map_offset;
@@ -109,7 +111,7 @@ efi_status_t efi_random_alloc(unsigned long size, } target =round_up (md->phys_addr, align) + target_slot * align; - pages =round_up (size,EFI_PAGE_SIZE ) /EFI_PAGE_SIZE ; + pages = size /EFI_PAGE_SIZE ; status =efi_bs_call (allocate_pages,EFI_ALLOCATE_ADDRESS ,EFI_LOADER_DATA , pages, &target);
drivers/gnss/sirf.c +6 -2
@@ -439,14 +439,18 @@ static int sirf_probe(struct serdev_device *serdev) data->on_off =devm_gpiod_get_optional (dev,"sirf,onoff" ,GPIOD_OUT_LOW ); -if (IS_ERR (data->on_off)) +if (IS_ERR (data->on_off)) { + ret =PTR_ERR (data->on_off); goto err_put_device; + }if (data->on_off) { data->wakeup =devm_gpiod_get_optional (dev,"sirf,wakeup" ,GPIOD_IN ); -if (IS_ERR (data->wakeup)) +if (IS_ERR (data->wakeup)) { + ret =PTR_ERR (data->wakeup); goto err_put_device; + } ret =regulator_enable (data->vcc);if (ret)
drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c +25 -18
24 lines not on this page · raw message
drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c +13 -1
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/display/dc/clk_mgr/dcn10/rv1_clk_mgr_vbios_smu.c +0 -3
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/display/dc/core/dc_link_hwss.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/display/dc/dcn10/dcn10_optc.c +4 -2
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c +4 -1
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c +7 -2
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/display/dc/dcn21/dcn21_resource.c +1 -5
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/amd/display/dc/inc/hw/dchubbub.h +2 -0
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/bridge/adv7511/adv7511_audio.c +7 -5
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c +5 -4
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c +2 -2
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/gpu/drm/rcar-du/rcar_du_plane.c +9 -7
Lines of this file are not shown. View the raw message.
drivers/media/dvb-frontends/m88ds3103.c +2 -0
Lines of this file are not shown. View the raw message.
drivers/media/platform/qcom/venus/core.c +8 -4
Lines of this file are not shown. View the raw message.
drivers/media/platform/sunxi/sun8i-di/sun8i-di.c +3 -3
Lines of this file are not shown. View the raw message.
drivers/media/platform/vicodec/vicodec-core.c +9 -6
Lines of this file are not shown. View the raw message.
drivers/memory/samsung/exynos5422-dmc.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/mtd/nand/raw/brcmnand/brcmnand.c +7 -4
Lines of this file are not shown. View the raw message.
drivers/mtd/nand/raw/ingenic/ingenic_nand_drv.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/dsa/sja1105/sja1105_ethtool.c +74 -70
144 lines not on this page · raw message
drivers/net/ethernet/allwinner/sun4i-emac.c +2 -2
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/amazon/ena/ena_com.c +4 -2
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/aquantia/atlantic/aq_nic.c +6 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/broadcom/genet/bcmgenet.c +4 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/broadcom/genet/bcmgenet.h +2 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/broadcom/genet/bcmgenet_wol.c +18 -21
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c +2 -2
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/e1000/e1000_main.c +3 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/e1000e/e1000.h +0 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/e1000e/netdev.c +9 -7
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/ice/ice_common.c +7 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/ice/ice_controlq.c +28 -21
49 lines not on this page · raw message
drivers/net/ethernet/intel/ice/ice_ethtool.c +0 -4
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/ice/ice_flex_pipe.c +6 -2
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/ice/ice_main.c +6 -2
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c +57 -8
65 lines not on this page · raw message
drivers/net/ethernet/intel/ice/ice_virtchnl_pf.h +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/igb/igb_ethtool.c +2 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/igc/igc_main.c +2 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/ixgbe/ixgbe_common.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c +2 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c +6 -2
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/mellanox/mlx4/crdump.c +1 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/mellanox/mlx5/core/en_rx.c +12 -3
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/mscc/ocelot_ace.c +102 -1
103 lines not on this page · raw message
drivers/net/ethernet/mscc/ocelot_flower.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/qlogic/qede/qede.h +2 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/qlogic/qede/qede_main.c +9 -2
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c +16 -4
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/stmicro/stmmac/stmmac_pci.c +0 -5
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/ti/k3-cppi-desc-pool.c +2 -2
Lines of this file are not shown. View the raw message.
drivers/net/wireless/ath/ath10k/htt_tx.c +7 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/ath/ath10k/wmi-ops.h +10 -0
Lines of this file are not shown. View the raw message.
drivers/net/wireless/ath/ath10k/wmi-tlv.c +15 -0
Lines of this file are not shown. View the raw message.
drivers/net/wireless/ath/ath11k/dp_rx.c +19 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/ath/ath11k/thermal.c +4 -2
Lines of this file are not shown. View the raw message.
drivers/net/wireless/ath/carl9170/main.c +4 -17
Lines of this file are not shown. View the raw message.
drivers/net/wireless/ath/wcn36xx/main.c +4 -2
Lines of this file are not shown. View the raw message.
drivers/net/wireless/broadcom/b43/main.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/broadcom/b43legacy/main.c +1 -0
Lines of this file are not shown. View the raw message.
drivers/net/wireless/broadcom/b43legacy/xmit.c +1 -0
Lines of this file are not shown. View the raw message.
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c +6 -6
Lines of this file are not shown. View the raw message.
drivers/net/wireless/broadcom/brcm80211/brcmfmac/feature.c +2 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c +7 -4
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c +2 -3
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/iwlwifi/mvm/rs-fw.c +8 -7
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/iwlwifi/mvm/sta.c +13 -5
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/iwlwifi/mvm/sta.h +3 -3
Lines of this file are not shown. View the raw message.
drivers/net/wireless/marvell/libertas_tf/if_usb.c +3 -3
Lines of this file are not shown. View the raw message.
drivers/net/wireless/marvell/mwifiex/cfg80211.c +6 -8
Lines of this file are not shown. View the raw message.
drivers/net/wireless/mediatek/mt76/agg-rx.c +4 -4
Lines of this file are not shown. View the raw message.
drivers/net/wireless/mediatek/mt76/mt76.h +3 -3
Lines of this file are not shown. View the raw message.
drivers/net/wireless/mediatek/mt76/mt7615/mac.c +24 -10
Lines of this file are not shown. View the raw message.
drivers/net/wireless/mediatek/mt76/mt7615/mac.h +3 -0
Lines of this file are not shown. View the raw message.
drivers/net/wireless/mediatek/mt76/mt7615/main.c +20 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/mediatek/mt76/mt7615/mcu.c +11 -5
Lines of this file are not shown. View the raw message.
drivers/net/wireless/mediatek/mt76/mt7615/regs.h +2 -0
Lines of this file are not shown. View the raw message.
drivers/net/wireless/realtek/rtlwifi/usb.c +2 -6
Lines of this file are not shown. View the raw message.
drivers/net/wireless/realtek/rtw88/pci.c +1 -0
Lines of this file are not shown. View the raw message.
drivers/nvme/host/pci.c +51 -28
79 lines not on this page · raw message
drivers/pci/quirks.c +44 -4
48 lines not on this page · raw message
drivers/perf/hisilicon/hisi_uncore_hha_pmu.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/pinctrl/samsung/pinctrl-exynos.c +58 -24
82 lines not on this page · raw message
drivers/platform/x86/intel-vbtn.c +55 -20
75 lines not on this page · raw message
drivers/power/reset/vexpress-poweroff.c +1 -0
Lines of this file are not shown. View the raw message.
drivers/power/supply/power_supply_hwmon.c +2 -2
Lines of this file are not shown. View the raw message.
drivers/regulator/qcom-rpmh-regulator.c +4 -4
Lines of this file are not shown. View the raw message.
drivers/staging/media/imx/imx-media-utils.c +68 -133
201 lines not on this page · raw message
drivers/staging/media/imx/imx7-mipi-csis.c +37 -45
82 lines not on this page · raw message
drivers/staging/media/ipu3/ipu3-v4l2.c +10 -0
Lines of this file are not shown. View the raw message.
drivers/staging/media/sunxi/cedrus/cedrus_dec.c +2 -0
Lines of this file are not shown. View the raw message.
drivers/staging/media/sunxi/cedrus/cedrus_video.c +0 -3
Lines of this file are not shown. View the raw message.
drivers/tty/serial/kgdboc.c +101 -25
126 lines not on this page · raw message
drivers/w1/masters/omap_hdq.c +48 -26
74 lines not on this page · raw message
fs/btrfs/inode.c +71 -10
81 lines not on this page · raw message
fs/btrfs/send.c +67 -0
67 lines not on this page · raw message
fs/btrfs/space-info.c +42 -1
43 lines not on this page · raw message
fs/btrfs/transaction.c +23 -37
60 lines not on this page · raw message
fs/io_uring.c +162 -88
250 lines not on this page · raw message
include/linux/string.h +48 -12
60 lines not on this page · raw message
kernel/audit.c +30 -22
52 lines not on this page · raw message
net/core/skmsg.c +74 -24
98 lines not on this page · raw message
security/integrity/ima/ima_crypto.c +44 -9
53 lines not on this page · raw message
security/integrity/ima/ima_template_lib.c +18 -0
Lines of this file are not shown. View the raw message.
tools/cgroup/iocost_monitor.py +21 -21
42 lines not on this page · raw message
tools/lib/bpf/libbpf.c +129 -107
236 lines not on this page · raw message
tools/perf/util/probe-event.c +28 -18
46 lines not on this page · raw message
tools/power/x86/intel-speed-select/isst-config.c +1 -0
Lines of this file are not shown. View the raw message.
tools/testing/selftests/bpf/prog_tests/core_reloc.c +1 -1
Lines of this file are not shown. View the raw message.
tools/testing/selftests/bpf/prog_tests/flow_dissector.c +1 -0
Lines of this file are not shown. View the raw message.
tools/testing/selftests/bpf/prog_tests/ns_current_pid_tgid.c +1 -4
Lines of this file are not shown. View the raw message.
tools/testing/selftests/bpf/test_align.c +21 -20
41 lines not on this page · raw message
tools/testing/selftests/bpf/test_progs.c +17 -4
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.