Linux 4.19.291
Greg Kroah-Hartman
maintainerI'm announcing the release of the 4.19.291 kernel.
All users of the 4.19 kernel series must upgrade.
The updated 4.19.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-4.19.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/admin-guide/security-bugs.rst | 39 MAINTAINERS | 10 Makefile | 2 arch/arc/include/asm/entry-arcv2.h | 362 +++--- arch/arc/include/asm/linkage.h | 22 arch/arc/kernel/asm-offsets.c | 7 arch/arc/kernel/entry-arcv2.S | 4 arch/arc/mm/tlbex.S | 11 arch/arm/boot/dts/bcm5301x.dtsi | 1 arch/arm/boot/dts/imx6qdl.dtsi | 4 arch/arm/boot/dts/imx6sl.dtsi | 3 arch/arm/boot/dts/imx6sll.dtsi | 32 arch/arm/boot/dts/imx6sx.dtsi | 3 arch/arm/boot/dts/imx6ul.dtsi | 2 arch/arm/boot/dts/imx7d.dtsi | 6 arch/arm/boot/dts/imx7s.dtsi | 2 arch/arm/mach-ep93xx/timer-ep93xx.c | 3 arch/arm/mach-orion5x/board-dt.c | 3 arch/arm/mach-orion5x/common.h | 6 arch/arm/mach-sa1100/assabet.c | 2 arch/arm/probes/kprobes/checkers-common.c | 2 arch/arm/probes/kprobes/core.c | 2 arch/arm/probes/kprobes/opt-arm.c | 2 arch/arm/probes/kprobes/test-core.c | 2 arch/arm/probes/kprobes/test-core.h | 4 arch/arm64/boot/dts/altera/socfpga_stratix10_socdk.dts | 2 arch/arm64/boot/dts/renesas/ulcb-kf.dtsi | 3 arch/ia64/kernel/process.c | 2 arch/ia64/mm/discontig.c | 2 arch/ia64/mm/tlb.c | 2 arch/powerpc/Kconfig.debug | 2 arch/powerpc/include/asm/word-at-a-time.h | 2 arch/powerpc/mm/init_64.c | 3 arch/powerpc/platforms/52xx/mpc52xx_pic.c | 2 arch/s390/kernel/smp.c | 2 arch/s390/kernel/sthyi.c | 6 arch/s390/kvm/intercept.c | 9 arch/s390/kvm/kvm-s390.c | 4 arch/sh/drivers/dma/dma-sh.c | 37 arch/sh/kernel/cpu/sh2/probe.c | 2 arch/x86/kernel/quirks.c | 10 arch/x86/kernel/smpboot.c | 24 arch/xtensa/platforms/iss/network.c | 2 drivers/acpi/acpi_pad.c | 2 drivers/ata/libata-scsi.c | 2 drivers/ata/pata_ns87415.c | 2 drivers/atm/zatm.c | 2 drivers/base/arch_topology.c | 2 drivers/base/cacheinfo.c | 18 drivers/base/core.c | 8 drivers/base/cpu.c | 34 drivers/base/firmware_loader/fallback.c | 2 drivers/base/memory.c | 24 drivers/base/node.c | 34 drivers/base/platform.c | 2 drivers/base/power/domain.c | 6 drivers/base/power/power.h | 8 drivers/base/power/runtime.c | 6 drivers/base/power/sysfs.c | 50 drivers/base/power/wakeirq.c | 111 + drivers/base/soc.c | 8 drivers/block/drbd/drbd_nl.c | 6 drivers/block/loop.c | 3 drivers/block/nbd.c | 3 drivers/char/hw_random/imx-rngc.c | 6 drivers/char/hw_random/virtio-rng.c | 88 + drivers/char/tpm/tpm_tis_core.c | 10 drivers/char/tpm/tpm_vtpm_proxy.c | 30 drivers/clk/clk-gate.c | 2 drivers/clocksource/Makefile | 26 drivers/clocksource/cadence_ttc_timer.c | 543 --------- drivers/clocksource/fsl_ftm_timer.c | 376 ------ drivers/clocksource/owl-timer.c | 173 --- drivers/clocksource/qcom-timer.c | 258 ---- drivers/clocksource/time-armada-370-xp.c | 416 ------- drivers/clocksource/time-efm32.c | 287 ----- drivers/clocksource/time-lpc32xx.c | 314 ----- drivers/clocksource/time-orion.c | 192 --- drivers/clocksource/time-pistachio.c | 218 --- drivers/clocksource/timer-armada-370-xp.c | 416 +++++++ drivers/clocksource/timer-cadence-ttc.c | 560 ++++++++++ drivers/clocksource/timer-efm32.c | 287 +++++ drivers/clocksource/timer-fsl-ftm.c | 376 ++++++ drivers/clocksource/timer-lpc32xx.c | 314 +++++ drivers/clocksource/timer-orion.c | 192 +++ drivers/clocksource/timer-owl.c | 173 +++ drivers/clocksource/timer-pistachio.c | 218 +++ drivers/clocksource/timer-qcom.c | 258 ++++ drivers/clocksource/timer-versatile.c | 44 drivers/clocksource/timer-vf-pit.c | 204 +++ drivers/clocksource/timer-vt8500.c | 168 +++ drivers/clocksource/timer-zevio.c | 218 +++ drivers/clocksource/versatile.c | 44 drivers/clocksource/vf_pit_timer.c | 204 --- drivers/clocksource/vt8500_timer.c | 168 --- drivers/clocksource/zevio-timer.c | 218 --- drivers/crypto/nx/Makefile | 2 drivers/crypto/nx/nx.h | 4 drivers/extcon/extcon.c | 8 drivers/firewire/ohci.c | 14 drivers/gpio/gpio-tps68470.c | 6 drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 4 drivers/gpu/drm/bridge/sil-sii8620.c | 2 drivers/gpu/drm/drm_atomic.c | 11 drivers/gpu/drm/drm_edid.c | 4 drivers/gpu/drm/drm_fb_helper.c | 5 drivers/gpu/drm/exynos/exynos_drm_dsi.c | 6 drivers/gpu/drm/msm/adreno/a5xx_gpu.c | 2 drivers/gpu/drm/panel/panel-simple.c | 4 drivers/gpu/drm/radeon/ci_dpm.c | 28 drivers/gpu/drm/radeon/cypress_dpm.c | 8 drivers/gpu/drm/radeon/ni_dpm.c | 8 drivers/gpu/drm/radeon/rv740_dpm.c | 8 drivers/hwmon/nct7802.c | 2 drivers/i2c/busses/i2c-rk3x.c | 2 drivers/i2c/busses/i2c-xiic.c | 39 drivers/ide/ide-acpi.c | 2 drivers/ide/ide-atapi.c | 2 drivers/ide/ide-io-std.c | 4 drivers/ide/ide-io.c | 8 drivers/ide/ide-sysfs.c | 2 drivers/ide/umc8672.c | 2 drivers/iio/adc/meson_saradc.c | 2 drivers/infiniband/core/uverbs_cmd.c | 4 drivers/infiniband/hw/cxgb4/cm.c | 2 drivers/infiniband/hw/cxgb4/cq.c | 2 drivers/infiniband/hw/hfi1/sdma.c | 4 drivers/infiniband/hw/hfi1/sdma.h | 15 drivers/infiniband/hw/mlx4/qp.c | 24 drivers/infiniband/hw/mlx5/cq.c | 2 drivers/infiniband/hw/mthca/mthca_qp.c | 10 drivers/input/misc/adxl34x.c | 3 drivers/input/misc/drv260x.c | 1 drivers/input/serio/serio_raw.c | 2 drivers/irqchip/irq-bcm6345-l1.c | 14 drivers/irqchip/irq-jcore-aic.c | 11 drivers/mailbox/ti-msgmgr.c | 12 drivers/md/bcache/alloc.c | 35 drivers/md/bcache/bcache.h | 4 drivers/md/bcache/btree.c | 16 drivers/md/bcache/super.c | 6 drivers/md/dm-cache-policy-smq.c | 28 drivers/md/dm-io.c | 2 drivers/md/dm-ioctl.c | 2 drivers/md/dm-raid.c | 9 drivers/md/dm-snap-persistent.c | 2 drivers/md/dm-table.c | 2 drivers/md/md-bitmap.c | 17 drivers/md/md.c | 23 drivers/md/raid0.c | 62 - drivers/md/raid0.h | 1 drivers/md/raid10.c | 24 drivers/md/raid5.c | 2 drivers/media/dvb-frontends/rtl2832.c | 2 drivers/media/tuners/qt1010.c | 4 drivers/media/usb/dvb-usb-v2/az6007.c | 3 drivers/media/usb/gspca/vicam.c | 2 drivers/media/usb/siano/smsusb.c | 3 drivers/media/usb/uvc/uvc_video.c | 8 drivers/memstick/host/jmb38x_ms.c | 2 drivers/memstick/host/r592.c | 4 drivers/memstick/host/tifm_ms.c | 2 drivers/mfd/intel-lpss-acpi.c | 3 drivers/mfd/rt5033.c | 3 drivers/mfd/stmpe.c | 4 drivers/misc/pci_endpoint_test.c | 10 drivers/mmc/core/quirks.h | 14 drivers/mmc/host/sdhci.c | 2 drivers/mtd/nand/raw/nand_ecc.c | 2 drivers/mtd/nand/raw/omap_elm.c | 24 drivers/mtd/nand/raw/s3c2410.c | 2 drivers/mtd/ubi/eba.c | 2 drivers/net/bonding/bond_main.c | 5 drivers/net/can/janz-ican3.c | 2 drivers/net/can/usb/gs_usb.c | 2 drivers/net/ethernet/atheros/atl1e/atl1e_main.c | 7 drivers/net/ethernet/broadcom/bnx2.c | 4 drivers/net/ethernet/broadcom/genet/bcmmii.c | 2 drivers/net/ethernet/broadcom/tg3.c | 1 drivers/net/ethernet/emulex/benet/be_main.c | 3 drivers/net/ethernet/intel/i40e/i40e_debugfs.c | 2 drivers/net/ethernet/intel/igb/igb_main.c | 5 drivers/net/ethernet/marvell/mvneta.c | 4 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_rxtx.c | 4 drivers/net/ethernet/mellanox/mlx5/core/pagealloc.c | 4 drivers/net/ethernet/microchip/lan743x_main.c | 21 drivers/net/ethernet/neterion/s2io.c | 2 drivers/net/ethernet/qlogic/qla3xxx.c | 2 drivers/net/ethernet/sun/cassini.c | 2 drivers/net/ethernet/sun/niu.c | 6 drivers/net/ethernet/ti/cpsw_ale.c | 24 drivers/net/gtp.c | 2 drivers/net/ipvlan/ipvlan_core.c | 9 drivers/net/team/team.c | 9 drivers/net/usb/cdc_ether.c | 21 drivers/net/usb/usbnet.c | 6 drivers/net/usb/zaurus.c | 21 drivers/net/virtio_net.c | 4 drivers/net/wan/z85230.c | 2 drivers/net/wireless/ath/ath10k/core.c | 2 drivers/net/wireless/ath/ath6kl/init.c | 2 drivers/net/wireless/ath/ath9k/ar9003_hw.c | 27 drivers/net/wireless/ath/ath9k/htc_hst.c | 8 drivers/net/wireless/ath/ath9k/init.c | 2 drivers/net/wireless/ath/ath9k/main.c | 11 drivers/net/wireless/ath/ath9k/wmi.c | 4 drivers/net/wireless/atmel/atmel_cs.c | 13 drivers/net/wireless/broadcom/b43/debugfs.c | 2 drivers/net/wireless/broadcom/b43/dma.c | 2 drivers/net/wireless/broadcom/b43/lo.c | 2 drivers/net/wireless/broadcom/b43/phy_n.c | 2 drivers/net/wireless/broadcom/b43/xmit.c | 12 drivers/net/wireless/broadcom/b43legacy/debugfs.c | 2 drivers/net/wireless/broadcom/b43legacy/main.c | 2 drivers/net/wireless/cisco/airo.c | 5 drivers/net/wireless/intel/iwlegacy/3945.c | 2 drivers/net/wireless/intel/iwlegacy/4965-mac.c | 2 drivers/net/wireless/intel/iwlwifi/mvm/sta.c | 2 drivers/net/wireless/intersil/orinoco/orinoco_cs.c | 13 drivers/net/wireless/intersil/orinoco/spectrum_cs.c | 13 drivers/net/wireless/marvell/mwifiex/scan.c | 6 drivers/net/wireless/ray_cs.c | 36 drivers/net/wireless/rsi/rsi_91x_sdio.c | 3 drivers/net/wireless/wl3501_cs.c | 51 drivers/ntb/hw/amd/ntb_hw_amd.c | 7 drivers/ntb/hw/idt/ntb_hw_idt.c | 7 drivers/ntb/hw/intel/ntb_hw_gen1.c | 7 drivers/ntb/ntb_transport.c | 2 drivers/ntb/test/ntb_tool.c | 2 drivers/pci/controller/dwc/pcie-qcom.c | 2 drivers/pci/controller/pcie-rockchip-ep.c | 64 - drivers/pci/controller/pcie-rockchip.c | 17 drivers/pci/controller/pcie-rockchip.h | 11 drivers/pci/pci.c | 10 drivers/pci/pcie/aspm.c | 57 - drivers/pci/quirks.c | 2 drivers/phy/hisilicon/phy-hisi-inno-usb2.c | 2 drivers/pinctrl/intel/pinctrl-cherryview.c | 15 drivers/pinctrl/pinctrl-amd.c | 41 drivers/pinctrl/pinctrl-amd.h | 1 drivers/pinctrl/pinctrl-at91-pio4.c | 2 drivers/platform/x86/hdaps.c | 4 drivers/platform/x86/msi-laptop.c | 8 drivers/rtc/rtc-st-lpc.c | 2 drivers/s390/block/dasd_ioctl.c | 1 drivers/s390/scsi/zfcp_fc.c | 6 drivers/scsi/3w-xxxx.c | 4 drivers/scsi/dc395x.c | 2 drivers/scsi/pm8001/pm8001_hwi.c | 2 drivers/scsi/pm8001/pm80xx_hwi.c | 2 drivers/scsi/qla2xxx/qla_attr.c | 13 drivers/scsi/qla2xxx/qla_bsg.c | 6 drivers/scsi/qla2xxx/qla_iocb.c | 3 drivers/scsi/qla2xxx/qla_os.c | 5 drivers/soc/fsl/qe/Kconfig | 1 drivers/spi/spi-bcm-qspi.c | 10 drivers/spi/spi-bcm63xx.c | 2 drivers/spi/spi-fsl-spi.c | 25 drivers/ssb/driver_chipcommon.c | 4 drivers/staging/ks7010/ks_wlan_net.c | 6 drivers/tty/cyclades.c | 2 drivers/tty/isicom.c | 2 drivers/tty/serial/8250/8250.h | 1 drivers/tty/serial/8250/8250_dwlib.c | 128 ++ drivers/tty/serial/8250/8250_dwlib.h | 19 drivers/tty/serial/8250/8250_pci.c | 19 drivers/tty/serial/8250/8250_port.c | 11 drivers/tty/serial/8250/Kconfig | 3 drivers/tty/serial/8250/Makefile | 1 drivers/tty/serial/atmel_serial.c | 4 drivers/tty/serial/samsung.c | 14 drivers/usb/core/quirks.c | 4 drivers/usb/dwc3/core.c | 20 drivers/usb/dwc3/core.h | 3 drivers/usb/dwc3/dwc3-pci.c | 6 drivers/usb/host/ohci-at91.c | 8 drivers/usb/host/xhci-mtk.c | 1 drivers/usb/musb/cppi_dma.c | 2 drivers/usb/phy/phy-tahvo.c | 2 drivers/usb/serial/option.c | 10 drivers/usb/serial/usb-serial-simple.c | 73 - drivers/usb/storage/sddr55.c | 4 drivers/vhost/net.c | 4 drivers/video/fbdev/au1200fb.c | 3 drivers/video/fbdev/imsttfb.c | 36 drivers/video/fbdev/imxfb.c | 4 drivers/video/fbdev/matrox/matroxfb_maven.c | 6 drivers/video/fbdev/omap/lcd_mipid.c | 6 drivers/video/fbdev/pm3fb.c | 6 drivers/video/fbdev/riva/riva_hw.c | 3 drivers/virtio/virtio_ring.c | 2 drivers/w1/w1.c | 4 fs/afs/dir.c | 2 fs/afs/security.c | 2 fs/btrfs/ctree.c | 2 fs/btrfs/qgroup.c | 2 fs/btrfs/transaction.c | 9 fs/ceph/caps.c | 9 fs/dlm/netlink.c | 2 fs/dlm/plock.c | 104 + fs/ext2/ext2.h | 12 fs/ext2/super.c | 23 fs/ext4/ext4.h | 2 fs/ext4/fsmap.c | 8 fs/ext4/indirect.c | 8 fs/ext4/inode.c | 10 fs/ext4/ioctl.c | 5 fs/ext4/mballoc.c | 4 fs/ext4/super.c | 25 fs/ext4/xattr.c | 14 fs/f2fs/node.c | 4 fs/fat/dir.c | 2 fs/fuse/control.c | 2 fs/fuse/cuse.c | 2 fs/fuse/dir.c | 2 fs/fuse/file.c | 2 fs/gfs2/aops.c | 2 fs/gfs2/bmap.c | 2 fs/gfs2/super.c | 8 fs/hfsplus/unicode.c | 2 fs/isofs/namei.c | 4 fs/jffs2/build.c | 5 fs/jffs2/erase.c | 2 fs/jffs2/xattr.c | 13 fs/jffs2/xattr.h | 4 fs/jfs/jfs_dmap.c | 6 fs/jfs/jfs_filsys.h | 2 fs/nfsd/nfs4xdr.c | 2 fs/nfsd/nfsctl.c | 2 fs/ocfs2/alloc.c | 4 fs/ocfs2/dir.c | 14 fs/ocfs2/extent_map.c | 4 fs/ocfs2/namei.c | 2 fs/ocfs2/refcounttree.c | 2 fs/ocfs2/xattr.c | 2 fs/omfs/file.c | 2 fs/overlayfs/copy_up.c | 2 fs/sysv/itree.c | 4 fs/ubifs/commit.c | 6 fs/ubifs/dir.c | 2 fs/ubifs/file.c | 4 fs/ubifs/journal.c | 2 fs/ubifs/lpt.c | 2 fs/ubifs/tnc.c | 6 fs/ubifs/tnc_misc.c | 4 fs/udf/balloc.c | 2 fs/xfs/xfs_bmap_util.c | 2 include/asm-generic/word-at-a-time.h | 2 include/linux/etherdevice.h | 12 include/linux/netdevice.h | 18 include/linux/netfilter/nfnetlink.h | 27 include/linux/nmi.h | 2 include/linux/pci.h | 1 include/linux/pm_wakeirq.h | 9 include/linux/sched/signal.h | 2 include/linux/serial_8250.h | 1 include/linux/tcp.h | 2 include/linux/workqueue.h | 15 include/net/addrconf.h | 16 include/net/ipv6.h | 8 include/net/netfilter/nf_tables.h | 14 include/net/netns/nftables.h | 5 include/net/nfc/nfc.h | 4 include/net/pkt_sched.h | 2 include/net/sock.h | 1 include/net/tcp.h | 7 include/uapi/linux/affs_hardblocks.h | 68 - include/uapi/linux/blkzoned.h | 10 include/uapi/linux/videodev2.h | 2 kernel/async.c | 4 kernel/audit.c | 2 kernel/bpf/bpf_lru_list.c | 21 kernel/bpf/bpf_lru_list.h | 7 kernel/dma/debug.c | 2 kernel/events/core.c | 10 kernel/events/uprobes.c | 2 kernel/exit.c | 2 kernel/futex.c | 12 kernel/kexec_core.c | 5 kernel/locking/lockdep.c | 6 kernel/sched/fair.c | 2 kernel/time/posix-timers.c | 31 kernel/trace/ftrace.c | 75 - kernel/trace/ring_buffer.c | 48 kernel/trace/trace.c | 21 kernel/trace/trace.h | 2 kernel/trace/trace_events.c | 14 kernel/trace/trace_events_hist.c | 9 kernel/watchdog_hld.c | 6 kernel/workqueue.c | 13 lib/debugobjects.c | 9 lib/radix-tree.c | 2 lib/test_firmware.c | 18 lib/ts_bm.c | 4 mm/frontswap.c | 2 mm/ksm.c | 2 mm/memcontrol.c | 2 mm/mempolicy.c | 4 mm/percpu.c | 2 mm/slub.c | 4 mm/swap.c | 4 net/bluetooth/l2cap_sock.c | 2 net/bridge/br_if.c | 5 net/can/bcm.c | 12 net/ceph/osd_client.c | 20 net/core/rtnetlink.c | 8 net/core/sock.c | 23 net/dccp/options.c | 2 net/ipv4/inet_hashtables.c | 17 net/ipv4/inet_timewait_sock.c | 8 net/ipv4/netfilter/nf_socket_ipv4.c | 6 net/ipv4/tcp.c | 27 net/ipv4/tcp_fastopen.c | 6 net/ipv4/tcp_input.c | 12 net/ipv4/tcp_metrics.c | 70 - net/ipv6/addrconf.c | 17 net/ipv6/icmp.c | 22 net/ipv6/ip6_flowlabel.c | 2 net/ipv6/ip6_gre.c | 3 net/ipv6/ip6mr.c | 2 net/ipv6/netfilter/nf_socket_ipv6.c | 2 net/ipv6/reassembly.c | 4 net/ipv6/udp.c | 2 net/llc/llc_input.c | 3 net/netfilter/ipset/ip_set_core.c | 17 net/netfilter/nf_conntrack_ftp.c | 2 net/netfilter/nf_conntrack_helper.c | 4 net/netfilter/nf_conntrack_netlink.c | 77 - net/netfilter/nf_conntrack_sip.c | 2 net/netfilter/nf_tables_api.c | 486 +++++--- net/netfilter/nf_tables_trace.c | 9 net/netfilter/nfnetlink_acct.c | 11 net/netfilter/nfnetlink_cthelper.c | 11 net/netfilter/nfnetlink_cttimeout.c | 22 net/netfilter/nfnetlink_log.c | 13 net/netfilter/nfnetlink_queue.c | 16 net/netfilter/nft_byteorder.c | 14 net/netfilter/nft_chain_filter.c | 11 net/netfilter/nft_compat.c | 11 net/netfilter/nft_dynset.c | 6 net/netlink/af_netlink.c | 5 net/netlink/diag.c | 7 net/nfc/core.c | 4 net/nfc/hci/llc_shdlc.c | 10 net/nfc/llcp.h | 8 net/nfc/llcp_commands.c | 47 net/nfc/llcp_core.c | 44 net/nfc/nfc.h | 2 net/sched/act_pedit.c | 1 net/sched/cls_flow.c | 2 net/sched/cls_fw.c | 10 net/sched/cls_route.c | 1 net/sched/cls_u32.c | 77 + net/sched/sch_cake.c | 2 net/sched/sch_cbq.c | 2 net/sched/sch_fq_codel.c | 2 net/sched/sch_mqprio.c | 144 +- net/sched/sch_qfq.c | 7 net/sched/sch_sfq.c | 2 net/sctp/socket.c | 4 net/sunrpc/svcsock.c | 27 net/unix/af_unix.c | 2 net/wireless/wext-core.c | 6 samples/bpf/tcp_basertt_kern.c | 2 scripts/mod/modpost.c | 24 scripts/tags.sh | 9 security/integrity/evm/evm_main.c | 2 security/integrity/iint.c | 15 sound/core/control_compat.c | 2 sound/core/jack.c | 15 sound/isa/sb/sb16_csp.c | 2 sound/pci/ac97/ac97_codec.c | 4 sound/soc/codecs/cs42l51-i2c.c | 6 sound/soc/codecs/cs42l51.c | 7 sound/soc/codecs/cs42l51.h | 1 sound/soc/codecs/es8316.c | 9 sound/soc/codecs/wm8904.c | 3 sound/soc/fsl/fsl_spdif.c | 2 sound/usb/endpoint.c | 2 tools/perf/tests/shell/test_uprobe_from_different_cu.sh | 83 + tools/perf/util/dwarf-aux.c | 2 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c | 2 482 files changed, 6834 insertions(+), 5493 deletions(-)
Adrian Hunter (1):
perf intel-pt: Fix CYC timestamps after standalone CBR
Ahmed S. Darwish (1):
scripts/tags.sh: Resolve gtags empty index generation
Alan Stern (1):
net: usbnet: Fix WARNING in usbnet_start_xmit/usb_submit_urb
Alex Dewar (1):
wl3501_cs: Remove unnecessary NULL check
Alexander Aring (4):
fs: dlm: return positive pid value for F_GETLK
dlm: cleanup plock_op vs plock_xop
dlm: rearrange async condition return
fs: dlm: interrupt posix locks only when process is killed
Alexander Steffen (1):
tpm_tis: Explicitly check for error code
Andreas Kemnade (1):
ARM: dts: imx6sll: fixup of operating points
Andy Shevchenko (6):
wifi: ray_cs: Utilize strnlen() in parse_addr()
wifi: ray_cs: Drop useless status variable in parse_addr()
pinctrl: cherryview: Return correct value if pin in push-pull mode
extcon: Fix kernel doc of property fields to avoid warnings
extcon: Fix kernel doc of property capability fields to avoid warnings
serial: 8250_dw: split Synopsys DesignWare 8250 common functions
Aneesh Kumar K.V (1):
powerpc/mm/altmap: Fix altmap boundary check
Arnd Bergmann (5):
ARM: 9303/1: kprobes: avoid missing-declaration warnings memstick r592: make memstick_debug_get_tpc_name() static
ARM: ep93xx: fix missing-prototype warnings
ARM: orion5x: fix d2net gpio initialization
ata: pata_ns87415: mark ns87560_tf_read static
Artur Rojek (1):
sh: dma: Fix DMA channel offset calculation
Baokun Li (1):
ext4: only update i_reserved_data_blocks on successful block allocation
Bart Van Assche (2):
block: Fix a source code comment in include/uapi/linux/blkzoned.h
loop: Select I/O scheduler 'none' from inside add_disk()
Bas Nieuwenhuizen (1):
drm/amdgpu: Validate VM ioctl flags.
Bikash Hazarika (1):
scsi: qla2xxx: Fix potential NULL pointer dereference
Bjorn Helgaas (1):
PCI/ASPM: Return 0 or -ETIMEDOUT from pcie_retrain_link()
Bob Peterson (1):
gfs2: Don't deref jdesc in evict
Cambda Zhu (2):
ipvlan: Fix return value of ipvlan_queue_xmit()
net: Replace the limit of TCP_LINGER2 with TCP_FIN_TIMEOUT_MAX
Chao Yu (2):
f2fs: fix error path handling in truncate_dnode()
ext4: fix to check return value of freeze_bdev() in ext4_shutdown()
Chengfeng Ye (1):
sctp: fix potential deadlock on &net->sctp.addr_wq_lock
Christophe JAILLET (11):
wifi: mwifiex: Fix the size of a memory allocation in mwifiex_ret_802_11_scan()
wifi: orinoco: Fix an error handling path in spectrum_cs_probe()
wifi: orinoco: Fix an error handling path in orinoco_cs_probe()
wifi: atmel: Fix an error handling path in atmel_probe()
wifi: wl3501_cs: Fix an error handling path in wl3501_probe()
wifi: ray_cs: Fix an error handling path in ray_probe()
fbdev: omapfb: lcd_mipid: Fix an error handling path in mipid_spi_probe()
mfd: stmpe: Only disable the regulators if they are enabled
rtc: st-lpc: Release some resources in st_rtc_probe() in case of error
tty: serial: samsung_tty: Fix a memory leak in s3c24xx_serial_getclk() in case of error
tty: serial: samsung_tty: Fix a memory leak in s3c24xx_serial_getclk() when iterating clk
Chunfeng Yun (1):
PM / wakeirq: support enabling wake-up irq after runtime_suspend called
Chunguang Xu (1):
ext4: rename journal_dev to s_journal_dev inside ext4_sb_info
Claudiu Beznea (1):
pinctrl: at91-pio4: check return value of devm_kasprintf()
Coly Li (1):
bcache: remove 'int n' from parameter list of bch_bucket_alloc_set()
Cristian Ciocaltea (1):
ASoC: es8316: Increment max value for ALC Capture Target Volume control
Dai Ngo (1):
NFSD: add encoding of op_recall flag for write delegation
Damien Le Moal (2):
misc: pci_endpoint_test: Free IRQs before removing the device
misc: pci_endpoint_test: Re-init completion for every test
Dan Carpenter (3):
w1: fix loop in w1_fini()
serial: atmel: don't enable IRQs prematurely RDMA/mlx4: Make check for invalid flags stricter
Daniel Lezcano (1):
clocksource/drivers: Unify the names to timer-* format
Daniel Vetter (1):
drm/atomic: Fix potential use-after-free in nonblocking commits
Daniil Dulov (1):
media: usb: Check az6007_read() return value
Dario Binacchi (1):
drm/panel: simple: fix active size for Ampire AM-480272H3TMQW-T01H
Davide Tronchin (1):
USB: serial: option: add LARA-R6 01B PIDs
Ding Hui (1):
SUNRPC: Fix UAF in svc_tcp_listen_data_ready()
Dinh Nguyen (1):
arm64: dts: stratix10: fix incorrect I2C property for SCL signal
Dmitry Antipov (1):
wifi: ath9k: convert msecs to jiffies where needed
Douglas Anderson (2):
watchdog/perf: define dummy watchdog_update_hrtimer_threshold() on correct config watchdog/perf: more properly prevent false positives with turbo modes
Duoming Zhou (1):
media: usb: siano: Fix warning due to null work_func_t function pointer
Eric Dumazet (16):
netlink: fix potential deadlock in netlink_set_err()
netlink: do not hard code device address lenth in fdb dumps
tcp: annotate data races in __tcp_oow_rate_limited()
udp6: fix udp6_ehashfn() typo
tcp: annotate data-races around tp->linger2
tcp: annotate data-races around rskq_defer_accept
tcp: annotate data-races around tp->notsent_lowat
tcp: annotate data-races around fastopenq.max_qlen
net: add missing data-race annotations around sk->sk_peek_off
net: add missing data-race annotation for sk_ll_usec
tcp_metrics: fix addr_same() helper
tcp_metrics: annotate data-races around tm->tcpm_stamp
tcp_metrics: annotate data-races around tm->tcpm_lock
tcp_metrics: annotate data-races around tm->tcpm_vals[]
tcp_metrics: annotate data-races around tm->tcpm_net
tcp_metrics: fix data-race in tcpm_suck_dst() vs fastopen
Eric Whitney (1):
ext4: correct inline offset when handling xattrs in inode body
Fabian Frederick (1):
jffs2: reduce stack usage in jffs2_build_xattr_subsystem()
Fedor Pchelkin (2):
wifi: ath9k: avoid referencing uninit memory in ath9k_wmi_ctrl_rx
wifi: ath9k: don't allow to overwrite ENDPOINT0 attributes
Feng Mingxi (1):
clocksource/drivers/cadence-ttc: Fix memory leak in ttc_timer_probe
Filipe Manana (3):
btrfs: fix race when deleting quota root from the dirty cow roots list
btrfs: fix extent buffer leak after tree mod log failure at split_node()
btrfs: check for commit error at btrfs_attach_transaction_barrier()
Florent Revest (1):
netfilter: conntrack: Avoid nf_ct_helper_hash uses after free
Florian Fainelli (1):
net: bcmgenet: Ensure MDIO unregistration has clocks enabled
Florian Westphal (5):
netfilter: nf_tables: fix nat hook table deletion
netfilter: nf_tables: add rescheduling points during loop detection walks
netfilter: nf_tables: fix scheduling-while-atomic splat
netfilter: nf_tables: fix spurious set element insertion failure
netfilter: nf_tables: can't schedule in nft_chain_validate
Gaosheng Cui (1):
drm/msm: Fix IS_ERR_OR_NULL() vs NULL check in a5xx_submit_in_rb()
Georg Müller (2):
perf probe: Add test for regression introduced by switch to die_get_decl_file() perf test uprobe_from_different_cu: Skip if there is no gcc
George Stark (1):
meson saradc: fix clock divider mask length
Gilles Buloz (1):
hwmon: (nct7802) Fix for temp6 (PECI1) processed even if PECI1 disabled
Gratian Crisan (1):
usb: dwc3: pci: skip BYT GPIO lookup table for hardwired phy
Greg Kroah-Hartman (4):
video: imsttfb: check for ioremap() failures
Documentation: security-bugs.rst: update preferences when dealing with the linux-distros group
Documentation: security-bugs.rst: clarify CVE handling
Linux 4.19.291
Guiting Shen (1):
usb: ohci-at91: Fix the unhandle interrupt when resume
Gustavo A. R. Silva (1):
wifi: wext-core: Fix -Wstringop-overflow warning in ioctl_standard_iw_point()
Hangbin Liu (2):
bonding: reset bond's flags when down link is P2P device
team: reset team's flags when down link is P2P device
Hans de Goede (1):
gpio: tps68470: Make tps68470_gpio_output() always set the initial value
Harshit Mogalapalli (1):
phy: hisilicon: Fix an out of bounds check in hisi_inno_phy_probe()
Heiko Carstens (1):
KVM: s390: fix sthyi error handling
Herbert Xu (1):
hwrng: virtio - Fix race on data_avail and actual data
Ilia.Gavrilov (1):
netfilter: nf_conntrack_sip: fix the ct_sip_parse_numerical_param() return value.
Ilpo Järvinen (2):
PCI/ASPM: Factor out pcie_wait_for_retrain() PCI/ASPM: Avoid link retraining race
Ilya Dryomov (1):
libceph: fix potential hang in ceph_osdc_notify()
Jakub Kicinski (2):
net: create netdev->dev_addr assignment helpers
wl3501_cs: use eth_hw_addr_set()Jakub Vanek (1):
Revert "usb: dwc3: core: Enable AutoRetry feature in the controller"
Jamal Hadi Salim (1):
net: sched: cls_u32: Fix match key mis-addressing
Jan Kara (1):
ext2: Drop fragment support
Jarkko Sakkinen (1):
tpm: tpm_vtpm_proxy: fix a race condition in /dev/vtpmx creation
Jason Baron (1):
md/raid0: add discard support for the 'original' layout
Jason Wang (1):
virtio-net: fix race between set queues and probe
Jeremy Sowden (1):
lib/ts_bm: reset initial match offset for every block of text
Jerry Meng (1):
USB: serial: option: support Quectel EM060K_128
Jiaqing Zhao (1):
Revert "8250: add support for ASIX devices with a FIFO bug"
Jiasheng Jiang (2):
mfd: intel-lpss: Add missing check for platform_get_resource
NTB: ntb_tool: Add check for devm_kcalloc
Jisheng Zhang (1):
usb: dwc3: don't reset device side if dwc3 was configured as host-only
Jocelyn Falempe (1):
drm/client: Fix memory leak in drm_client_target_cloned
Joe Perches (1):
drivers core: Use sysfs_emit and sysfs_emit_at for show(device *...) functions
Joe Thornber (1):
dm cache policy smq: ensure IO doesn't prevent cleaner policy progress
Johan Hovold (2):
USB: serial: simple: sort driver entries
PM: sleep: wakeirq: fix wake irq arming
Johannes Berg (1):
wifi: iwlwifi: mvm: avoid baid size integer overflow
John Paul Adrian Glaubitz (2):
irqchip/jcore-aic: Fix missing allocation of IRQ descriptors
sh: j2: Use ioremap() to translate device tree address into kernel memory
Jonas Gorski (3):
spi: bcm-qspi: return error if neither hif_mspi nor mspi is available
spi: bcm63xx: fix max prepend length
irq-bcm6345-l1: Do not assume a fixed block to cpu mapping
Kees Cook (1):
treewide: Remove uninitialized_var() usage
Kemeng Shi (1):
ext4: fix wrong unit use in ext4_mb_clear_bb
Klaus Kudielka (1):
net: mvneta: fix txq_map in case of txq_number==1
Krzysztof Kozlowski (2):
nfc: constify several pointers to u8, char and sk_buff
nfc: llcp: fix possible use of uninitialized variable in nfc_llcp_send_connect()
Kuniyuki Iwashima (5):
gtp: Fix use-after-free in __gtp_encap_destroy().
netlink: Add __sock_i_ino() for __netlink_diag_dump().
icmp6: Fix null-ptr-deref of ip6_null_entry->rt6i_idev in icmp6_dev(). Revert "tcp: avoid the lookup process failing to get sk in ehash table"
llc: Don't drop packet from non-root netns.
Laurent Vivier (4):
hwrng: virtio - add an internal buffer
hwrng: virtio - don't wait on cleanup
hwrng: virtio - don't waste entropy
hwrng: virtio - always add a pending request
Lee Jones (3):
wl3501_cs: Fix a bunch of formatting issues related to function docs
wl3501_cs: Fix misspelling and provide missing documentation net/sched: cls_u32: Fix reference counter leak leading to overflow
Li Nan (4):
md/raid10: check slab-out-of-bounds in md_bitmap_get_counter md/raid10: fix overflow of md/safe_mode_delay md/raid10: fix wrong setting of max_corr_read_errors md/raid10: fix io loss while replacement replace rdev
Li Yang (1):
usb: phy: phy-tahvo: fix memory leak in tahvo_usb_probe()
Lin Ma (2):
net/sched: act_pedit: Add size check for TCA_PEDIT_PARMS_EX net/sched: mqprio: Add length check for TCA_MQPRIO_{MAX/MIN}_RATE64
Linus Torvalds (3):
workqueue: clean up WORK_* constant types, clarify masking
ftrace: Store the order of pages allocated in ftrace_page drm/edid: fix objtool warning in drm_cvt_modes()
Luca Weiss (1):
Input: drv260x - sleep between polling GO bit
Lyude Paul (1):
drm/edid: Fix uninitialized variable in drm_cvt_modes()
M A Ramdhan (1):
net/sched: cls_fw: Fix improper refcount update leads to use-after-free
Maciej Żenczykowski (1):
ipv6 addrconf: fix bug where deleting a mngtmpaddr can create a new temporary address
Manivannan Sadhasivam (1):
PCI: qcom: Disable write access to read only registers for IP v2.3.3
Marc Kleine-Budde (1):
can: gs_usb: gs_can_close(): add missing set of CAN state to CAN_STATE_STOPPED
Marc Zyngier (1):
irqchip/jcore-aic: Kill use of irq_create_strict_mappings()
Marek Vasut (4):
wifi: rsi: Do not set MMC_PM_KEEP_POWER in shutdown
Input: adxl34x - do not hardcode interrupt trigger type
media: videodev2.h: Fix struct v4l2_input tuner index comment
i2c: xiic: Defer xiic_wakeup() and __xiic_start_xfer() in xiic_process()
Mario Limonciello (4):
pinctrl: amd: Fix mistake in handling clearing pins at startup
pinctrl: amd: Detect internal GPIO0 debounce handling
pinctrl: amd: Only use special debounce behavior for GPIO 0
pinctrl: amd: Use amd_pinconf_set() for all config options
Mark Brown (1):
ASoC: wm8904: Fill the cache for WM8904_ADC_TEST_0 register
Martin KaFai Lau (1):
bpf: Address KCSAN report on bpf_lru_list
Martin Kaiser (2):
hwrng: imx-rngc - fix the timeout for init and self check
fbdev: imxfb: warn about invalid left/right margin
Masahiro Yamada (3):
modpost: fix section mismatch message for R_ARM_ABS32
modpost: fix section mismatch message for R_ARM_{PC24,CALL,JUMP24}
ARC: define ASM_NL and __ALIGN(_STR) outside #ifdef __ASSEMBLY__ guard
Matus Gajdos (1):
ASoC: fsl_spdif: Silence output on stop
Max Filippov (1):
xtensa: ISS: fix call to split_if_spec
Maxim Mikityanskiy (1):
platform/x86: msi-laptop: Fix rfkill out-of-sync on MSI Wind U100
Michael Schmitz (1):
block: change all __u32 annotations to __be32 in affs_hardblocks.h
Miklos Szeredi (1):
fuse: revalidate: don't invalidate if interrupted
Mirsad Goran Todorovac (2):
test_firmware: fix a memory leak with reqs buffer
test_firmware: return ENOMEM instead of ENOSPC on failed memory allocation
Mohamed Khalfella (2):
tracing/histograms: Add histograms to hist_vars if they have referenced variables tracing/histograms: Return an error if we fail to add histogram to hist_vars list
Mohsen Tahmasebi (1):
USB: serial: option: add Quectel EC200A module support
Moritz Fischer (1):
net: lan743x: Don't sleep in atomic context
Namhyung Kim (1):
perf dwarf-aux: Fix off-by-one in die_get_varname()
Nico Boehr (1):
KVM: s390: fix KVM_S390_GET_CMMA_BITS for GFNs in memslot holes
Nikita Zhandarovich (3):
PM: domains: fix integer overflow issues in genpd_parse_state()
radeon: avoid double free in ci_dpm_init() drm/radeon: fix possible division-by-zero errors
Nilesh Javali (2):
scsi: qla2xxx: Check valid rport returned by fc_bsg_to_rport()
scsi: qla2xxx: Array index may go out of bound
Nishanth Menon (1):
mailbox: ti-msgmgr: Fill non-message tx data fields with 0x0
Oliver Neukum (1):
USB: serial: simple: add Kaufmann RKS+CAN VCP
Ondrej Zary (1):
PCI/PM: Avoid putting EloPOS E2/S2/H2 PCIe Ports in D3cold
Pablo Neira Ayuso (7):
netfilter: nftables: add helper function to set the base sequence number
netfilter: add helper function to set up the nfnetlink header and use it
netfilter: nf_tables: use net_generic infra for transaction data
netfilter: nf_tables: incorrect error path handling with NFT_MSG_NEWRULE
netfilter: nf_tables: add NFT_TRANS_PREPARE_ERROR to deal with bound set/chain
netfilter: nf_tables: reject unbound anonymous set before commit phase
netfilter: nf_tables: unbind non-anonymous set if rule construction fails
Patrick Kelsey (1):
IB/hfi1: Fix sdma.h tx->num_descs off-by-one errors
Pedro Tammela (2):
net/sched: make psched_mtu() RTNL-less safe net/sched: sch_qfq: account for stab overhead in qfq_enqueue
Peng Fan (1):
ARM: dts: imx: add usb alias
Pengcheng Yang (1):
samples/bpf: Fix buffer overflow in tcp_basertt
Peter Seiderer (1):
wifi: ath9k: fix AR9003 mac hardware hang check register offset calculation
Peter Zijlstra (1):
perf: Fix function pointer case
Prince Kumar Maurya (1):
fs/sysv: Null check to prevent null-ptr-deref bug
Quinn Tran (1):
scsi: qla2xxx: Wait for io return on terminate rport
Rafał Miłecki (1):
ARM: dts: BCM5301X: Drop "clock-names" from the SPI node
Rajan Vaja (1):
clocksource/drivers/cadence-ttc: Use ttc driver as platform driver
Randy Dunlap (4):
soc/fsl/qe: fix usb.c build errors
crypto: nx - fix build warnings when DEBUG_FS is not enabled
powerpc: allow PPC_EARLY_DEBUG_CPM only when SERIAL_CPM=y
wifi: airo: avoid uninitialized warning in airo_get_rate()
Rasmus Villemoes (3):
spi: spi-fsl-spi: remove always-true conditional in fsl_spi_do_one_msg
spi: spi-fsl-spi: relax message sanity checking a little
spi: spi-fsl-spi: allow changing bits_per_word while CS is still active
Remi Pommarel (1):
wifi: ath9k: Fix possible stall on ath9k_txq_list_has_key()
Ricardo Ribalda (1):
usb: xhci-mtk: set the dma max_seg_size
Rick Wertenbroek (5):
PCI: rockchip: Assert PCI Configuration Enable bit after probe
PCI: rockchip: Write PCI Device ID to correct register
PCI: rockchip: Add poll and timeout to wait for PHY PLLs to be locked
PCI: rockchip: Fix legacy IRQ generation for RK3399 PCIe endpoint core
PCI: rockchip: Use u32 variable to access 32-bit registers
Robert Hancock (1):
i2c: xiic: Don't try to handle more interrupt events after error
Robert Marko (2):
mmc: core: disable TRIM on Kingston EMMC04G-M627
mmc: core: disable TRIM on Micron MTFC4GACAJCN-1M
Roberto Sassu (1):
evm: Complete description of evm_inode_setattr()
Robin Murphy (1):
PCI: Add function 1 DMA alias quirk for Marvell 88SE9235
Roger Quadros (1):
mtd: rawnand: omap_elm: Fix incorrect type in assignment
Ross Maynard (1):
USB: zaurus: Add ID for A-300/B-500/C-700
Ruihong Luo (1):
serial: 8250_dw: Preserve original value of DLF register
Shenghui Wang (1):
bcache: use MAX_CACHES_PER_SET instead of magic number 8 in __bch_bucket_alloc_set
Shengjiu Wang (1):
ARM: dts: imx6sll: Make ssi node name same as other platforms
Shreyas Deodhar (1):
scsi: qla2xxx: Pointer may be dereferenced
Siddh Raman Pant (1):
jfs: jfs_dmap: Validate db_l2nbperpage while mounting
Stefan Haberland (1):
s390/dasd: fix hanging device after quiesce/resume
Stefan Mätje (1):
PCI: Rework pcie_retrain_link() wait loop
Steffen Maier (1):
scsi: zfcp: Defer fc_rport blocking until after ADISC response
Stephan Gerhold (1):
mfd: rt5033: Drop rt5033-battery sub-device
Stephen Suryaputra (1):
vrf: Increment Icmp6InMsgs on the original netdev
Steven Rostedt (VMware) (2):
ftrace: Add information on number of page groups allocated
ftrace: Check if pages were allocated before calling free_pages()
Stewart Smith (1):
tcp: Reduce chance of collisions in inet6_hashfn().
Su Hui (1):
ALSA: ac97: Fix possible NULL dereference in snd_ac97_mixer
Sui Jingfeng (1):
PCI: Add pci_clear_master() stub for non-CONFIG_PCI
Sungwoo Kim (1):
Bluetooth: L2CAP: Fix use-after-free in l2cap_sock_ready_cb
Takashi Iwai (1):
ALSA: jack: Fix mutex call in snd_jack_report()
Tanmay Patil (1):
net: ethernet: ti: cpsw_ale: Fix cpsw_ale_get_field()/cpsw_ale_set_field()
Tetsuo Handa (1):
debugobjects: Recheck debug_objects_enabled before reporting
Thadeu Lima de Souza Cascardo (1):
netfilter: nf_tables: prevent OOB access in nft_byteorder_eval
Thomas Gleixner (2):
x86/smp: Use dedicated cache-line for mwait_play_dead()
posix-timers: Ensure timer ID search-loop limit is valid
Thomas Petazzoni (1):
ASoC: cs42l51: fix driver to properly autoload with automatic module loading
Tianjia Zhang (1):
integrity: Fix possible multiple allocation in integrity_inode_get()
Tobias Heider (1):
Add MODULE_FIRMWARE() for FIRMWARE_TG357766.
Vineet Gupta (4):
ARCv2: entry: comments about hardware auto-save on taken interrupts
ARCv2: entry: push out the Z flag unclobber from common EXCEPTION_PROLOGUE
ARCv2: entry: avoid a branch
ARCv2: entry: rewrite to enable use of double load/stores LDD/STD
Vladimir Oltean (3):
net: bridge: keep ports without IFF_UNICAST_FLT in BR_PROMISC mode net/sched: mqprio: refactor nlattr parsing to a separate function net/sched: mqprio: add extack to mqprio_parse_nlattr()
Wang Ming (1):
i40e: Fix an NULL vs IS_ERR() bug for debugfs_create_dir()
Wolfram Sang (1):
arm64: dts: renesas: ulcb-kf: Remove flow control for SCIF1
Xiubo Li (1):
ceph: don't let check_caps skip sending responses for revoke msgs
Xu Yang (1):
ARM: dts: nxp/imx6sll: fix wrong property name in usbphy node
Yang Yingliang (1):
NTB: ntb_transport: fix possible memory leak while device_register() fails
Ye Bin (1):
scsi: qla2xxx: Fix inconsistent format argument type in qla_os.c
Yicong Yang (1):
sched/fair: Don't balance task to its current running CPU
Ying Hsu (1):
igb: Fix igb_down hung on surprise removal
Yu Kuai (3):
md: fix data corruption for raid456 when reshape restart while grow up md/raid10: prevent soft lockup while flush writes
dm raid: fix missing reconfig_mutex unlock in raid_ctr() error paths
Yuan Can (3):
ntb: idt: Fix error handling in idt_pci_driver_init()
NTB: amd: Fix error handling in amd_ntb_pci_driver_init()
ntb: intel: Fix error handling in intel_ntb_pci_driver_init()
Yuanjun Gong (4):
net:ipv6: check return value of pskb_trim()
ethernet: atheros: fix return value check in atl1e_tso_csum()
benet: fix return value check in be_lancer_xmit_workarounds() net/mlx5e: fix return value check in mlx5e_ipsec_remove_trailer()
Yuchen Yang (1):
scsi: 3w-xxxx: Add error handling for initialization failure in tw_probe()
Yue Haibing (1):
ip6mr: Fix skb_under_panic in ip6mr_cache_report()
YueHaibing (1):
can: bcm: Fix UAF in bcm_proc_show()
Zhang Shurong (2):
fbdev: au1200fb: Fix missing IRQ check in au1200fb_drv_probe
staging: ks7010: potential buffer overflow in ks_wlan_set_encode_ext()
Zhen Lei (1):
kexec: fix a memory leak in crash_shrink_memory()
Zheng Wang (3):
fbdev: imsttfb: Fix use after free bug in imsttfb_probe
bcache: Remove unnecessary NULL point check in node allocations
bcache: Fix __bch_btree_node_alloc to make the failure behavior consistent
Zheng Yejian (4):
ring-buffer: Fix deadloop issue on reading trace_pipe
ftrace: Fix possible warning on checking all pages used in ftrace_process_locs()
ring-buffer: Fix wrong stat of cpu_buffer->read
tracing: Fix warning in trace_buffered_event_disable()
Zhihao Cheng (1):
ext4: Fix reusing stale buffer heads from last failed mounting
Zhong Jinghua (1):
nbd: Add the maximum limit of allocated index in nbd_dev_add
Ziyang Xuan (1):
ipv6/addrconf: fix a potential refcount underflow for idev
[email protected] (1):
word-at-a-time: use the same return type for has_zero regardless of endianness
valis (2):
net/sched: cls_u32: No longer copy tcf_result on update to avoid use-after-free net/sched: cls_route: No longer copy tcf_result on update to avoid use-after-free
Łukasz Bartosik (1):
USB: quirks: add quirk for Focusrite Scarlett
Greg Kroah-Hartman
maintainerDocumentation/admin-guide/security-bugs.rst +18 -21
@@ -56,31 +56,28 @@ information submitted to the security list and any followup discussions of the report are treated confidentially even after the embargo has been lifted, in perpetuity. -Coordination ------------- - -Fixes for sensitive bugs, such as those that might lead to privilege -escalations, may need to be coordinated with the private -<[email protected]> mailing list so that distribution vendors -are well prepared to issue a fixed kernel upon public disclosure of the -upstream fix. Distros will need some time to test the proposed patch and -will generally request at least a few days of embargo, and vendor update -publication prefers to happen Tuesday through Thursday. When appropriate, -the security team can assist with this coordination, or the reporter can -include linux-distros from the start. In this case, remember to prefix -the email Subject line with "[vs]" as described in the linux-distros wiki: -<http://oss-security.openwall.org/wiki/mailing-lists/distros#how-to-use-the-lists> +Coordination with other groups +------------------------------ + +The kernel security team strongly recommends that reporters of potential +security issues NEVER contact the "linux-distros" mailing list until +AFTER discussing it with the kernel security team. Do not Cc: both +lists at once. You may contact the linux-distros mailing list after a +fix has been agreed on and you fully understand the requirements that +doing so will impose on you and the kernel community. + +The different lists have different goals and the linux-distros rules do +not contribute to actually fixing any potential security problems. CVE assignment -------------- -The security team does not normally assign CVEs, nor do we require them -for reports or fixes, as this can needlessly complicate the process and -may delay the bug handling. If a reporter wishes to have a CVE identifier -assigned ahead of public disclosure, they will need to contact the private -linux-distros list, described above. When such a CVE identifier is known -before a patch is provided, it is desirable to mention it in the commit -message if the reporter agrees. +The security team does not assign CVEs, nor do we require them for +reports or fixes, as this can needlessly complicate the process and may +delay the bug handling. If a reporter wishes to have a CVE identifier +assigned, they should find one by themselves, for example by contacting +MITRE directly. However under no circumstances will a patch inclusion +be delayed to wait for a CVE identifier to arrive. Non-disclosure agreements -------------------------
MAINTAINERS +5 -5
@@ -1180,7 +1180,7 @@ N: owl F: arch/arm/mach-actions/ F: arch/arm/boot/dts/owl-* F: arch/arm64/boot/dts/actions/ -F: drivers/clocksource/owl-* +F: drivers/clocksource/timer-owl* F: drivers/pinctrl/actions/* F: drivers/soc/actions/ F: include/dt-bindings/power/owl-*
@@ -1603,7 +1603,7 @@ L: [email protected] (moderated for non-subscribers) S: Maintained F: arch/arm/boot/dts/lpc43* F: drivers/clk/nxp/clk-lpc18xx* -F: drivers/clocksource/time-lpc32xx.c +F: drivers/clocksource/timer-lpc32xx.c F: drivers/i2c/busses/i2c-lpc2k.c F: drivers/memory/pl172.c F: drivers/mtd/spi-nor/nxp-spifi.c
@@ -2219,7 +2219,7 @@ F: arch/arm/mach-vexpress/ F: */*/vexpress* F: */*/*/vexpress* F: drivers/clk/versatile/clk-vexpress-osc.c -F: drivers/clocksource/versatile.c +F: drivers/clocksource/timer-versatile.c N: mps2 ARM/VFP SUPPORT
@@ -2241,7 +2241,7 @@ M: Tony Prisk <[email protected]> L: [email protected] (moderated for non-subscribers) S: Maintained F: arch/arm/mach-vt8500/ -F: drivers/clocksource/vt8500_timer.c +F: drivers/clocksource/timer-vt8500.c F: drivers/i2c/busses/i2c-wmt.c F: drivers/mmc/host/wmt-sdmmc.c F: drivers/pwm/pwm-vt8500.c
@@ -2306,7 +2306,7 @@ F: drivers/cpuidle/cpuidle-zynq.c F: drivers/block/xsysace.c N: zynq N: xilinx -F: drivers/clocksource/cadence_ttc_timer.c +F: drivers/clocksource/timer-cadence-ttc.c F: drivers/i2c/busses/i2c-cadence.c F: drivers/mmc/host/sdhci-of-arasan.c F: drivers/edac/synopsys_edac.c
Makefile +1 -1
@@ -1,7 +1,7 @@ # SPDX-License-Identifier: GPL-2.0 VERSION = 4 PATCHLEVEL = 19 -SUBLEVEL = 290 +SUBLEVEL = 291 EXTRAVERSION = NAME = "People's Front"
arch/arc/include/asm/entry-arcv2.h +191 -171
423 lines not on this page · raw message
arch/arc/include/asm/linkage.h +20 -2
@@ -11,12 +11,30 @@#include <asm/dwarf.h> -#ifdef __ASSEMBLY__ -#define ASM_NL `/* use '`' to mark new line in macro */ #define __ALIGN .align 4#define __ALIGN_STR __stringify(__ALIGN) +#ifdef __ASSEMBLY__ + +.macro ST2 e, o, off +#ifdef CONFIG_ARC_HAS_LL64 + std \e, [sp, \off] +#else + st \e, [sp, \off] + st \o, [sp, \off+4] +#endif +.endm + +.macro LD2 e, o, off +#ifdef CONFIG_ARC_HAS_LL64 + ldd \e, [sp, \off] +#else + ld \e, [sp, \off] + ld \o, [sp, \off+4] +#endif +.endm + /* annotation for data we want in DCCM - if enabled in .config */ .macro ARCFP_DATA nm #ifdef CONFIG_ARC_HAS_DCCM
arch/arc/kernel/asm-offsets.c +7 -0
@@ -58,7 +58,14 @@ int main(void)DEFINE (PT_r5, offsetof(struct pt_regs , r5));DEFINE (PT_r6, offsetof(struct pt_regs , r6));DEFINE (PT_r7, offsetof(struct pt_regs , r7)); +DEFINE (PT_r8, offsetof(struct pt_regs , r8)); +DEFINE (PT_r10, offsetof(struct pt_regs , r10)); +DEFINE (PT_r26, offsetof(struct pt_regs , r26));DEFINE (PT_ret, offsetof(struct pt_regs , ret)); +DEFINE (PT_blink, offsetof(struct pt_regs , blink)); +DEFINE (PT_lpe, offsetof(struct pt_regs , lp_end)); +DEFINE (PT_lpc, offsetof(struct pt_regs , lp_count)); +DEFINE (PT_user_r25, offsetof(struct pt_regs , user_r25));DEFINE (SZ_CALLEE_REGS ,sizeof (struct callee_regs ));DEFINE (SZ_PT_REGS ,sizeof (struct pt_regs ));
arch/arc/kernel/entry-arcv2.S +2 -2
@@ -70,7 +70,7 @@ reserved: ENTRY(handle_interrupt) - INTERRUPT_PROLOGUE irq + INTERRUPT_PROLOGUE # irq control APIs local_irq_save/restore/disable/enable fiddle with # global interrupt enable bits in STATUS32 (.IE for 1 prio, .E[] for 2 prio)
@@ -226,7 +226,7 @@ debug_marker_l1: bset.nz r11, r11, AUX_IRQ_ACT_BIT_U ; NZ means U sr r11, [AUX_IRQ_ACT] - INTERRUPT_EPILOGUE irq + INTERRUPT_EPILOGUE rtie ;####### Return from Exception / pure kernel mode #######
arch/arc/mm/tlbex.S +11 -0
@@ -396,6 +396,17 @@ EV_TLBMissD_fast_ret: ; additional label for VDK OS-kit instrumentation ;-------- Common routine to call Linux Page Fault Handler ----------- do_slow_path_pf: +#ifdef CONFIG_ISA_ARCV2 + ; Set Z flag if exception in U mode. Hardware micro-ops do this on any + ; taken interrupt/exception, and thus is already the case at the entry + ; above, but ensuing code would have already clobbered. + ; EXCEPTION_PROLOGUE called in slow path, relies on correct Z flag set + + lr r2, [erstatus] + and r2, r2, STATUS_U_MASK + bxor.f 0, r2, STATUS_U_BIT +#endif + ; Restore the 4-scratch regs saved by fast path miss handler TLBMISS_RESTORE_REGS
arch/arm/boot/dts/bcm5301x.dtsi +0 -1
@@ -468,7 +468,6 @@ "spi_lr_session_done", "spi_lr_overread"; clocks = <&iprocmed>; - clock-names = "iprocmed"; num-cs = <2>; #address-cells = <1>; #size-cells = <0>;
arch/arm/boot/dts/imx6qdl.dtsi +4 -0
@@ -46,6 +46,10 @@ spi1 = &ecspi2; spi2 = &ecspi3; spi3 = &ecspi4; + usb0 = &usbotg; + usb1 = &usbh1; + usb2 = &usbh2; + usb3 = &usbh3; usbphy0 = &usbphy1; usbphy1 = &usbphy2; };
arch/arm/boot/dts/imx6sl.dtsi +3 -0
@@ -32,6 +32,9 @@ spi1 = &ecspi2; spi2 = &ecspi3; spi3 = &ecspi4; + usb0 = &usbotg1; + usb1 = &usbotg2; + usb2 = &usbh; usbphy0 = &usbphy1; usbphy1 = &usbphy2; };
arch/arm/boot/dts/imx6sll.dtsi +16 -16
@@ -36,6 +36,8 @@ spi1 = &ecspi2; spi3 = &ecspi3; spi4 = &ecspi4; + usb0 = &usbotg1; + usb1 = &usbotg2; usbphy0 = &usbphy1; usbphy1 = &usbphy2; };
@@ -49,20 +51,18 @@ device_type = "cpu"; reg = <0>; next-level-cache = <&L2>; - operating-points = < + operating-points = /* kHz uV */ - 996000 1275000 - 792000 1175000 - 396000 1075000 - 198000 975000 - >; - fsl,soc-operating-points = < + <996000 1275000>, + <792000 1175000>, + <396000 1075000>, + <198000 975000>; + fsl,soc-operating-points = /* ARM kHz SOC-PU uV */ - 996000 1175000 - 792000 1175000 - 396000 1175000 - 198000 1175000 - >; + <996000 1175000>, + <792000 1175000>, + <396000 1175000>, + <198000 1175000>; clock-latency = <61036>; /* two CLK32 periods */ clocks = <&clks IMX6SLL_CLK_ARM>, <&clks IMX6SLL_CLK_PLL2_PFD2>,
@@ -271,7 +271,7 @@ status = "disabled"; }; - ssi1: ssi-controller@2028000 { + ssi1: ssi@2028000 { compatible = "fsl,imx6sl-ssi", "fsl,imx51-ssi"; reg = <0x02028000 0x4000>; interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
@@ -284,7 +284,7 @@ status = "disabled"; }; - ssi2: ssi-controller@202c000 { + ssi2: ssi@202c000 { compatible = "fsl,imx6sl-ssi", "fsl,imx51-ssi"; reg = <0x0202c000 0x4000>; interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
@@ -297,7 +297,7 @@ status = "disabled"; }; - ssi3: ssi-controller@2030000 { + ssi3: ssi@2030000 { compatible = "fsl,imx6sl-ssi", "fsl,imx51-ssi"; reg = <0x02030000 0x4000>; interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
@@ -518,7 +518,7 @@ reg = <0x020ca000 0x1000>; interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>; clocks = <&clks IMX6SLL_CLK_USBPHY2>; - phy-reg_3p0-supply = <®_3p0>; + phy-3p0-supply = <®_3p0>; fsl,anatop = <&anatop>; };
arch/arm/boot/dts/imx6sx.dtsi +3 -0
@@ -49,6 +49,9 @@ spi2 = &ecspi3; spi3 = &ecspi4; spi4 = &ecspi5; + usb0 = &usbotg1; + usb1 = &usbotg2; + usb2 = &usbh; usbphy0 = &usbphy1; usbphy1 = &usbphy2; };
arch/arm/boot/dts/imx6ul.dtsi +2 -0
@@ -47,6 +47,8 @@ spi1 = &ecspi2; spi2 = &ecspi3; spi3 = &ecspi4; + usb0 = &usbotg1; + usb1 = &usbotg2; usbphy0 = &usbphy1; usbphy1 = &usbphy2; };
arch/arm/boot/dts/imx7d.dtsi +6 -0
@@ -7,6 +7,12 @@ #include <dt-bindings/reset/imx7-reset.h> / { + aliases { + usb0 = &usbotg1; + usb1 = &usbotg2; + usb2 = &usbh; + }; + cpus { cpu0: cpu@0 { clock-frequency = <996000000>;
arch/arm/boot/dts/imx7s.dtsi +2 -0
@@ -46,6 +46,8 @@ spi1 = &ecspi2; spi2 = &ecspi3; spi3 = &ecspi4; + usb0 = &usbotg1; + usb1 = &usbh; }; cpus {
arch/arm/mach-ep93xx/timer-ep93xx.c +2 -1
@@ -9,6 +9,7 @@#include <linux/io.h> #include <asm/mach/time.h> #include "soc.h" +#include "platform.h" /************************************************************************* * Timer handling for EP93xx
@@ -60,7 +61,7 @@ static u64 notrace ep93xx_read_sched_clock(void)return ret; } -u64 ep93xx_clocksource_read (struct clocksource *c) +static u64 ep93xx_clocksource_read (struct clocksource *c) {u64 ret;
arch/arm/mach-orion5x/board-dt.c +3 -0
@@ -63,6 +63,9 @@ static void __init orion5x_dt_init(void)if (of_machine_is_compatible ("maxtor,shared-storage-2" ))mss2_init (); +if (of_machine_is_compatible ("lacie,d2-network" )) +d2net_init (); +of_platform_default_populate (NULL , orion5x_auxdata_lookup,NULL ); }
arch/arm/mach-orion5x/common.h +6 -0
@@ -75,6 +75,12 @@ extern void mss2_init(void);static inline void mss2_init (void ) {}#endif +#ifdef CONFIG_MACH_D2NET_DT +void d2net_init (void ); +#else +static inline void d2net_init (void ) {} +#endif +/***************************************************************************** * Helpers to access Orion registers ****************************************************************************/
arch/arm/mach-sa1100/assabet.c +1 -1
@@ -570,7 +570,7 @@ static void __init map_sa1100_gpio_regs( void )*/ static void __init get_assabet_scr (void ) { -unsigned long uninitialized_var (scr ), i; +unsigned long scr, i;GPDR |=0x3fc ;/* Configure GPIO 9:2 as outputs */ GPSR =0x3fc ;/* Write 0xFF to GPIO 9:2 */
arch/arm/probes/kprobes/checkers-common.c +1 -1
@@ -48,7 +48,7 @@ enum probes_insn checker_stack_use_imm_0xx(probes_opcode_t insn,* Different from other insn uses imm8, the real addressing offset of * STRD in T32 encoding should be imm8 * 4. See ARMARM description. */ -enum probes_insn checker_stack_use_t32strd (probes_opcode_t insn, +static enum probes_insn checker_stack_use_t32strd (probes_opcode_t insn,struct arch_probes_insn *asi,const struct decode_header *h) {
arch/arm/probes/kprobes/core.c +1 -1
@@ -239,7 +239,7 @@ singlestep(struct kprobe *p, struct pt_regs *regs, struct kprobe_ctlblk *kcb)* kprobe, and that level is reserved for user kprobe handlers, so we can't * risk encountering a new kprobe in an interrupt handler. */ -void __kprobes kprobe_handler (struct pt_regs *regs) +static void __kprobes kprobe_handler (struct pt_regs *regs) {struct kprobe *p, *cur;struct kprobe_ctlblk *kcb;
arch/arm/probes/kprobes/opt-arm.c +0 -2
@@ -158,8 +158,6 @@ __arch_remove_optimized_kprobe(struct optimized_kprobe *op, int dirty) } } -extern void kprobe_handler (struct pt_regs *regs); -static void optimized_callback (struct optimized_kprobe *op,struct pt_regs *regs) {
arch/arm/probes/kprobes/test-core.c +1 -1
@@ -723,7 +723,7 @@ static const char coverage_register_lookup[16] = { [REG_TYPE_NOSPPCX] = COVERAGE_ANY_REG | COVERAGE_SP, }; -unsigned coverage_start_registers (const struct decode_header *h) +static unsigned coverage_start_registers (const struct decode_header *h) {unsigned regs =0 ;int i;
arch/arm/probes/kprobes/test-core.h +4 -0
@@ -456,3 +456,7 @@ void kprobe_thumb32_test_cases(void);#else void kprobe_arm_test_cases (void );#endif + +void __kprobes_test_case_start (void ); +void __kprobes_test_case_end_16 (void ); +void __kprobes_test_case_end_32 (void );
arch/arm64/boot/dts/altera/socfpga_stratix10_socdk.dts +1 -1
@@ -125,7 +125,7 @@ status = "okay"; clock-frequency = <100000>; i2c-sda-falling-time-ns = <890>; /* hcnt */ - i2c-sdl-falling-time-ns = <890>; /* lcnt */ + i2c-scl-falling-time-ns = <890>; /* lcnt */ adc@14 { compatible = "lltc,ltc2497";
arch/arm64/boot/dts/renesas/ulcb-kf.dtsi +1 -2
@@ -165,7 +165,7 @@ }; scif1_pins: scif1 { - groups = "scif1_data_b", "scif1_ctrl"; + groups = "scif1_data_b"; function = "scif1"; };
@@ -178,7 +178,6 @@ &scif1 { pinctrl-0 = <&scif1_pins>; pinctrl-names = "default"; - uart-has-rtscts; status = "okay"; };
arch/ia64/kernel/process.c +1 -1
@@ -444,7 +444,7 @@ static void do_copy_task_regs (struct task_struct *task, struct unw_frame_info *info, void *arg) { unsigned long mask, sp, nat_bits = 0, ar_rnat, urbs_end, cfm; -unsigned long uninitialized_var (ip );/* GCC be quiet */ +unsigned long ip;elf_greg_t *dst = arg;struct pt_regs *pt;char nat;
arch/ia64/mm/discontig.c +1 -1
@@ -181,7 +181,7 @@ static void *per_cpu_node_setup(void *cpu_data, int node)void __init setup_per_cpu_areas (void ) {struct pcpu_alloc_info *ai; -struct pcpu_group_info *uninitialized_var (gi ); +struct pcpu_group_info *gi;unsigned int *cpu_map;void *base;unsigned long base_offset;
arch/ia64/mm/tlb.c +1 -1
@@ -339,7 +339,7 @@ EXPORT_SYMBOL(flush_tlb_range);void ia64_tlb_init (void ) { -ia64_ptce_info_t uninitialized_var (ptce_info );/* GCC be quiet */ +ia64_ptce_info_t ptce_info;u64 tr_pgbits;long status;pal_vm_info_1_u_t vm_info_1;
arch/powerpc/Kconfig.debug +1 -1
@@ -232,7 +232,7 @@ config PPC_EARLY_DEBUG_40x config PPC_EARLY_DEBUG_CPM bool "Early serial debugging for Freescale CPM-based serial ports" - depends on SERIAL_CPM + depends on SERIAL_CPM=y help Select this to enable early debugging for Freescale chips using a CPM-based serial port. This assumes that the bootwrapper
arch/powerpc/include/asm/word-at-a-time.h +1 -1
@@ -34,7 +34,7 @@ static inline long find_zero(unsigned long mask)return leading_zero_bits >>3 ; } -static inline bool has_zero (unsigned long val,unsigned long *data,const struct word_at_a_time *c) +static inline unsigned long has_zero (unsigned long val,unsigned long *data,const struct word_at_a_time *c) {unsigned long rhs = val | c->low_bits; *data = rhs;
arch/powerpc/mm/init_64.c +1 -2
@@ -266,8 +266,7 @@ void __ref vmemmap_free(unsigned long start, unsigned long end, start =_ALIGN_DOWN (start, page_size);if (altmap) { alt_start = altmap->base_pfn; - alt_end = altmap->base_pfn + altmap->reserve + - altmap->free + altmap->alloc + altmap->align; + alt_end = altmap->base_pfn + altmap->reserve + altmap->free; }pr_debug ("vmemmap_free %lx...%lx\n" , start, end);
arch/powerpc/platforms/52xx/mpc52xx_pic.c +1 -1
@@ -340,7 +340,7 @@ static int mpc52xx_irqhost_map(struct irq_domain *h, unsigned int virq, {int l1irq;int l2irq; -struct irq_chip *uninitialized_var (irqchip ); +struct irq_chip *irqchip;void *hndlr;int type;u32 reg;
arch/s390/kernel/smp.c +1 -1
@@ -145,7 +145,7 @@ static int pcpu_sigp_retry(struct pcpu *pcpu, u8 order, u32 parm)static inline int pcpu_stopped (struct pcpu *pcpu) { -u32 uninitialized_var (status ); +u32 status;if (__pcpu_sigp (pcpu->address,SIGP_SENSE ,0 , &status) !=SIGP_CC_STATUS_STORED )
arch/s390/kernel/sthyi.c +3 -3
@@ -460,9 +460,9 @@ static int sthyi_update_cache(u64 *rc)* * Fills the destination with system information returned by the STHYI * instruction. The data is generated by emulation or execution of STHYI, -* if available. The return value is the condition code that would be -* returned, the rc parameter is the return code which is passed in -* register R2 + 1. +* if available. The return value is either a negative error value or +* the condition code that would be returned, the rc parameter is the +* return code which is passed in register R2 + 1. */ int sthyi_fill (void *dst,u64 *rc) {
arch/s390/kvm/intercept.c +6 -3
@@ -360,8 +360,8 @@ static int handle_partial_execution(struct kvm_vcpu *vcpu)*/ int handle_sthyi (struct kvm_vcpu *vcpu) { -int reg1, reg2, r =0 ; -u64 code, addr, cc =0 , rc =0 ; +int reg1, reg2, cc =0 , r =0 ; +u64 code, addr, rc =0 ;struct sthyi_sctns *sctns =NULL ;if (!test_kvm_facility (vcpu->kvm,74 ))
@@ -392,7 +392,10 @@ int handle_sthyi(struct kvm_vcpu *vcpu)return -ENOMEM ; cc =sthyi_fill (sctns, &rc); - +if (cc <0 ) { +free_page ((unsigned long )sctns); +return cc; + } out:if (!cc) { r =write_guest (vcpu, addr, reg2, sctns,PAGE_SIZE );
arch/s390/kvm/kvm-s390.c +4 -0
@@ -1716,6 +1716,10 @@ static unsigned long kvm_s390_next_dirty_cmma(struct kvm_memslots *slots, ms = slots->memslots + slotidx; ofs =0 ; } + +if (cur_gfn < ms->base_gfn) + ofs =0 ; + ofs =find_next_bit (kvm_second_dirty_bitmap (ms), ms->npages, ofs);while ((slotidx >0 ) && (ofs >= ms->npages)) { slotidx--;
arch/sh/drivers/dma/dma-sh.c +24 -13
@@ -21,6 +21,18 @@#include <cpu/dma-register.h> #include <cpu/dma.h> +/* +* Some of the SoCs feature two DMAC modules. In such a case, the channels are +* distributed equally among them. +*/ +#ifdef SH_DMAC_BASE1 +#define SH_DMAC_NR_MD_CH (CONFIG_NR_ONCHIP_DMA_CHANNELS / 2) +#else +#define SH_DMAC_NR_MD_CH CONFIG_NR_ONCHIP_DMA_CHANNELS +#endif + +#define SH_DMAC_CH_SZ 0x10 +/* * Define the default configuration for dual address memory-memory transfer. * The 0x400 value represents auto-request, external->external.
@@ -32,7 +44,7 @@ static unsigned long dma_find_base(unsigned int chan)unsigned long base =SH_DMAC_BASE0 ;#ifdef SH_DMAC_BASE1 -if (chan >=6 ) +if (chan >=SH_DMAC_NR_MD_CH ) base =SH_DMAC_BASE1 ;#endif
@@ -43,13 +55,13 @@ static unsigned long dma_base_addr(unsigned int chan) {unsigned long base =dma_find_base (chan); -/* Normalize offset calculation */ -if (chan >=9 ) - chan -=6 ; -if (chan >=4 ) - base +=0x10 ; + chan = (chan %SH_DMAC_NR_MD_CH ) *SH_DMAC_CH_SZ ; + +/* DMAOR is placed inside the channel register space. Step over it. */ +if (chan >=DMAOR ) + base +=SH_DMAC_CH_SZ ; -return base + (chan *0x10 ); +return base + chan; }#ifdef CONFIG_SH_DMA_IRQ_MULTI
@@ -253,12 +265,11 @@ static int sh_dmac_get_dma_residue(struct dma_channel *chan)#define NR_DMAOR 1#endif -/* -* DMAOR bases are broken out amongst channel groups. DMAOR0 manages -* channels 0 - 5, DMAOR1 6 - 11 (optional). -*/ -#define dmaor_read_reg (n) __raw_readw(dma_find_base((n)*6)) -#define dmaor_write_reg (n, data) __raw_writew(data, dma_find_base(n)*6) +#define dmaor_read_reg (n) __raw_readw(dma_find_base((n) * \ + SH_DMAC_NR_MD_CH) + DMAOR) +#define dmaor_write_reg (n, data) __raw_writew(data, \ + dma_find_base((n) * \ + SH_DMAC_NR_MD_CH) + DMAOR)static inline int dmaor_reset (int no) {
arch/sh/kernel/cpu/sh2/probe.c +1 -1
@@ -24,7 +24,7 @@ static int __init scan_cache(unsigned long node, const char *uname,if (!of_flat_dt_is_compatible (node,"jcore,cache" ))return 0 ; - j2_ccr_base = (u32 __iomem *)of_flat_dt_translate_address (node); + j2_ccr_base =ioremap (of_flat_dt_translate_address (node),4 );return 1 ; }
arch/x86/kernel/quirks.c +5 -5
@@ -96,7 +96,7 @@ static void ich_force_hpet_resume(void)static void ich_force_enable_hpet (struct pci_dev *dev) {u32 val; -u32 uninitialized_var (rcba ); +u32 rcba;int err =0 ;if (hpet_address || force_hpet_address)
@@ -186,7 +186,7 @@ static void hpet_print_force_info(void)static void old_ich_force_hpet_resume (void ) {u32 val; -u32 uninitialized_var (gen_cntl ); +u32 gen_cntl;if (!force_hpet_address || !cached_dev)return ;
@@ -208,7 +208,7 @@ static void old_ich_force_hpet_resume(void)static void old_ich_force_enable_hpet (struct pci_dev *dev) {u32 val; -u32 uninitialized_var (gen_cntl ); +u32 gen_cntl;if (hpet_address || force_hpet_address)return ;
@@ -299,7 +299,7 @@ static void vt8237_force_hpet_resume(void)static void vt8237_force_enable_hpet (struct pci_dev *dev) { -u32 uninitialized_var (val ); +u32 val;if (hpet_address || force_hpet_address)return ;
@@ -430,7 +430,7 @@ static void nvidia_force_hpet_resume(void)static void nvidia_force_enable_hpet (struct pci_dev *dev) { -u32 uninitialized_var (val ); +u32 val;if (hpet_address || force_hpet_address)return ;
arch/x86/kernel/smpboot.c +14 -10
@@ -96,6 +96,17 @@ DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_llc_shared_map); DEFINE_PER_CPU_READ_MOSTLY(struct cpuinfo_x86, cpu_info);EXPORT_PER_CPU_SYMBOL (cpu_info); +struct mwait_cpu_dead { +unsigned int control; +unsigned int status; +}; + +/* +* Cache line aligned data for mwait_play_dead(). Separate on purpose so +* that it's unlikely to be touched by other CPUs. +*/ +static DEFINE_PER_CPU_ALIGNED(struct mwait_cpu_dead, mwait_cpu_dead); +/* Logical package management. We might want to allocate that dynamically */ unsigned int __max_logical_packages__read_mostly ;EXPORT_SYMBOL (__max_logical_packages);
@@ -1595,10 +1606,10 @@ static bool wakeup_cpu0(void)*/ static inline void mwait_play_dead (void ) { +struct mwait_cpu_dead *md =this_cpu_ptr (&mwait_cpu_dead);unsigned int eax, ebx, ecx, edx;unsigned int highest_cstate =0 ;unsigned int highest_subcstate =0 ; -void *mwait_ptr;int i;if (boot_cpu_data.x86_vendor ==X86_VENDOR_AMD )
@@ -1632,13 +1643,6 @@ static inline void mwait_play_dead(void) (highest_subcstate -1 ); } -/* -* This should be a memory location in a cache line which is -* unlikely to be touched by other processors. The actual -* content is immaterial as it is not actually modified in any way. -*/ - mwait_ptr = ¤t_thread_info ()->flags; -wbinvd ();while (1 ) {
@@ -1650,9 +1654,9 @@ static inline void mwait_play_dead(void)* case where we return around the loop. */ mb (); -clflush (mwait_ptr); +clflush (md);mb (); -__monitor (mwait_ptr,0 ,0 ); +__monitor (md,0 ,0 );mb ();__mwait (eax,0 );/*
arch/xtensa/platforms/iss/network.c +1 -1
@@ -236,7 +236,7 @@ static int tuntap_probe(struct iss_net_private *lp, int index, char *init) init +=sizeof (TRANSPORT_TUNTAP_NAME ) -1 ;if (*init ==',' ) { - rem =split_if_spec (init +1 , &mac_str, &dev_name); + rem =split_if_spec (init +1 , &mac_str, &dev_name,NULL );if (rem !=NULL ) {pr_err ("%s: extra garbage on specification : '%s'\n" , dev->name, rem);
drivers/acpi/acpi_pad.c +1 -1
@@ -95,7 +95,7 @@ static void round_robin_cpu(unsigned int tsk_index)cpumask_var_t tmp;int cpu;unsigned long min_weight =-1 ; -unsigned long uninitialized_var (preferred_cpu ); +unsigned long preferred_cpu;if (!alloc_cpumask_var (&tmp,GFP_KERNEL ))return ;
drivers/ata/libata-scsi.c +1 -1
@@ -178,7 +178,7 @@ static ssize_t ata_scsi_park_show(struct device *device,struct ata_link *link;struct ata_device *dev;unsigned long now; -unsigned int uninitialized_var (msecs ); +unsigned int msecs;int rc =0 ; ap =ata_shost_to_port (sdev->host);
drivers/ata/pata_ns87415.c +1 -1
@@ -260,7 +260,7 @@ static u8 ns87560_check_status(struct ata_port *ap)* LOCKING: * Inherited from caller. */ -void ns87560_tf_read (struct ata_port *ap,struct ata_taskfile *tf) +static void ns87560_tf_read (struct ata_port *ap,struct ata_taskfile *tf) {struct ata_ioports *ioaddr = &ap->ioaddr;
drivers/atm/zatm.c +1 -1
@@ -939,7 +939,7 @@ static int open_tx_first(struct atm_vcc *vcc) vcc->qos.txtp.max_pcr >= ATM_OC3_PCR);if (unlimited && zatm_dev->ubr !=-1 ) zatm_vcc->shaper = zatm_dev->ubr; else { - int uninitialized_var(pcr); + int pcr; if (unlimited) vcc->qos.txtp.max_sdu = ATM_MAX_AAL5_PDU; if ((zatm_vcc->shaper = alloc_shaper(vcc->dev,&pcr,
drivers/base/arch_topology.c +1 -1
@@ -44,7 +44,7 @@ static ssize_t cpu_capacity_show(struct device *dev, { struct cpu *cpu = container_of(dev, struct cpu, dev); -return sprintf (buf,"%lu\n" ,topology_get_cpu_scale (NULL , cpu->dev.id)); +return sysfs_emit (buf,"%lu\n" ,topology_get_cpu_scale (NULL , cpu->dev.id)); } static ssize_t cpu_capacity_store(struct device *dev,
drivers/base/cacheinfo.c +9 -9
@@ -372,7 +372,7 @@ static ssize_t size_show(struct device *dev, {struct cacheinfo *this_leaf =dev_get_drvdata (dev); -return sprintf (buf,"%uK\n" , this_leaf->size >>10 ); +return sysfs_emit (buf,"%uK\n" , this_leaf->size >>10 ); }static ssize_t shared_cpumap_show_func (struct device *dev,bool list,char *buf)
@@ -402,11 +402,11 @@ static ssize_t type_show(struct device *dev,switch (this_leaf->type) {case CACHE_TYPE_DATA : -return sprintf (buf,"Data\n" ); +return sysfs_emit (buf,"Data\n" );case CACHE_TYPE_INST : -return sprintf (buf,"Instruction\n" ); +return sysfs_emit (buf,"Instruction\n" );case CACHE_TYPE_UNIFIED : -return sprintf (buf,"Unified\n" ); +return sysfs_emit (buf,"Unified\n" );default :return -EINVAL ; }
@@ -420,11 +420,11 @@ static ssize_t allocation_policy_show(struct device *dev,int n =0 ;if ((ci_attr &CACHE_READ_ALLOCATE ) && (ci_attr &CACHE_WRITE_ALLOCATE )) - n =sprintf (buf,"ReadWriteAllocate\n" ); + n =sysfs_emit (buf,"ReadWriteAllocate\n" );else if (ci_attr &CACHE_READ_ALLOCATE ) - n =sprintf (buf,"ReadAllocate\n" ); + n =sysfs_emit (buf,"ReadAllocate\n" );else if (ci_attr &CACHE_WRITE_ALLOCATE ) - n =sprintf (buf,"WriteAllocate\n" ); + n =sysfs_emit (buf,"WriteAllocate\n" );return n; }
@@ -436,9 +436,9 @@ static ssize_t write_policy_show(struct device *dev,int n =0 ;if (ci_attr &CACHE_WRITE_THROUGH ) - n =sprintf (buf,"WriteThrough\n" ); + n =sysfs_emit (buf,"WriteThrough\n" );else if (ci_attr &CACHE_WRITE_BACK ) - n =sprintf (buf,"WriteBack\n" ); + n =sysfs_emit (buf,"WriteBack\n" );return n; }
drivers/base/core.c +4 -4
@@ -994,7 +994,7 @@ ssize_t device_show_ulong(struct device *dev, char *buf) {struct dev_ext_attribute *ea =to_ext_attr (attr); -return snprintf (buf,PAGE_SIZE ,"%lx\n" , *(unsigned long *)(ea->var)); +return sysfs_emit (buf,"%lx\n" , *(unsigned long *)(ea->var)); }EXPORT_SYMBOL_GPL (device_show_ulong);
@@ -1019,7 +1019,7 @@ ssize_t device_show_int(struct device *dev, {struct dev_ext_attribute *ea =to_ext_attr (attr); -return snprintf (buf,PAGE_SIZE ,"%d\n" , *(int *)(ea->var)); +return sysfs_emit (buf,"%d\n" , *(int *)(ea->var)); }EXPORT_SYMBOL_GPL (device_show_int);
@@ -1040,7 +1040,7 @@ ssize_t device_show_bool(struct device *dev, struct device_attribute *attr, {struct dev_ext_attribute *ea =to_ext_attr (attr); -return snprintf (buf,PAGE_SIZE ,"%d\n" , *(bool *)(ea->var)); +return sysfs_emit (buf,"%d\n" , *(bool *)(ea->var)); }EXPORT_SYMBOL_GPL (device_show_bool);
@@ -1273,7 +1273,7 @@ static ssize_t online_show(struct device *dev, struct device_attribute *attr,device_lock (dev); val = !dev->offline;device_unlock (dev); -return sprintf (buf,"%u\n" , val); +return sysfs_emit (buf,"%u\n" , val); } static ssize_t online_store(struct device *dev, struct device_attribute *attr,
drivers/base/cpu.c +17 -17
@@ -156,7 +156,7 @@ static ssize_t show_crash_notes(struct device *dev, struct device_attribute *att* operation should be safe. No locking required. */ addr =per_cpu_ptr_to_phys (per_cpu_ptr (crash_notes, cpunum)); - rc =sprintf (buf,"%Lx\n" , addr); + rc =sysfs_emit (buf,"%Lx\n" , addr);return rc; } static DEVICE_ATTR(crash_notes, 0400, show_crash_notes, NULL);
@@ -167,7 +167,7 @@ static ssize_t show_crash_notes_size(struct device *dev, {ssize_t rc; - rc =sprintf (buf,"%zu\n" ,sizeof (note_buf_t)); + rc =sysfs_emit (buf,"%zu\n" ,sizeof (note_buf_t));return rc; } static DEVICE_ATTR(crash_notes_size, 0400, show_crash_notes_size, NULL);
@@ -264,7 +264,7 @@ static ssize_t print_cpus_offline(struct device *dev, nr_cpu_ids, total_cpus-1); } - n +=snprintf (&buf[n], len - n,"\n" ); + n +=sysfs_emit (&buf[n],"\n" );return n; } static DEVICE_ATTR(offline, 0444, print_cpus_offline, NULL);
@@ -272,7 +272,7 @@ static DEVICE_ATTR(offline, 0444, print_cpus_offline, NULL);static ssize_t print_cpus_isolated (struct device *dev,struct device_attribute *attr,char *buf) { -int n =0 , len =PAGE_SIZE -2 ; +int n =0 ;cpumask_var_t isolated;if (!alloc_cpumask_var (&isolated,GFP_KERNEL ))
@@ -280,7 +280,7 @@ static ssize_t print_cpus_isolated(struct device *dev,cpumask_andnot (isolated, cpu_possible_mask,housekeeping_cpumask (HK_FLAG_DOMAIN )); - n =scnprintf (buf, len,"%*pbl\n" ,cpumask_pr_args (isolated)); + n =sysfs_emit (buf,"%*pbl\n" ,cpumask_pr_args (isolated));free_cpumask_var (isolated);
@@ -292,9 +292,9 @@ static DEVICE_ATTR(isolated, 0444, print_cpus_isolated, NULL);static ssize_t print_cpus_nohz_full (struct device *dev,struct device_attribute *attr,char *buf) { -int n =0 , len =PAGE_SIZE -2 ; +int n =0 ; - n =scnprintf (buf, len,"%*pbl\n" ,cpumask_pr_args (tick_nohz_full_mask)); + n =sysfs_emit (buf,"%*pbl\n" ,cpumask_pr_args (tick_nohz_full_mask));return n; }
@@ -328,7 +328,7 @@ static ssize_t print_cpu_modalias(struct device *dev,ssize_t n;u32 i; - n =sprintf (buf,"cpu:type:" CPU_FEATURE_TYPEFMT ":feature:" , + n =sysfs_emit (buf,"cpu:type:" CPU_FEATURE_TYPEFMT ":feature:" ,CPU_FEATURE_TYPEVAL );for (i =0 ; i <MAX_CPU_FEATURES ; i++)
@@ -520,56 +520,56 @@ static void __init cpu_dev_register_generic(void)ssize_t __weak cpu_show_meltdown (struct device *dev,struct device_attribute *attr,char *buf) { -return sprintf (buf,"Not affected\n" ); +return sysfs_emit (buf,"Not affected\n" ); }ssize_t __weak cpu_show_spectre_v1 (struct device *dev,struct device_attribute *attr,char *buf) { -return sprintf (buf,"Not affected\n" ); +return sysfs_emit (buf,"Not affected\n" ); }ssize_t __weak cpu_show_spectre_v2 (struct device *dev,struct device_attribute *attr,char *buf) { -return sprintf (buf,"Not affected\n" ); +return sysfs_emit (buf,"Not affected\n" ); }ssize_t __weak cpu_show_spec_store_bypass (struct device *dev,struct device_attribute *attr,char *buf) { -return sprintf (buf,"Not affected\n" ); +return sysfs_emit (buf,"Not affected\n" ); }ssize_t __weak cpu_show_l1tf (struct device *dev,struct device_attribute *attr,char *buf) { -return sprintf (buf,"Not affected\n" ); +return sysfs_emit (buf,"Not affected\n" ); }ssize_t __weak cpu_show_mds (struct device *dev,struct device_attribute *attr,char *buf) { -return sprintf (buf,"Not affected\n" ); +return sysfs_emit (buf,"Not affected\n" ); }ssize_t __weak cpu_show_tsx_async_abort (struct device *dev,struct device_attribute *attr,char *buf) { -return sprintf (buf,"Not affected\n" ); +return sysfs_emit (buf,"Not affected\n" ); }ssize_t __weak cpu_show_itlb_multihit (struct device *dev,struct device_attribute *attr,char *buf) { -return sprintf (buf,"Not affected\n" ); +return sysfs_emit (buf,"Not affected\n" ); }ssize_t __weak cpu_show_srbds (struct device *dev,struct device_attribute *attr,char *buf) { -return sprintf (buf,"Not affected\n" ); +return sysfs_emit (buf,"Not affected\n" ); } ssize_t __weak cpu_show_mmio_stale_data(struct device *dev,
drivers/base/firmware_loader/fallback.c +1 -1
@@ -215,7 +215,7 @@ static ssize_t firmware_loading_show(struct device *dev, loading =fw_sysfs_loading (fw_sysfs->fw_priv);mutex_unlock (&fw_lock); -return sprintf (buf,"%d\n" , loading); +return sysfs_emit (buf,"%d\n" , loading); }/* one pages buffer should be mapped/unmapped only once */
drivers/base/memory.c +12 -12
@@ -121,7 +121,7 @@ static ssize_t show_mem_start_phys_index(struct device *dev,unsigned long phys_index; phys_index = mem->start_section_nr / sections_per_block; -return sprintf (buf,"%08lx\n" , phys_index); +return sysfs_emit (buf,"%08lx\n" , phys_index); }/*
@@ -145,7 +145,7 @@ static ssize_t show_mem_removable(struct device *dev, } out: -return sprintf (buf,"%d\n" , ret); +return sysfs_emit (buf,"%d\n" , ret); }/*
@@ -163,17 +163,17 @@ static ssize_t show_mem_state(struct device *dev,*/ switch (mem->state) {case MEM_ONLINE : - len =sprintf (buf,"online\n" ); + len =sysfs_emit (buf,"online\n" );break ;case MEM_OFFLINE : - len =sprintf (buf,"offline\n" ); + len =sysfs_emit (buf,"offline\n" );break ;case MEM_GOING_OFFLINE : - len =sprintf (buf,"going-offline\n" ); + len =sysfs_emit (buf,"going-offline\n" );break ;default : - len =sprintf (buf,"ERROR-UNKNOWN-%ld\n" , - mem->state); + len =sysfs_emit (buf,"ERROR-UNKNOWN-%ld\n" , + mem->state);WARN_ON (1 );break ; }
@@ -384,7 +384,7 @@ static ssize_t show_phys_device(struct device *dev, struct device_attribute *attr, char *buf) { struct memory_block *mem = to_memory_block(dev); -return sprintf (buf,"%d\n" , mem->phys_device); +return sysfs_emit (buf,"%d\n" , mem->phys_device); }#ifdef CONFIG_MEMORY_HOTREMOVE
@@ -422,7 +422,7 @@ static ssize_t show_valid_zones(struct device *dev,*/ if (!test_pages_in_a_zone (start_pfn, start_pfn + nr_pages, &valid_start_pfn, &valid_end_pfn)) -return sprintf (buf,"none\n" ); +return sysfs_emit (buf,"none\n" ); start_pfn = valid_start_pfn;strcat (buf,page_zone (pfn_to_page (start_pfn))->name); goto out;
@@ -456,7 +456,7 @@ static ssize_t print_block_size(struct device *dev, struct device_attribute *attr, char *buf) { - return sprintf(buf, "%lx\n", get_memory_block_size()); + return sysfs_emit(buf, "%lx\n", get_memory_block_size()); } static DEVICE_ATTR(block_size_bytes, 0444, print_block_size, NULL);
@@ -470,9 +470,9 @@ show_auto_online_blocks(struct device *dev, struct device_attribute *attr, char *buf) {if (memhp_auto_online) -return sprintf (buf,"online\n" ); +return sysfs_emit (buf,"online\n" );else -return sprintf (buf,"offline\n" ); +return sysfs_emit (buf,"offline\n" ); } static ssize_t
drivers/base/node.c +17 -17
@@ -69,7 +69,7 @@ static ssize_t node_read_meminfo(struct device *dev,struct sysinfo i;si_meminfo_node (&i, nid); - n =sprintf (buf, + n =sysfs_emit (buf,"Node %d MemTotal: %8lu kB\n" "Node %d MemFree: %8lu kB\n" "Node %d MemUsed: %8lu kB\n"
@@ -96,7 +96,7 @@ static ssize_t node_read_meminfo(struct device *dev, nid, K(sum_zone_node_page_state(nid, NR_MLOCK)));#ifdef CONFIG_HIGHMEM - n +=sprintf (buf + n, + n +=sysfs_emit (buf + n,"Node %d HighTotal: %8lu kB\n" "Node %d HighFree: %8lu kB\n" "Node %d LowTotal: %8lu kB\n"
@@ -106,7 +106,7 @@ static ssize_t node_read_meminfo(struct device *dev, nid,K (i.totalram - i.totalhigh), nid, K(i.freeram - i.freehigh));#endif - n +=sprintf (buf + n, + n +=sysfs_emit (buf + n,"Node %d Dirty: %8lu kB\n" "Node %d Writeback: %8lu kB\n" "Node %d FilePages: %8lu kB\n"
@@ -162,19 +162,19 @@ static DEVICE_ATTR(meminfo, S_IRUGO, node_read_meminfo, NULL);static ssize_t node_read_numastat (struct device *dev,struct device_attribute *attr,char *buf) { -return sprintf (buf, -"numa_hit %lu\n" -"numa_miss %lu\n" -"numa_foreign %lu\n" -"interleave_hit %lu\n" -"local_node %lu\n" -"other_node %lu\n" , -sum_zone_numa_state (dev->id,NUMA_HIT ), -sum_zone_numa_state (dev->id,NUMA_MISS ), -sum_zone_numa_state (dev->id,NUMA_FOREIGN ), -sum_zone_numa_state (dev->id,NUMA_INTERLEAVE_HIT ), -sum_zone_numa_state (dev->id,NUMA_LOCAL ), -sum_zone_numa_state (dev->id,NUMA_OTHER )); +return sysfs_emit (buf, +"numa_hit %lu\n" +"numa_miss %lu\n" +"numa_foreign %lu\n" +"interleave_hit %lu\n" +"local_node %lu\n" +"other_node %lu\n" , +sum_zone_numa_state (dev->id,NUMA_HIT ), +sum_zone_numa_state (dev->id,NUMA_MISS ), +sum_zone_numa_state (dev->id,NUMA_FOREIGN ), +sum_zone_numa_state (dev->id,NUMA_INTERLEAVE_HIT ), +sum_zone_numa_state (dev->id,NUMA_LOCAL ), +sum_zone_numa_state (dev->id,NUMA_OTHER )); } static DEVICE_ATTR(numastat, S_IRUGO, node_read_numastat, NULL);
@@ -612,7 +612,7 @@ static ssize_t print_nodes_state(enum node_states state, char *buf) {int n; - n =scnprintf (buf,PAGE_SIZE -1 ,"%*pbl" , + n =sysfs_emit (buf,"%*pbl" ,nodemask_pr_args (&node_states[state])); buf[n++] ='\n' ; buf[n] ='\0' ;
drivers/base/platform.c +1 -1
@@ -927,7 +927,7 @@ static ssize_t driver_override_show(struct device *dev,ssize_t len;device_lock (dev); - len =sprintf (buf,"%s\n" , pdev->driver_override); + len =sysfs_emit (buf,"%s\n" , pdev->driver_override);device_unlock (dev);return len; }
drivers/base/power/domain.c +3 -3
@@ -2433,10 +2433,10 @@ static int genpd_parse_state(struct genpd_power_state *genpd_state, err =of_property_read_u32 (state_node,"min-residency-us" , &residency);if (!err) - genpd_state->residency_ns =1000 * residency; + genpd_state->residency_ns =1000LL * residency; - genpd_state->power_on_latency_ns =1000 * exit_latency; - genpd_state->power_off_latency_ns =1000 * entry_latency; + genpd_state->power_on_latency_ns =1000LL * exit_latency; + genpd_state->power_off_latency_ns =1000LL * entry_latency; genpd_state->fwnode = &state_node->fwnode;return 0 ;
drivers/base/power/power.h +6 -2
@@ -24,8 +24,11 @@ extern void pm_runtime_remove(struct device *dev);#define WAKE_IRQ_DEDICATED_ALLOCATED BIT(0)#define WAKE_IRQ_DEDICATED_MANAGED BIT(1) +#define WAKE_IRQ_DEDICATED_REVERSE BIT(2)#define WAKE_IRQ_DEDICATED_MASK (WAKE_IRQ_DEDICATED_ALLOCATED | \ - WAKE_IRQ_DEDICATED_MANAGED) + WAKE_IRQ_DEDICATED_MANAGED | \ + WAKE_IRQ_DEDICATED_REVERSE) +#define WAKE_IRQ_DEDICATED_ENABLED BIT(3)struct wake_irq {struct device *dev;
@@ -38,7 +41,8 @@ extern void dev_pm_arm_wake_irq(struct wake_irq *wirq);extern void dev_pm_disarm_wake_irq (struct wake_irq *wirq);extern void dev_pm_enable_wake_irq_check (struct device *dev,bool can_change_status); -extern void dev_pm_disable_wake_irq_check (struct device *dev); +extern void dev_pm_disable_wake_irq_check (struct device *dev,bool cond_disable); +extern void dev_pm_enable_wake_irq_complete (struct device *dev);#ifdef CONFIG_PM_SLEEP
drivers/base/power/runtime.c +4 -2
@@ -606,6 +606,8 @@ static int rpm_suspend(struct device *dev, int rpmflags)if (retval) goto fail; +dev_pm_enable_wake_irq_complete (dev); + no_callback:__update_runtime_status (dev,RPM_SUSPENDED );pm_runtime_deactivate_timer (dev);
@@ -640,7 +642,7 @@ static int rpm_suspend(struct device *dev, int rpmflags)return retval; fail: -dev_pm_disable_wake_irq_check (dev); +dev_pm_disable_wake_irq_check (dev, true);__update_runtime_status (dev,RPM_ACTIVE ); dev->power.deferred_resume = false;wake_up_all (&dev->power.wait_queue);
@@ -823,7 +825,7 @@ static int rpm_resume(struct device *dev, int rpmflags) callback =RPM_GET_CALLBACK (dev, runtime_resume); -dev_pm_disable_wake_irq_check (dev); +dev_pm_disable_wake_irq_check (dev, false); retval =rpm_callback (callback, dev);if (retval) {__update_runtime_status (dev,RPM_SUSPENDED );
drivers/base/power/sysfs.c +25 -25
135 lines not on this page · raw message
drivers/base/power/wakeirq.c +87 -24
165 lines not on this page · raw message
drivers/base/soc.c +4 -4
@@ -72,13 +72,13 @@ static ssize_t soc_info_get(struct device *dev, struct soc_device *soc_dev = container_of(dev, struct soc_device, dev);if (attr == &dev_attr_machine) -return sprintf (buf,"%s\n" , soc_dev->attr->machine); +return sysfs_emit (buf,"%s\n" , soc_dev->attr->machine);if (attr == &dev_attr_family) -return sprintf (buf,"%s\n" , soc_dev->attr->family); +return sysfs_emit (buf,"%s\n" , soc_dev->attr->family);if (attr == &dev_attr_revision) -return sprintf (buf,"%s\n" , soc_dev->attr->revision); +return sysfs_emit (buf,"%s\n" , soc_dev->attr->revision);if (attr == &dev_attr_soc_id) -return sprintf (buf,"%s\n" , soc_dev->attr->soc_id); +return sysfs_emit (buf,"%s\n" , soc_dev->attr->soc_id);return -EINVAL ;
drivers/block/drbd/drbd_nl.c +3 -3
@@ -3394,7 +3394,7 @@ int drbd_adm_dump_devices(struct sk_buff *skb, struct netlink_callback *cb) {struct nlattr *resource_filter;struct drbd_resource *resource; -struct drbd_device *uninitialized_var (device ); +struct drbd_device *device;int minor, err, retcode;struct drbd_genlmsghdr *dh;struct device_info device_info;
@@ -3483,7 +3483,7 @@ int drbd_adm_dump_connections(struct sk_buff *skb, struct netlink_callback *cb) {struct nlattr *resource_filter;struct drbd_resource *resource =NULL , *next_resource; -struct drbd_connection *uninitialized_var (connection ); +struct drbd_connection *connection;int err =0 , retcode;struct drbd_genlmsghdr *dh;struct connection_info connection_info;
@@ -3645,7 +3645,7 @@ int drbd_adm_dump_peer_devices(struct sk_buff *skb, struct netlink_callback *cb) {struct nlattr *resource_filter;struct drbd_resource *resource; -struct drbd_device *uninitialized_var (device ); +struct drbd_device *device;struct drbd_peer_device *peer_device =NULL ;int minor, err, retcode;struct drbd_genlmsghdr *dh;
drivers/block/loop.c +2 -1
@@ -1991,7 +1991,8 @@ static int loop_add(struct loop_device **l, int i) lo->tag_set.queue_depth =128 ; lo->tag_set.numa_node =NUMA_NO_NODE ; lo->tag_set.cmd_size =sizeof (struct loop_cmd ); - lo->tag_set.flags =BLK_MQ_F_SHOULD_MERGE |BLK_MQ_F_SG_MERGE ; + lo->tag_set.flags =BLK_MQ_F_SHOULD_MERGE |BLK_MQ_F_SG_MERGE | +BLK_MQ_F_NO_SCHED ; lo->tag_set.driver_data = lo; err =blk_mq_alloc_tag_set (&lo->tag_set);
drivers/block/nbd.c +2 -1
@@ -1646,7 +1646,8 @@ static int nbd_dev_add(int index)if (err == -ENOSPC ) err = -EEXIST ; }else { - err =idr_alloc (&nbd_index_idr, nbd,0 ,0 ,GFP_KERNEL ); + err =idr_alloc (&nbd_index_idr, nbd,0 , + (MINORMASK >> part_shift) +1 ,GFP_KERNEL );if (err >=0 ) index = err; }
drivers/char/hw_random/imx-rngc.c +2 -4
@@ -105,7 +105,7 @@ static int imx_rngc_self_test(struct imx_rngc *rngc) cmd =readl (rngc->base +RNGC_COMMAND );writel (cmd |RNGC_CMD_SELF_TEST , rngc->base +RNGC_COMMAND ); - ret =wait_for_completion_timeout (&rngc->rng_op_done,RNGC_TIMEOUT ); + ret =wait_for_completion_timeout (&rngc->rng_op_done,msecs_to_jiffies (RNGC_TIMEOUT ));if (!ret) {imx_rngc_irq_mask_clear (rngc);return -ETIMEDOUT ;
@@ -188,9 +188,7 @@ static int imx_rngc_init(struct hwrng *rng) cmd =readl (rngc->base +RNGC_COMMAND );writel (cmd |RNGC_CMD_SEED , rngc->base +RNGC_COMMAND ); - ret =wait_for_completion_timeout (&rngc->rng_op_done, -RNGC_TIMEOUT ); - + ret =wait_for_completion_timeout (&rngc->rng_op_done,msecs_to_jiffies (RNGC_TIMEOUT ));if (!ret) {imx_rngc_irq_mask_clear (rngc);return -ETIMEDOUT ;
drivers/char/hw_random/virtio-rng.c +66 -22
158 lines not on this page · raw message
drivers/char/tpm/tpm_tis_core.c +8 -2
@@ -270,6 +270,7 @@ static int tpm_tis_recv(struct tpm_chip *chip, u8 *buf, size_t count)int size =0 ;int status;u32 expected; +int rc;if (count <TPM_HEADER_SIZE ) { size = -EIO ;
@@ -289,8 +290,13 @@ static int tpm_tis_recv(struct tpm_chip *chip, u8 *buf, size_t count) goto out; } - size +=recv_data (chip, &buf[TPM_HEADER_SIZE ], - expected -TPM_HEADER_SIZE ); + rc =recv_data (chip, &buf[TPM_HEADER_SIZE ], + expected -TPM_HEADER_SIZE ); +if (rc <0 ) { + size = rc; + goto out; + } + size += rc;if (size < expected) {dev_err (&chip->dev,"Unable to read remainder of result\n" ); size = -ETIME ;
drivers/char/tpm/tpm_vtpm_proxy.c +7 -23
@@ -700,37 +700,21 @@ static struct miscdevice vtpmx_miscdev = { .fops = &vtpmx_fops, }; -static int vtpmx_init (void ) -{ -return misc_register (&vtpmx_miscdev); -} - -static void vtpmx_cleanup (void ) -{ -misc_deregister (&vtpmx_miscdev); -} -static int __init vtpm_module_init (void ) {int rc; - rc =vtpmx_init (); -if (rc) { -pr_err ("couldn't create vtpmx device\n" ); -return rc; - } - workqueue =create_workqueue ("tpm-vtpm" );if (!workqueue) {pr_err ("couldn't create workqueue\n" ); - rc = -ENOMEM ; - goto err_vtpmx_cleanup; +return -ENOMEM ; } -return 0 ; - -err_vtpmx_cleanup: -vtpmx_cleanup (); + rc =misc_register (&vtpmx_miscdev); +if (rc) { +pr_err ("couldn't create vtpmx device\n" ); +destroy_workqueue (workqueue); + }return rc; }
@@ -738,7 +722,7 @@ static int __init vtpm_module_init(void) static void __exit vtpm_module_exit(void) {destroy_workqueue (workqueue); -vtpmx_cleanup (); +misc_deregister (&vtpmx_miscdev); }module_init (vtpm_module_init);
drivers/clk/clk-gate.c +1 -1
@@ -43,7 +43,7 @@ static void clk_gate_endisable(struct clk_hw *hw, int enable) {struct clk_gate *gate =to_clk_gate (hw);int set = gate->flags &CLK_GATE_SET_TO_DISABLE ?1 :0 ; -unsigned long uninitialized_var (flags ); +unsigned long flags;u32 reg; set ^= enable;
drivers/clocksource/Makefile +13 -13
@@ -23,8 +23,8 @@ obj-$(CONFIG_FTTMR010_TIMER) += timer-fttmr010.o obj-$(CONFIG_ROCKCHIP_TIMER) += rockchip_timer.o obj-$(CONFIG_CLKSRC_NOMADIK_MTU) += nomadik-mtu.o obj-$(CONFIG_CLKSRC_DBX500_PRCMU) += clksrc-dbx500-prcmu.o -obj-$(CONFIG_ARMADA_370_XP_TIMER) += time-armada-370-xp.o -obj-$(CONFIG_ORION_TIMER) += time-orion.o +obj-$(CONFIG_ARMADA_370_XP_TIMER) += timer-armada-370-xp.o +obj-$(CONFIG_ORION_TIMER) += timer-orion.o obj-$(CONFIG_BCM2835_TIMER) += bcm2835_timer.o obj-$(CONFIG_CLPS711X_TIMER) += clps711x-timer.o obj-$(CONFIG_ATLAS7_TIMER) += timer-atlas7.o
@@ -36,25 +36,25 @@ obj-$(CONFIG_SUN4I_TIMER) += sun4i_timer.o obj-$(CONFIG_SUN5I_HSTIMER) += timer-sun5i.o obj-$(CONFIG_MESON6_TIMER) += meson6_timer.o obj-$(CONFIG_TEGRA_TIMER) += tegra20_timer.o -obj-$(CONFIG_VT8500_TIMER) += vt8500_timer.o -obj-$(CONFIG_NSPIRE_TIMER) += zevio-timer.o +obj-$(CONFIG_VT8500_TIMER) += timer-vt8500.o +obj-$(CONFIG_NSPIRE_TIMER) += timer-zevio.o obj-$(CONFIG_BCM_KONA_TIMER) += bcm_kona_timer.o -obj-$(CONFIG_CADENCE_TTC_TIMER) += cadence_ttc_timer.o -obj-$(CONFIG_CLKSRC_EFM32) += time-efm32.o +obj-$(CONFIG_CADENCE_TTC_TIMER) += timer-cadence-ttc.o +obj-$(CONFIG_CLKSRC_EFM32) += timer-efm32.o obj-$(CONFIG_CLKSRC_STM32) += timer-stm32.o obj-$(CONFIG_CLKSRC_EXYNOS_MCT) += exynos_mct.o -obj-$(CONFIG_CLKSRC_LPC32XX) += time-lpc32xx.o +obj-$(CONFIG_CLKSRC_LPC32XX) += timer-lpc32xx.o obj-$(CONFIG_CLKSRC_MPS2) += mps2-timer.o obj-$(CONFIG_CLKSRC_SAMSUNG_PWM) += samsung_pwm_timer.o -obj-$(CONFIG_FSL_FTM_TIMER) += fsl_ftm_timer.o -obj-$(CONFIG_VF_PIT_TIMER) += vf_pit_timer.o -obj-$(CONFIG_CLKSRC_QCOM) += qcom-timer.o +obj-$(CONFIG_FSL_FTM_TIMER) += timer-fsl-ftm.o +obj-$(CONFIG_VF_PIT_TIMER) += timer-vf-pit.o +obj-$(CONFIG_CLKSRC_QCOM) += timer-qcom.o obj-$(CONFIG_MTK_TIMER) += timer-mediatek.o -obj-$(CONFIG_CLKSRC_PISTACHIO) += time-pistachio.o +obj-$(CONFIG_CLKSRC_PISTACHIO) += timer-pistachio.o obj-$(CONFIG_CLKSRC_TI_32K) += timer-ti-32k.o obj-$(CONFIG_CLKSRC_NPS) += timer-nps.o obj-$(CONFIG_OXNAS_RPS_TIMER) += timer-oxnas-rps.o -obj-$(CONFIG_OWL_TIMER) += owl-timer.o +obj-$(CONFIG_OWL_TIMER) += timer-owl.o obj-$(CONFIG_SPRD_TIMER) += timer-sprd.o obj-$(CONFIG_NPCM7XX_TIMER) += timer-npcm7xx.o
@@ -66,7 +66,7 @@ obj-$(CONFIG_ARM_TIMER_SP804) += timer-sp804.o obj-$(CONFIG_ARCH_HAS_TICK_BROADCAST) += dummy_timer.o obj-$(CONFIG_KEYSTONE_TIMER) += timer-keystone.o obj-$(CONFIG_INTEGRATOR_AP_TIMER) += timer-integrator-ap.o -obj-$(CONFIG_CLKSRC_VERSATILE) += versatile.o +obj-$(CONFIG_CLKSRC_VERSATILE) += timer-versatile.o obj-$(CONFIG_CLKSRC_MIPS_GIC) += mips-gic-timer.o obj-$(CONFIG_CLKSRC_TANGO_XTAL) += tango_xtal.o obj-$(CONFIG_CLKSRC_IMX_GPT) += timer-imx-gpt.o
drivers/clocksource/cadence_ttc_timer.c deleted +0 -543
543 lines not on this page · raw message
drivers/clocksource/fsl_ftm_timer.c deleted +0 -376
218 lines not on this page · raw message
drivers/clocksource/owl-timer.c deleted +0 -173
173 lines not on this page · raw message
drivers/clocksource/qcom-timer.c deleted +0 -258
258 lines not on this page · raw message
drivers/clocksource/time-armada-370-xp.c deleted +0 -416
416 lines not on this page · raw message
drivers/clocksource/time-efm32.c deleted +0 -287
287 lines not on this page · raw message
drivers/clocksource/time-lpc32xx.c deleted +0 -314
314 lines not on this page · raw message
drivers/clocksource/time-orion.c deleted +0 -192
192 lines not on this page · raw message
drivers/clocksource/time-pistachio.c deleted +0 -218
218 lines not on this page · raw message
drivers/clocksource/timer-armada-370-xp.c new file +416 -0
416 lines not on this page · raw message
drivers/clocksource/timer-cadence-ttc.c new file +560 -0
560 lines not on this page · raw message
drivers/clocksource/timer-efm32.c new file +287 -0
287 lines not on this page · raw message
drivers/clocksource/timer-fsl-ftm.c new file +376 -0
376 lines not on this page · raw message
drivers/clocksource/timer-lpc32xx.c new file +314 -0
314 lines not on this page · raw message
drivers/clocksource/timer-orion.c new file +192 -0
192 lines not on this page · raw message
drivers/clocksource/timer-owl.c new file +173 -0
173 lines not on this page · raw message
drivers/clocksource/timer-pistachio.c new file +218 -0
218 lines not on this page · raw message
drivers/clocksource/timer-qcom.c new file +258 -0
258 lines not on this page · raw message
drivers/clocksource/timer-versatile.c new file +44 -0
44 lines not on this page · raw message
drivers/clocksource/timer-vf-pit.c new file +204 -0
204 lines not on this page · raw message
drivers/clocksource/timer-vt8500.c new file +168 -0
168 lines not on this page · raw message
drivers/clocksource/timer-zevio.c new file +218 -0
218 lines not on this page · raw message
drivers/clocksource/versatile.c deleted +0 -44
44 lines not on this page · raw message
drivers/clocksource/vf_pit_timer.c deleted +0 -204
204 lines not on this page · raw message
drivers/clocksource/vt8500_timer.c deleted +0 -168
168 lines not on this page · raw message
drivers/clocksource/zevio-timer.c deleted +0 -218
218 lines not on this page · raw message
drivers/gpu/drm/exynos/exynos_drm_dsi.c +3 -3
Lines of this file are not shown. View the raw message.
drivers/md/raid0.c +54 -8
62 lines not on this page · raw message
drivers/net/ethernet/atheros/atl1e/atl1e_main.c +5 -2
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/broadcom/genet/bcmmii.c +2 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/emulex/benet/be_main.c +2 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/i40e/i40e_debugfs.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/intel/igb/igb_main.c +5 -0
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_rxtx.c +3 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/mellanox/mlx5/core/pagealloc.c +2 -2
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/microchip/lan743x_main.c +17 -4
Lines of this file are not shown. View the raw message.
drivers/net/wireless/ath/ath9k/ar9003_hw.c +18 -9
Lines of this file are not shown. View the raw message.
drivers/net/wireless/ath/ath9k/htc_hst.c +7 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/broadcom/b43/debugfs.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/broadcom/b43/dma.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/broadcom/b43/phy_n.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/broadcom/b43/xmit.c +6 -6
Lines of this file are not shown. View the raw message.
drivers/net/wireless/broadcom/b43legacy/debugfs.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/broadcom/b43legacy/main.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/iwlegacy/3945.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/iwlegacy/4965-mac.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/iwlwifi/mvm/sta.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intersil/orinoco/orinoco_cs.c +11 -2
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intersil/orinoco/spectrum_cs.c +11 -2
Lines of this file are not shown. View the raw message.
drivers/net/wireless/marvell/mwifiex/scan.c +3 -3
Lines of this file are not shown. View the raw message.
drivers/net/wireless/rsi/rsi_91x_sdio.c +0 -3
Lines of this file are not shown. View the raw message.
drivers/net/wireless/wl3501_cs.c +27 -24
51 lines not on this page · raw message
drivers/pci/controller/pcie-rockchip-ep.c +23 -41
64 lines not on this page · raw message
drivers/pci/controller/pcie-rockchip.c +17 -0
Lines of this file are not shown. View the raw message.
drivers/pci/controller/pcie-rockchip.h +10 -1
Lines of this file are not shown. View the raw message.
drivers/pci/pcie/aspm.c +37 -20
57 lines not on this page · raw message
drivers/phy/hisilicon/phy-hisi-inno-usb2.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/pinctrl/intel/pinctrl-cherryview.c +10 -5
Lines of this file are not shown. View the raw message.
drivers/pinctrl/pinctrl-amd.c +26 -15
41 lines not on this page · raw message
drivers/tty/serial/8250/8250_dwlib.c new file +128 -0
128 lines not on this page · raw message
drivers/tty/serial/8250/8250_dwlib.h new file +19 -0
Lines of this file are not shown. View the raw message.
drivers/usb/serial/usb-serial-simple.c +40 -33
73 lines not on this page · raw message
drivers/video/fbdev/matrox/matroxfb_maven.c +3 -3
Lines of this file are not shown. View the raw message.
fs/dlm/plock.c +60 -44
104 lines not on this page · raw message
include/uapi/linux/affs_hardblocks.h +34 -34
68 lines not on this page · raw message
kernel/trace/ftrace.c +54 -21
75 lines not on this page · raw message
kernel/trace/ring_buffer.c +28 -20
48 lines not on this page · raw message
net/ipv4/tcp_metrics.c +44 -26
70 lines not on this page · raw message
net/netfilter/nf_conntrack_netlink.c +21 -56
77 lines not on this page · raw message
net/netfilter/nf_tables_api.c +284 -202
486 lines not on this page · raw message
net/nfc/llcp_commands.c +26 -21
47 lines not on this page · raw message
net/nfc/llcp_core.c +24 -20
44 lines not on this page · raw message
net/sched/cls_u32.c +63 -14
77 lines not on this page · raw message
net/sched/sch_mqprio.c +93 -51
144 lines not on this page · raw message
tools/perf/tests/shell/test_uprobe_from_different_cu.sh new file +83 -0
83 lines not on this page · raw message
tools/perf/util/intel-pt-decoder/intel-pt-decoder.c +2 -0
Lines of this file are not shown. View the raw message.
The rest of this diff is not shown. View the raw message.
Part of the diff is not shown here. View the raw message.