Skip to contentSkip to conversation

Linux 4.19.178

DISCUSSION Greg Kroah-Hartman 1 participant 2 messages Mar 4, 2021 Stable branch

lore
Share & tools
lore

Greg Kroah-Hartman

author maintainer
#0 lore raw

I'm announcing the release of the 4.19.178 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/filesystems/seq_file.txt                |    6 
 Makefile                                              |    2 
 arch/arm/boot/compressed/head.S                       |    4 
 arch/arm/boot/dts/armada-388-helios4.dts              |   28 
 arch/arm/boot/dts/aspeed-g4.dtsi                      |    1 
 arch/arm/boot/dts/aspeed-g5.dtsi                      |    1 
 arch/arm/boot/dts/exynos3250-artik5.dtsi              |    2 
 arch/arm/boot/dts/exynos3250-monk.dts                 |    2 
 arch/arm/boot/dts/exynos3250-rinato.dts               |    2 
 arch/arm/boot/dts/exynos5250-spring.dts               |    2 
 arch/arm/boot/dts/exynos5420-arndale-octa.dts         |    2 
 arch/arm/boot/dts/exynos5422-odroid-core.dtsi         |    2 
 arch/arm/boot/dts/omap443x.dtsi                       |    2 
 arch/arm64/Kconfig                                    |    2 
 arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts |    5 
 arch/arm64/boot/dts/allwinner/sun50i-a64-sopine.dtsi  |    1 
 arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi         |    6 
 arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi |    2 
 arch/arm64/boot/dts/exynos/exynos7-espresso.dts       |    2 
 arch/arm64/boot/dts/mediatek/mt7622.dtsi              |    2 
 arch/arm64/boot/dts/nvidia/tegra210.dtsi              |    1 
 arch/arm64/boot/dts/qcom/msm8916.dtsi                 |    4 
 arch/arm64/crypto/sha1-ce-glue.c                      |    1 
 arch/arm64/crypto/sha2-ce-glue.c                      |    2 
 arch/arm64/crypto/sha3-ce-glue.c                      |    4 
 arch/arm64/crypto/sha512-ce-glue.c                    |    2 
 arch/arm64/kernel/cpufeature.c                        |    2 
 arch/arm64/kernel/head.S                              |    1 
 arch/arm64/kernel/probes/uprobes.c                    |    2 
 arch/mips/kernel/vmlinux.lds.S                        |    1 
 arch/mips/lantiq/irq.c                                |    2 
 arch/mips/mm/c-r4k.c                                  |    2 
 arch/powerpc/Kconfig                                  |    2 
 arch/powerpc/kernel/head_8xx.S                        |    2 
 arch/powerpc/kvm/powerpc.c                            |    8 
 arch/powerpc/platforms/pseries/dlpar.c                |    7 
 arch/sparc/Kconfig                                    |    2 
 arch/sparc/lib/memset.S                               |    1 
 arch/x86/kernel/reboot.c                              |   29 
 arch/x86/mm/pat.c                                     |    3 
 block/bfq-iosched.c                                   |    1 
 block/blk-core.c                                      |    1 
 block/blk-mq-sysfs.c                                  |   12 
 block/blk-settings.c                                  |   12 
 block/blk-sysfs.c                                     |   49 -
 block/blk-wbt.c                                       |    2 
 block/blk.h                                           |    2 
 block/elevator.c                                      |   30 
 certs/blacklist.c                                     |    2 
 crypto/ecdh_helper.c                                  |    3 
 drivers/acpi/acpi_configfs.c                          |    7 
 drivers/acpi/property.c                               |   44 -
 drivers/amba/bus.c                                    |   20 
 drivers/ata/ahci_brcm.c                               |   14 
 drivers/auxdisplay/ht16k33.c                          |    3 
 drivers/base/regmap/regmap-sdw.c                      |    4 
 drivers/block/floppy.c                                |   27 
 drivers/bluetooth/btqcomsmd.c                         |   27 
 drivers/char/hw_random/timeriomem-rng.c               |    2 
 drivers/char/random.c                                 |    2 
 drivers/char/tpm/tpm_tis_core.c                       |   50 -
 drivers/clk/meson/clk-pll.c                           |    2 
 drivers/clk/qcom/gcc-msm8998.c                        |  100 +-
 drivers/clk/sunxi-ng/ccu-sun50i-h6.c                  |   10 
 drivers/clocksource/mxs_timer.c                       |    5 
 drivers/cpufreq/brcmstb-avs-cpufreq.c                 |   24 
 drivers/cpufreq/intel_pstate.c                        |    5 
 drivers/crypto/bcm/cipher.c                           |    2 
 drivers/crypto/bcm/cipher.h                           |    4 
 drivers/crypto/bcm/util.c                             |    2 
 drivers/crypto/chelsio/chtls/chtls_cm.h               |    3 
 drivers/crypto/sunxi-ss/sun4i-ss-cipher.c             |  125 +-
 drivers/crypto/talitos.c                              |   28 
 drivers/crypto/talitos.h                              |    1 
 drivers/dma/fsldma.c                                  |    6 
 drivers/dma/hsu/pci.c                                 |   21 
 drivers/dma/owl-dma.c                                 |    1 
 drivers/gpio/gpio-pcf857x.c                           |    2 
 drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c                |    6 
 drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h             |    2 
 drivers/gpu/drm/amd/display/dc/dce/dce_transform.c    |    8 
 drivers/gpu/drm/gma500/oaktrail_hdmi_i2c.c            |   22 
 drivers/gpu/drm/gma500/psb_drv.c                      |    2 
 drivers/gpu/drm/msm/dsi/phy/dsi_phy_20nm.c            |    2 
 drivers/hid/hid-core.c                                |    9 
 drivers/hid/wacom_wac.c                               |    7 
 drivers/hv/channel_mgmt.c                             |    3 
 drivers/i2c/busses/i2c-brcmstb.c                      |    2 
 drivers/infiniband/core/user_mad.c                    |   17 
 drivers/infiniband/hw/mlx5/devx.c                     |    4 
 drivers/infiniband/sw/rxe/rxe_net.c                   |    5 
 drivers/infiniband/sw/rxe/rxe_recv.c                  |   11 
 drivers/input/joydev.c                                |    7 
 drivers/input/joystick/xpad.c                         |    1 
 drivers/input/serio/i8042-x86ia64io.h                 |    4 
 drivers/input/touchscreen/elo.c                       |    4 
 drivers/input/touchscreen/raydium_i2c_ts.c            |    3 
 drivers/input/touchscreen/sur40.c                     |    1 
 drivers/md/dm-core.h                                  |    4 
 drivers/md/dm-crypt.c                                 |    1 
 drivers/md/dm-era-target.c                            |   93 +-
 drivers/md/dm.c                                       |   60 +
 drivers/media/i2c/ov5670.c                            |    3 
 drivers/media/pci/cx25821/cx25821-core.c              |    4 
 drivers/media/pci/intel/ipu3/ipu3-cio2.c              |    2 
 drivers/media/pci/saa7134/saa7134-empress.c           |    5 
 drivers/media/platform/pxa_camera.c                   |    3 
 drivers/media/platform/qcom/camss/camss-video.c       |    1 
 drivers/media/platform/vsp1/vsp1_drv.c                |    4 
 drivers/media/tuners/qm1d1c0042.c                     |    4 
 drivers/media/usb/dvb-usb-v2/lmedm04.c                |    2 
 drivers/media/usb/em28xx/em28xx-core.c                |    6 
 drivers/media/usb/tm6000/tm6000-dvb.c                 |    4 
 drivers/media/usb/uvc/uvc_v4l2.c                      |   18 
 drivers/memory/ti-aemif.c                             |    8 
 drivers/mfd/bd9571mwv.c                               |    6 
 drivers/mfd/wm831x-auxadc.c                           |    3 
 drivers/misc/aspeed-lpc-snoop.c                       |   30 
 drivers/misc/cardreader/rts5227.c                     |    5 
 drivers/misc/eeprom/eeprom_93xx46.c                   |    1 
 drivers/misc/vmw_vmci/vmci_queue_pair.c               |    5 
 drivers/mmc/host/renesas_sdhi_internal_dmac.c         |    4 
 drivers/mmc/host/sdhci-esdhc-imx.c                    |    3 
 drivers/mmc/host/usdhi6rol0.c                         |    4 
 drivers/mtd/spi-nor/cadence-quadspi.c                 |    2 
 drivers/mtd/spi-nor/hisi-sfc.c                        |    4 
 drivers/net/ethernet/amd/xgbe/xgbe-common.h           |   14 
 drivers/net/ethernet/amd/xgbe/xgbe-drv.c              |    1 
 drivers/net/ethernet/amd/xgbe/xgbe-mdio.c             |    3 
 drivers/net/ethernet/amd/xgbe/xgbe-phy-v2.c           |   39 
 drivers/net/ethernet/broadcom/bnxt/bnxt.c             |    3 
 drivers/net/ethernet/chelsio/cxgb4/cxgb4_uld.h        |    3 
 drivers/net/ethernet/chelsio/cxgb4/sge.c              |   11 
 drivers/net/ethernet/ibm/ibmvnic.c                    |   16 
 drivers/net/ethernet/intel/i40e/i40e_main.c           |   41 
 drivers/net/ethernet/intel/i40e/i40e_txrx.c           |    9 
 drivers/net/ethernet/marvell/mvneta.c                 |    9 
 drivers/net/ethernet/mellanox/mlx4/resource_tracker.c |    1 
 drivers/net/ethernet/realtek/r8169.c                  |    4 
 drivers/net/ethernet/sun/sunvnet_common.c             |   23 
 drivers/net/gtp.c                                     |    5 
 drivers/net/usb/qmi_wwan.c                            |    1 
 drivers/net/vxlan.c                                   |   11 
 drivers/net/wireless/ath/ath10k/snoc.c                |    5 
 drivers/net/wireless/ath/ath9k/debug.c                |    5 
 drivers/net/wireless/broadcom/b43/phy_n.c             |    2 
 drivers/net/xen-netback/interface.c                   |    8 
 drivers/nvdimm/dimm_devs.c                            |   18 
 drivers/of/fdt.c                                      |   12 
 drivers/pci/controller/dwc/pcie-qcom.c                |    4 
 drivers/pci/syscall.c                                 |   10 
 drivers/power/reset/at91-sama5d2_shdwc.c              |    2 
 drivers/pwm/pwm-rockchip.c                            |    1 
 drivers/regulator/axp20x-regulator.c                  |    7 
 drivers/regulator/s5m8767.c                           |    8 
 drivers/rtc/Kconfig                                   |    1 
 drivers/scsi/bnx2fc/Kconfig                           |    1 
 drivers/spi/spi-atmel.c                               |    2 
 drivers/spi/spi-pxa2xx-pci.c                          |   27 
 drivers/spi/spi-s3c24xx-fiq.S                         |    9 
 drivers/spi/spi-stm32.c                               |    4 
 drivers/staging/gdm724x/gdm_usb.c                     |   10 
 drivers/staging/mt7621-dma/Makefile                   |    2 
 drivers/staging/mt7621-dma/hsdma-mt7621.c             |  771 ++++++++++++++++++
 drivers/staging/mt7621-dma/mtk-hsdma.c                |  771 ------------------
 drivers/staging/rtl8188eu/os_dep/usb_intf.c           |    1 
 drivers/staging/rtl8723bs/os_dep/wifi_regd.c          |    2 
 drivers/target/iscsi/cxgbit/cxgbit_target.c           |    3 
 drivers/usb/core/quirks.c                             |    9 
 drivers/usb/dwc2/hcd.c                                |   15 
 drivers/usb/dwc2/hcd_intr.c                           |   14 
 drivers/usb/dwc3/gadget.c                             |   19 
 drivers/usb/gadget/function/u_audio.c                 |   17 
 drivers/usb/musb/musb_core.c                          |   31 
 drivers/usb/serial/ftdi_sio.c                         |    5 
 drivers/usb/serial/mos7720.c                          |    4 
 drivers/usb/serial/mos7840.c                          |    4 
 drivers/usb/serial/option.c                           |    3 
 drivers/video/fbdev/Kconfig                           |    2 
 drivers/watchdog/mei_wdt.c                            |    1 
 fs/affs/namei.c                                       |    4 
 fs/btrfs/ctree.c                                      |    7 
 fs/btrfs/free-space-cache.c                           |    6 
 fs/btrfs/relocation.c                                 |    4 
 fs/cifs/connect.c                                     |    1 
 fs/ext4/namei.c                                       |    7 
 fs/f2fs/file.c                                        |    7 
 fs/f2fs/inline.c                                      |    4 
 fs/gfs2/lock_dlm.c                                    |    8 
 fs/isofs/dir.c                                        |    1 
 fs/isofs/namei.c                                      |    1 
 fs/jffs2/summary.c                                    |    3 
 fs/jfs/jfs_dmap.c                                     |    2 
 fs/ntfs/inode.c                                       |    6 
 fs/ocfs2/cluster/heartbeat.c                          |    8 
 fs/pstore/platform.c                                  |    4 
 fs/quota/quota_v2.c                                   |   11 
 include/acpi/acexcep.h                                |   10 
 include/asm-generic/vmlinux.lds.h                     |    7 
 include/linux/blkdev.h                                |    2 
 include/linux/device-mapper.h                         |    5 
 include/linux/filter.h                                |    2 
 include/linux/icmpv6.h                                |   48 +
 include/linux/ipv6.h                                  |    2 
 include/linux/kexec.h                                 |    5 
 include/linux/key.h                                   |    1 
 include/linux/rmap.h                                  |    3 
 include/net/icmp.h                                    |   10 
 include/net/tcp.h                                     |    9 
 kernel/bpf/bpf_lru_list.c                             |    7 
 kernel/debug/kdb/kdb_private.h                        |    2 
 kernel/jump_label.c                                   |   26 
 kernel/kexec_file.c                                   |    5 
 kernel/module.c                                       |   21 
 kernel/printk/printk_safe.c                           |   16 
 kernel/seccomp.c                                      |    2 
 kernel/tracepoint.c                                   |   80 +
 mm/hugetlb.c                                          |    4 
 mm/memory.c                                           |   16 
 net/bluetooth/a2mp.c                                  |    3 
 net/bluetooth/hci_core.c                              |    6 
 net/core/filter.c                                     |   13 
 net/ipv4/icmp.c                                       |   34 
 net/ipv6/icmp.c                                       |   19 
 net/ipv6/ip6_icmp.c                                   |   46 -
 net/mac80211/mesh_hwmp.c                              |    2 
 net/qrtr/tun.c                                        |   12 
 net/xfrm/xfrm_interface.c                             |    6 
 scripts/Makefile                                      |    9 
 scripts/recordmcount.pl                               |    6 
 security/commoncap.c                                  |   12 
 security/integrity/ima/ima_kexec.c                    |    3 
 security/integrity/ima/ima_mok.c                      |    5 
 security/keys/key.c                                   |    2 
 security/keys/trusted.c                               |    2 
 sound/pci/hda/patch_realtek.c                         |   11 
 sound/soc/codecs/cpcap.c                              |   12 
 sound/soc/codecs/cs42l56.c                            |    3 
 sound/usb/pcm.c                                       |    2 
 tools/perf/tests/sample-parsing.c                     |    2 
 tools/perf/util/event.c                               |    2 
 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c   |    3 
 242 files changed, 2306 insertions(+), 1498 deletions(-)

Adrian Hunter (1):
perf intel-pt: Fix missing CYC processing in PSB

Al Viro (1):
sparc32: fix a user-triggerable oops in clear_user()

Alain Volmat (1):
spi: stm32: properly handle 0 byte transfer

Alexander Lobakin (1):
MIPS: vmlinux.lds.S: add missing PAGE_ALIGNED_DATA() section

Alexander Usyskin (1):
watchdog: mei_wdt: request stop on unregister

Amey Narkhede (1):
staging: gdm724x: Fix DMA from stack

Andre Przywara (5):
arm64: dts: allwinner: A64: properly connect USB PHY to port 0
arm64: dts: allwinner: Drop non-removable from SoPine/LTS SD card
arm64: dts: allwinner: A64: Limit MMC2 bus frequency to 150 MHz
clk: sunxi-ng: h6: Fix CEC clock
clk: sunxi-ng: h6: Fix clock divider range on some clocks

Andrea Parri (Microsoft) (1):
Drivers: hv: vmbus: Avoid use-after-free in vmbus_onoffer_rescind()

Andrii Nakryiko (1):
bpf: Avoid warning when re-casting __bpf_call_base into __bpf_call_base_args

Andy Shevchenko (1):
spi: pxa2xx: Fix the controller numbering for Wildcat Point

AngeloGioacchino Del Regno (1):
clk: qcom: gcc-msm8998: Fix Alpha PLL type for all GPLLs

Ansuel Smith (1):
PCI: qcom: Use PHY_REFCLK_USE_PAD only for ipq8064

Ard Biesheuvel (1):
crypto: arm64/sha - add missing module aliases

Arnaldo Carvalho de Melo (1):
perf tools: Fix DSO filtering when not finding a map for a sampled address

Arnd Bergmann (1):
ARM: s3c: fix fiq for clang IAS

Aswath Govindraju (2):
misc: eeprom_93xx46: Fix module alias to enable module autoprobe
misc: eeprom_93xx46: Add module alias to avoid breaking support for non device tree users

Ayush Sawal (1):
cxgb4/chtls/cxgbit: Keeping the max ofld immediate data size same in cxgb4 and ulds

Bard Liao (1):
regmap: sdw: use _no_pm functions in regmap_read/write

Bartosz Golaszewski (1):
rtc: s5m: select REGMAP_I2C

Bob Pearson (2):
RDMA/rxe: Fix coding error in rxe_recv.c
RDMA/rxe: Correct skb on loopback path

Bob Peterson (1):
gfs2: Don't skip dlm unlock if glock has an lvb

Chao Yu (1):
f2fs: fix out-of-repair __setattr_copy()

Chen Yu (1):
cpufreq: intel_pstate: Get per-CPU max freq via MSR_HWP_CAPABILITIES if available

Chen-Yu Tsai (1):
staging: rtl8723bs: wifi_regd.c: Fix incorrect number of regulatory rules

Chenyang Li (1):
drm/amdgpu: Fix macro name _AMDGPU_TRACE_H_ in preprocessor if condition

Christoph Schemmel (1):
NET: usb: qmi_wwan: Adding support for Cinterion MV31

Christophe JAILLET (9):
Bluetooth: btqcomsmd: Fix a resource leak in error handling paths in the probe function
cpufreq: brcmstb-avs-cpufreq: Free resources in error path
cpufreq: brcmstb-avs-cpufreq: Fix resource leaks in ->remove()
media: vsp1: Fix an error handling path in the probe function
media: cx25821: Fix a bug when reallocating some dma memory
dmaengine: fsldma: Fix a resource leak in the remove function
dmaengine: fsldma: Fix a resource leak in an error handling path of the probe function
dmaengine: owl-dma: Fix a resource leak in the remove function
mmc: usdhi6rol0: Fix a resource leak in the error handling path of the probe

Christophe Leroy (3):
crypto: talitos - Work around SEC6 ERRATA (AES-CTR mode data size error) powerpc/47x: Disable 256k page size
powerpc/8xx: Fix software emulation interrupt

Christopher William Snowhill (1):
Bluetooth: Fix initializing response id after clearing struct

Chuhong Yuan (1):
net/mlx4_core: Add missed mlx4_free_cmd_mailbox()

Claudiu Beznea (1):
power: reset: at91-sama5d2_shdwc: fix wkupdbc mask

Colin Ian King (3):
mac80211: fix potential overflow when multiplying to u32 integers
b43: N-PHY: Fix the update of coef for the PHY revision >= 3case fs/jfs: fix potential integer overflow on shift of a int

Corentin Labbe (3):
crypto: sun4i-ss - fix kmap usage
crypto: sun4i-ss - checking sg length is not sufficient
crypto: sun4i-ss - handle BigEndian for cipher

Cédric Le Goater (1):
KVM: PPC: Make the VMX instruction emulation routines static

Dan Carpenter (11):
gma500: clean up error handling in init
media: camss: missing error code in msm_video_register()
ASoC: cs42l56: fix up error handling in probe
drm/amdgpu: Prevent shift wrapping in amdgpu_read_mask()
mfd: wm831x-auxadc: Prevent use after free in wm831x_auxadc_read_irq()
Input: sur40 - fix an error code in sur40_probe()
Input: elo - fix an error code in elo_connect()
ocfs2: fix a use after free on error
Input: joydev - prevent potential read overflow in ioctl
USB: serial: mos7840: fix error code in mos7840_write()
USB: serial: mos7720: fix error code in mos7720_write()

Dan Williams (1):
libnvdimm/dimm: Avoid race between probe and available_slots_show()

Daniele Alessandrelli (1):
crypto: ecdh_helper - Ensure 'len >= secret.len' in decode_key()

David Howells (1):
certs: Fix blacklist flag type confusion

Dinghao Liu (3):
media: em28xx: Fix use-after-free in em28xx_alloc_urbs
media: media/pci: Fix memleak in empress_init
media: tm6000: Fix memleak in tm6000_start_stream

Edwin Peer (1):
bnxt_en: reverse order of TX disable and carrier off

Eric Biggers (1):
random: fix the RNDRESEEDCRNG ioctl

Eric Dumazet (2):
tcp: fix SO_RCVLOWAT related hangs under mem pressure
ipv6: icmp6: avoid indirect call for icmpv6_send()

Eric W. Biederman (1):
capabilities: Don't allow writing ambiguous v3 file capabilities

Fangrui Song (1):
module: Ignore _GLOBAL_OFFSET_TABLE_ when warning for undefined symbols

Ferry Toth (1):
dmaengine: hsu: disable spurious interrupt

Filipe Manana (1):
btrfs: fix extent buffer leak on failure to copy root

Florian Fainelli (1):
ata: ahci_brcm: Add back regulators management

Frank Li (1):
mmc: sdhci-esdhc-imx: fix kernel panic when remove module

Frank Wunderlich (1):
dts64: mt7622: fix slow sd card access

Geert Uytterhoeven (1):
auxdisplay: ht16k33: Fix refresh rate handling

Greg Kroah-Hartman (1):

      Linux 4.19.178

Guenter Roeck (3):
usb: dwc2: Do not update data length if it is 0 on inbound transfers
usb: dwc2: Abort transaction after errors with unknown reason
usb: dwc2: Make "trimming xfer length" a debug message

He Zhe (1):
arm64: uprobe: Return EOPNOTSUPP for AARCH32 instruction probing

Heiner Kallweit (2):
PCI: Align checking of syscall user config accessors
r8169: fix jumbo packet handling on RTL8168e

Ilya Lipnitskiy (1):

      staging/mt7621-dma: mtk-hsdma.c->hsdma-mt7621.c

Jack Pham (1):
usb: gadget: u_audio: Free requests only after callback

Jacopo Mondi (1):
media: i2c: ov5670: Fix PIXEL_RATE minimum value

Jae Hyun Yoo (1):
soc: aspeed: snoop: Add clock control logic

James Bottomley (2):
tpm_tis: Fix check_locality for correct locality acquisition
tpm_tis: Clean up locality release

Jan Henrik Weinstock (1):
hwrng: timeriomem - Fix cooldown period calculation

Jan Kara (2):
bfq: Avoid false bfq queue merging
quota: Fix memory leak when handling corrupted quota file

Jarkko Sakkinen (1):
KEYS: trusted: Fix migratable=1 failing

Jason A. Donenfeld (6):
icmp: introduce helper for nat'd source address in network device context
icmp: allow icmpv6_ndo_send to work with CONFIG_IPV6=n
gtp: use icmp_ndo_send helper
sunvnet: use icmp_ndo_send helper
xfrm: interface: use icmp_ndo_send helper
net: icmp: pass zeroed opts from icmp{,v6}_ndo_send before sending

Jason Gerecke (1):
HID: wacom: Ignore attempts to overwrite the touch_max value from HID

Jesper Dangaard Brouer (1):
bpf: Fix bpf_fib_lookup helper MTU check for SKB ctx

Jialin Zhang (1):
drm/gma500: Fix error return code in psb_driver_load()

Jiri Bohac (1):
pstore: Fix typo in compression option name

Jiri Kosina (1):
floppy: reintroduce O_NDELAY fix

Jiri Olsa (1):
crypto: bcm - Rename struct device_private to bcm_device_private

Joe Perches (1):
media: lmedm04: Fix misuse of comma

Johan Hovold (2):
USB: quirks: sort quirk entries
USB: serial: ftdi_sio: fix FTX sub-integer prescaler

John Wang (1):
ARM: dts: aspeed: Add LCLK to lpc-snoop

Jorgen Hansen (1):
VMCI: Use set_page_dirty_lock() when unregistering guest memory

Josef Bacik (2):
btrfs: abort the transaction if we fail to inc ref in btrfs_copy_root
btrfs: fix reloc root leak with 0 ref reloc roots on recovery

Juergen Gross (1):
xen/netback: fix spurious event detection for common event case

KarimAllah Ahmed (1):
fdt: Properly handle "no-map" field in the memory region

Konrad Dybcio (1):
drm/msm/dsi: Correct io_start for MSM8994 (20nm PHY)

Krzysztof Kozlowski (9):
ARM: dts: exynos: correct PMIC interrupt trigger level on Artik 5
ARM: dts: exynos: correct PMIC interrupt trigger level on Monk
ARM: dts: exynos: correct PMIC interrupt trigger level on Rinato
ARM: dts: exynos: correct PMIC interrupt trigger level on Spring
ARM: dts: exynos: correct PMIC interrupt trigger level on Arndale Octa
ARM: dts: exynos: correct PMIC interrupt trigger level on Odroid XU3 family
arm64: dts: exynos: correct PMIC interrupt trigger level on TM2
arm64: dts: exynos: correct PMIC interrupt trigger level on Espresso
regulator: s5m8767: Drop regulators OF node reference

Lakshmi Ramasubramanian (2):
ima: Free IMA measurement buffer on error
ima: Free IMA measurement buffer after kexec syscall

Laurent Pinchart (1):
media: uvcvideo: Accept invalid bFormatIndex and bFrameIndex values

Lech Perczak (1):
USB: serial: option: update interface mapping for ZTE P685M

Leon Romanovsky (1):
ipv6: silence compilation warning for non-IPV6 builds

Lijun Pan (2):
ibmvnic: add memory barrier to protect long term buffer
ibmvnic: skip send_request_unmap for timeout reset

Linus Lüssing (1):
ath9k: fix data bus crash when setting nf_override via debugfs

Luo Meng (1):

      media: qm1d1c0042: fix error return code in qm1d1c0042_init()

Marc Zyngier (1):
arm64: Add missing ISB after invalidating TLB in __primary_switch

Marco Elver (1):
bpf_lru_list: Read double-checked variable once without lock

Marcos Paulo de Souza (1):
Input: i8042 - add ASUS Zenbook Flip to noselftest list

Mario Kleiner (1):
drm/amd/display: Fix 10/12 bpc setup in DCE output bit depth reduction.

Martin Blumenstingl (1):
clk: meson: clk-pll: fix initializing the old rate (fallback) for a PLL

Martin Kaiser (1):
staging: rtl8188eu: Add Edimax EW-7811UN V2 to device table

Mateusz Palczewski (3):
i40e: Add zero-initialization of AQ command structures
i40e: Fix overwriting flow control settings during driver loading
i40e: Fix add TC filter for IPv6

Maxim Kiselev (1):
gpio: pcf857x: Fix missing first interrupt

Maxime Chevallier (1):
net: mvneta: Remove per-cpu queue mapping for Armada 3700

Maxime Ripard (1):
i2c: brcmstb: Fix brcmstd_send_i2c_cmd condition

Maximilian Luz (1):
ACPICA: Fix exception code class checks

Miaohe Lin (3):
mm/memory.c: fix potential pte_unmap_unlock pte error mm/hugetlb: fix potential double free in hugetlb_register_node() error path mm/rmap: fix potential pte_unmap on an not mapped pte

Mike Kravetz (1):
hugetlb: fix copy_huge_page_from_user contig page struct assumption

Mikulas Patocka (2):
blk-settings: align max_sectors on "logical_block_size" boundary
dm: fix deadlock when swapping to encrypted device

Ming Lei (4):
block: add helper for checking if queue is registered
block: split .sysfs_lock into two locks
block: fix race between switching elevator and removing queues
block: don't release queue's sysfs lock during switching elevator

Muchun Song (1):
printk: fix deadlock when kernel panic

Namhyung Kim (1):
perf test: Fix unaligned access in sample parsing test

Nathan Chancellor (2):
MIPS: c-r4k: Fix section mismatch for loongson2_sc_init
MIPS: lantiq: Explicitly compare LTQ_EBU_PCC_ISTAT against 0

Nathan Lynch (1):
powerpc/pseries/dlpar: handle ibm, configure-connector delay status

NeilBrown (2):
seq_file: document how per-entry resources are managed.
x86: fix seq_file iteration for pat/memtype.c

Nick Desaulniers (1):
vmlinux.lds.h: add DWARF v5 sections

Nicolas Boichat (1):
of/fdt: Make sure no-map does not remove already reserved regions

Nikos Tsironis (7):
dm era: Recover committed writeset after crash
dm era: Verify the data block size hasn't changed
dm era: Fix bitset memory leaks
dm era: Use correct value size in equality function of writeset tree dm era: Reinitialize bitset cache before digesting a new writeset dm era: only resize metadata in preresume
dm era: Update in-core bitset after committing the metadata

Olivier Crête (1):
Input: xpad - add support for PowerA Enhanced Wired Controller for Xbox Series X|S

Pan Bian (8):
Bluetooth: drop HCI device reference before return
Bluetooth: Put HCI device if inquiry procedure interrupts
memory: ti-aemif: Drop child node when jumping out loop
regulator: axp20x: Fix reference cout leak
spi: atmel: Put allocated master before return
isofs: release buffer head before return
mtd: spi-nor: hisi-sfc: Put child node np on error path fs/affs: release old buffer head on error path

Paul Cercueil (2):
usb: musb: Fix runtime PM race in musb_queue_resume_work
seccomp: Add missing return in non-void function

Pavel Machek (1):
media: ipu3-cio2: Fix mbus_code processing in cio2_subdev_set_fmt()

PeiSen Hou (1):
ALSA: hda/realtek: modify EAPD in the ALC886

Peter Zijlstra (2):
jump_label/lockdep: Assert we hold the hotplug lock for _cpuslocked() operations locking/static_key: Fix false positive warnings on concurrent dec/inc

Pratyush Yadav (1):
spi: cadence-quadspi: Abort read if dummy cycles required are too many

Qinglang Miao (1):
ACPI: configfs: add missing check after configfs_register_default_group()

Rafael J. Wysocki (1):
ACPI: property: Fix fwnode string properties matching

Rakesh Pillai (1):
ath10k: Fix error handling in case of CE pipe init failure

Randy Dunlap (4):
fbdev: aty: SPARC64 requires FB_ATY_CT
HID: core: detect and skip invalid inputs to snto32()
sparc64: only select COMPAT_BINFMT_ELF if BINFMT_ELF is set
scsi: bnx2fc: Fix Kconfig warning & CNIC build errors

Ricky Wu (1):
misc: rtsx: init of rts522a add OCP power off when no card is present

Rolf Eike Beer (2):
scripts: use pkg-config to locate libcrypto
scripts: set proper OpenSSL include dir also for sign-file

Rong Chen (1):
scripts/recordmcount.pl: support big endian for ARCH sh

Rosen Penev (2):
ARM: dts: armada388-helios4: assign pinctrl to LEDs
ARM: dts: armada388-helios4: assign pinctrl to each fan

Rustam Kovhaev (1):
ntfs: check for valid standard information attribute

Sabyrzhan Tasbolatov (1):
drivers/misc/vmw_vmci: restrict too big queue size in qp_host_alloc_queue

Sameer Pujar (1):
arm64: tegra: Add power-domain for Tegra210 HDA

Sean Christopherson (1):
x86/reboot: Force all cpus to exit VMX root if VMX is supported

Sebastian Reichel (1):
ASoC: cpcap: fix microphone timeslot mask

Shay Drory (2):
IB/umad: Return EIO in case of when device disassociated IB/umad: Return EPOLLERR in case of when device disassociated

Shyam Prasad N (1):

      cifs: Set CIFS_MOUNT_USE_PREFIX_PATH flag on setting cifs_sb->prepath.

Shyam Sundar S K (4):
net: amd-xgbe: Reset the PHY rx data path when mailbox command timeout
net: amd-xgbe: Fix NETDEV WATCHDOG transmit queue timeout warning
net: amd-xgbe: Reset link when the link never comes back
net: amd-xgbe: Fix network fluctuations when using 1G BELFUSE SFP

Simon South (1):
pwm: rockchip: rockchip_pwm_probe(): Remove superfluous clk_unprepare()

Slawomir Laba (1):
i40e: Fix flow for IPv6 next header (extension header)

Stefan Ursella (1):
usb: quirks: add quirk to start video capture on ELMO L-12F document camera reliable

Steven Rostedt (VMware) (1):
tracepoint: Do not fail unregistering a probe due to memory failure

Sukadev Bhattiprolu (1):
ibmvnic: Set to CLOSED state even on error

Sumit Garg (1):
kdb: Make memory allocations more robust

Suzuki K Poulose (1):
arm64: Extend workaround for erratum 1024718 to all versions of Cortex-A55

Sylwester Dziedziuch (1):
i40e: Fix VFs not created

Taehee Yoo (1):
vxlan: move debug check after netdev unregister

Takashi Iwai (1):
ALSA: usb-audio: Fix PCM buffer allocation in non-vmalloc mode

Takeshi Misawa (1):
net: qrtr: Fix memory leak in qrtr_tun_open

Takeshi Saito (1):
mmc: renesas_sdhi_internal_dmac: Fix DMA buffer alignment from 8 to 128-bytes

Theodore Ts'o (1):
ext4: fix potential htree index checksum corruption

Thinh Nguyen (2):
usb: dwc3: gadget: Fix setting of DEPCFG.bInterval_m1
usb: dwc3: gadget: Fix dep->interval for fullspeed interrupt

Tom Rix (3):
media: pxa_camera: declare variable when DEBUG is defined
jffs2: fix use after free in jffs2_sum_write_data() clocksource/drivers/mxs_timer: Add missing semicolon when DEBUG is defined

Tony Lindgren (1):
ARM: dts: Configure missing thermal interrupt for 4430

Uwe Kleine-König (1):
amba: Fix resource leak for drivers without .remove

Vincent Knecht (1):
arm64: dts: msm8916: Fix reserved and rfsa nodes unit address

Vladimir Murzin (1):
ARM: 9046/1: decompressor: Do not clear SCTLR.nTLSMD for ARMv7+ cores

Will McVicker (1):
HID: make arrays usage and value to be the same

Yi Chen (1):
f2fs: fix to avoid inconsistent quota data

Yishai Hadas (1):
RDMA/mlx5: Use the correct obj_id upon DEVX TIR creation

Yoshihiro Shimoda (1):

      mfd: bd9571mwv: Use devm_mfd_add_devices()

Zhihao Cheng (1):
btrfs: clarify error returns values in __load_free_space_cache

jeffrey.lin (1):
Input: raydium_ts_i2c - do not send zero length

author maintainer
#1 lore raw
Documentation/filesystems/seq_file.txt +6 -0
index d412b236a9d6..7cf7143921a1 100644
@@ -192,6 +192,12 @@ between the calls to start() and stop(), so holding a lock during that time
 is a reasonable thing to do. The seq_file code will also avoid taking any
 other locks while the iterator is active.
 
+The iterater value returned by start() or next() is guaranteed to be
+passed to a subsequent next() or stop() call.  This allows resources
+such as locks that were taken to be reliably released.  There is *no*
+guarantee that the iterator will be passed to show(), though in practice
+it often will be.
+
 
 Formatted output
 
Makefile +1 -1
index 74b9258e7d2c..6787efa2edc9 100644
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0
 VERSION = 4
 PATCHLEVEL = 19
-SUBLEVEL = 177
+SUBLEVEL = 178
 EXTRAVERSION =
 NAME = "People's Front"
 
arch/arm/boot/compressed/head.S +2 -2
index e205bbbe2794..69e661f574a0 100644
@@ -1090,9 +1090,9 @@ __armv4_mmu_cache_off:
 __armv7_mmu_cache_off:
 		mrc	p15, 0, r0, c1, c0
 #ifdef CONFIG_MMU
-		bic	r0, r0, #0x000d
+		bic	r0, r0, #0x0005
 #else
-		bic	r0, r0, #0x000c
+		bic	r0, r0, #0x0004
 #endif
 		mcr	p15, 0, r0, c1, c0	@ turn MMU and cache off
 		mov	r12, lr
arch/arm/boot/dts/armada-388-helios4.dts +22 -6
index 705adfa8c680..a94758090fb0 100644
@@ -70,6 +70,9 @@
 
 	system-leds {
 		compatible = "gpio-leds";
+		pinctrl-names = "default";
+		pinctrl-0 = <&helios_system_led_pins>;
+
 		status-led {
 			label = "helios4:green:status";
 			gpios = <&gpio0 24 GPIO_ACTIVE_LOW>;
@@ -86,6 +89,9 @@
 
 	io-leds {
 		compatible = "gpio-leds";
+		pinctrl-names = "default";
+		pinctrl-0 = <&helios_io_led_pins>;
+
 		sata1-led {
 			label = "helios4:green:ata1";
 			gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
@@ -121,11 +127,15 @@
 	fan1: j10-pwm {
 		compatible = "pwm-fan";
 		pwms = <&gpio1 9 40000>;	/* Target freq:25 kHz */
+		pinctrl-names = "default";
+		pinctrl-0 = <&helios_fan1_pins>;
 	};
 
 	fan2: j17-pwm {
 		compatible = "pwm-fan";
 		pwms = <&gpio1 23 40000>;	/* Target freq:25 kHz */
+		pinctrl-names = "default";
+		pinctrl-0 = <&helios_fan2_pins>;
 	};
 
 	usb2_phy: usb2-phy {
@@ -291,16 +301,22 @@
 						       "mpp39", "mpp40";
 					marvell,function = "sd0";
 				};
-				helios_led_pins: helios-led-pins {
-					marvell,pins = "mpp24", "mpp25",
-						       "mpp49", "mpp50",
+				helios_system_led_pins: helios-system-led-pins {
+					marvell,pins = "mpp24", "mpp25";
+					marvell,function = "gpio";
+				};
+				helios_io_led_pins: helios-io-led-pins {
+					marvell,pins = "mpp49", "mpp50",
 						       "mpp52", "mpp53",
 						       "mpp54";
 					marvell,function = "gpio";
 				};
-				helios_fan_pins: helios-fan-pins {
-					marvell,pins = "mpp41", "mpp43",
-						       "mpp48", "mpp55";
+				helios_fan1_pins: helios_fan1_pins {
+					marvell,pins = "mpp41", "mpp43";
+					marvell,function = "gpio";
+				};
+				helios_fan2_pins: helios_fan2_pins {
+					marvell,pins = "mpp48", "mpp55";
 					marvell,function = "gpio";
 				};
 				microsom_spi1_cs_pins: spi1-cs-pins {
arch/arm/boot/dts/aspeed-g4.dtsi +1 -0
index 69f6b9d2e7e7..2af093759143 100644
@@ -312,6 +312,7 @@
 						compatible = "aspeed,ast2400-ibt-bmc";
 						reg = <0xc0 0x18>;
 						interrupts = <8>;
+						clocks = <&syscon ASPEED_CLK_GATE_LCLK>;
 						status = "disabled";
 					};
 				};
arch/arm/boot/dts/aspeed-g5.dtsi +1 -0
index f2e1015d75ab..bcd57e6c51e5 100644
@@ -372,6 +372,7 @@
 						compatible = "aspeed,ast2500-ibt-bmc";
 						reg = <0xc0 0x18>;
 						interrupts = <8>;
+						clocks = <&syscon ASPEED_CLK_GATE_LCLK>;
 						status = "disabled";
 					};
 				};
arch/arm/boot/dts/exynos3250-artik5.dtsi +1 -1
index 7c22cbf6f3d4..6e30db644c83 100644
@@ -68,7 +68,7 @@
 	s2mps14_pmic@66 {
 		compatible = "samsung,s2mps14-pmic";
 		interrupt-parent = <&gpx3>;
-		interrupts = <5 IRQ_TYPE_NONE>;
+		interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
 		pinctrl-names = "default";
 		pinctrl-0 = <&s2mps14_irq>;
 		reg = <0x66>;
arch/arm/boot/dts/exynos3250-monk.dts +1 -1
index 6ffedf4ed9f2..d343dc13ceec 100644
@@ -188,7 +188,7 @@
 	s2mps14_pmic@66 {
 		compatible = "samsung,s2mps14-pmic";
 		interrupt-parent = <&gpx0>;
-		interrupts = <7 IRQ_TYPE_NONE>;
+		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
 		reg = <0x66>;
 		wakeup-source;
 
arch/arm/boot/dts/exynos3250-rinato.dts +1 -1
index 2a6b828c01b7..29df4cfa9165 100644
@@ -253,7 +253,7 @@
 	s2mps14_pmic@66 {
 		compatible = "samsung,s2mps14-pmic";
 		interrupt-parent = <&gpx0>;
-		interrupts = <7 IRQ_TYPE_NONE>;
+		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
 		reg = <0x66>;
 		wakeup-source;
 
arch/arm/boot/dts/exynos5250-spring.dts +1 -1
index 3d501926c227..2355c5316484 100644
@@ -108,7 +108,7 @@
 		compatible = "samsung,s5m8767-pmic";
 		reg = <0x66>;
 		interrupt-parent = <&gpx3>;
-		interrupts = <2 IRQ_TYPE_NONE>;
+		interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
 		pinctrl-names = "default";
 		pinctrl-0 = <&s5m8767_irq &s5m8767_dvs &s5m8767_ds>;
 		wakeup-source;
arch/arm/boot/dts/exynos5420-arndale-octa.dts +1 -1
index a370857beac0..fbaca74cbaea 100644
@@ -84,7 +84,7 @@
 		reg = <0x66>;
 
 		interrupt-parent = <&gpx3>;
-		interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
+		interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
 		pinctrl-names = "default";
 		pinctrl-0 = <&s2mps11_irq>;
 
arch/arm/boot/dts/exynos5422-odroid-core.dtsi +1 -1
index d476ba0f07b6..ba7187a74be3 100644
@@ -136,7 +136,7 @@
 		samsung,s2mps11-acokb-ground;
 
 		interrupt-parent = <&gpx0>;
-		interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
+		interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
 		pinctrl-names = "default";
 		pinctrl-0 = <&s2mps11_irq>;
 
arch/arm/boot/dts/omap443x.dtsi +2 -0
index 86b9caf461df..6e320efd9fc1 100644
@@ -33,10 +33,12 @@
 	};
 
 	ocp {
+		/* 4430 has only gpio_86 tshut and no talert interrupt */
 		bandgap: bandgap@4a002260 {
 			reg = <0x4a002260 0x4
 			       0x4a00232C 0x4>;
 			compatible = "ti,omap4430-bandgap";
+			gpios = <&gpio3 22 GPIO_ACTIVE_HIGH>;
 
 			#thermal-sensor-cells = <0>;
 		};
arch/arm64/Kconfig +1 -1
index 1fe3e5cb2927..1daefa57e274 100644
@@ -473,7 +473,7 @@ config ARM64_ERRATUM_1024718
 	help
 	  This option adds work around for Arm Cortex-A55 Erratum 1024718.
 
-	  Affected Cortex-A55 cores (r0p0, r0p1, r1p0) could cause incorrect
+	  Affected Cortex-A55 cores (all revisions) could cause incorrect
 	  update of the hardware dirty bit when the DBM/AP bits are updated
 	  without a break-before-make. The work around is to disable the usage
 	  of hardware DBM locally on the affected cores. CPUs not affected by
arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +1 -4
index 897e60cbe38d..ecb3e10c85e0 100644
@@ -67,8 +67,6 @@
 };
 
 &ehci0 {
-	phys = <&usbphy 0>;
-	phy-names = "usb";
 	status = "okay";
 };
 
@@ -107,6 +105,7 @@
 	pinctrl-0 = <&mmc2_pins>;
 	vmmc-supply = <&reg_dcdc1>;
 	vqmmc-supply = <&reg_eldo1>;
+	max-frequency = <200000000>;
 	bus-width = <8>;
 	non-removable;
 	cap-mmc-hw-reset;
@@ -115,8 +114,6 @@
 };
 
 &ohci0 {
-	phys = <&usbphy 0>;
-	phy-names = "usb";
 	status = "okay";
 };
 
arch/arm64/boot/dts/allwinner/sun50i-a64-sopine.dtsi +0 -1
index 6723b8695e0b..ca39084fddc0 100644
@@ -51,7 +51,6 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&mmc0_pins>;
 	vmmc-supply = <&reg_dcdc1>;
-	non-removable;
 	disable-wp;
 	bus-width = <4>;
 	cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi +5 -1
index 7abc4ea30541..30cc2e83a288 100644
@@ -264,7 +264,7 @@
 			resets = <&ccu RST_BUS_MMC2>;
 			reset-names = "ahb";
 			interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
-			max-frequency = <200000000>;
+			max-frequency = <150000000>;
 			status = "disabled";
 			#address-cells = <1>;
 			#size-cells = <0>;
@@ -312,6 +312,8 @@
 				 <&ccu CLK_USB_OHCI0>;
 			resets = <&ccu RST_BUS_OHCI0>,
 				 <&ccu RST_BUS_EHCI0>;
+			phys = <&usbphy 0>;
+			phy-names = "usb";
 			status = "disabled";
 		};
 
@@ -322,6 +324,8 @@
 			clocks = <&ccu CLK_BUS_OHCI0>,
 				 <&ccu CLK_USB_OHCI0>;
 			resets = <&ccu RST_BUS_OHCI0>;
+			phys = <&usbphy 0>;
+			phy-names = "usb";
 			status = "disabled";
 		};
 
arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi +1 -1
index a1e3194b7483..d64f97d97c35 100644
@@ -378,7 +378,7 @@
 	s2mps13-pmic@66 {
 		compatible = "samsung,s2mps13-pmic";
 		interrupt-parent = <&gpa0>;
-		interrupts = <7 IRQ_TYPE_NONE>;
+		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
 		reg = <0x66>;
 		samsung,s2mps11-wrstbi-ground;
 
arch/arm64/boot/dts/exynos/exynos7-espresso.dts +1 -1
index d991eae5202f..2ba62118ae90 100644
@@ -85,7 +85,7 @@
 	s2mps15_pmic@66 {
 		compatible = "samsung,s2mps15-pmic";
 		reg = <0x66>;
-		interrupts = <2 IRQ_TYPE_NONE>;
+		interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
 		interrupt-parent = <&gpa0>;
 		pinctrl-names = "default";
 		pinctrl-0 = <&pmic_irq>;
arch/arm64/boot/dts/mediatek/mt7622.dtsi +2 -0
index de2c47bdbe64..2bcee994898a 100644
@@ -641,6 +641,8 @@
 		clocks = <&pericfg CLK_PERI_MSDC30_1_PD>,
 			 <&topckgen CLK_TOP_AXI_SEL>;
 		clock-names = "source", "hclk";
+		resets = <&pericfg MT7622_PERI_MSDC1_SW_RST>;
+		reset-names = "hrst";
 		status = "disabled";
 	};
 
arch/arm64/boot/dts/nvidia/tegra210.dtsi +1 -0
index 6597c0894137..4eecf3b02468 100644
@@ -826,6 +826,7 @@
 			 <&tegra_car 128>, /* hda2hdmi */
 			 <&tegra_car 111>; /* hda2codec_2x */
 		reset-names = "hda", "hda2hdmi", "hda2codec_2x";
+		power-domains = <&pd_sor>;
 		status = "disabled";
 	};
 
arch/arm64/boot/dts/qcom/msm8916.dtsi +2 -2
index 2c5193ae2027..ba42c6239922 100644
@@ -64,7 +64,7 @@
 			no-map;
 		};
 
-		reserved@8668000 {
+		reserved@86680000 {
 			reg = <0x0 0x86680000 0x0 0x80000>;
 			no-map;
 		};
@@ -77,7 +77,7 @@
 			qcom,client-id = <1>;
 		};
 
-		rfsa@867e00000 {
+		rfsa@867e0000 {
 			reg = <0x0 0x867e0000 0x0 0x20000>;
 			no-map;
 		};
arch/arm64/crypto/sha1-ce-glue.c +1 -0
index d8c521c757e8..3f51743c01d8 100644
@@ -21,6 +21,7 @@
 MODULE_DESCRIPTION("SHA1 secure hash using ARMv8 Crypto Extensions");
 MODULE_AUTHOR("Ard Biesheuvel <[email protected]>");
 MODULE_LICENSE("GPL v2");
+MODULE_ALIAS_CRYPTO("sha1");
 
 struct sha1_ce_state {
 	struct sha1_state	sst;
arch/arm64/crypto/sha2-ce-glue.c +2 -0
index c47d1a28ff6b..4022c51a377b 100644
@@ -21,6 +21,8 @@
 MODULE_DESCRIPTION("SHA-224/SHA-256 secure hash using ARMv8 Crypto Extensions");
 MODULE_AUTHOR("Ard Biesheuvel <[email protected]>");
 MODULE_LICENSE("GPL v2");
+MODULE_ALIAS_CRYPTO("sha224");
+MODULE_ALIAS_CRYPTO("sha256");
 
 struct sha256_ce_state {
 	struct sha256_state	sst;
arch/arm64/crypto/sha3-ce-glue.c +4 -0
index a336feac0f59..df20ab645487 100644
@@ -22,6 +22,10 @@
 MODULE_DESCRIPTION("SHA3 secure hash using ARMv8 Crypto Extensions");
 MODULE_AUTHOR("Ard Biesheuvel <[email protected]>");
 MODULE_LICENSE("GPL v2");
+MODULE_ALIAS_CRYPTO("sha3-224");
+MODULE_ALIAS_CRYPTO("sha3-256");
+MODULE_ALIAS_CRYPTO("sha3-384");
+MODULE_ALIAS_CRYPTO("sha3-512");
 
 asmlinkage void sha3_ce_transform(u64 *st, const u8 *data, int blocks,
 				  int md_len);
arch/arm64/crypto/sha512-ce-glue.c +2 -0
index f2c5f28c622a..2871e68ae3df 100644
@@ -22,6 +22,8 @@
 MODULE_DESCRIPTION("SHA-384/SHA-512 secure hash using ARMv8 Crypto Extensions");
 MODULE_AUTHOR("Ard Biesheuvel <[email protected]>");
 MODULE_LICENSE("GPL v2");
+MODULE_ALIAS_CRYPTO("sha384");
+MODULE_ALIAS_CRYPTO("sha512");
 
 asmlinkage void sha512_ce_transform(struct sha512_state *sst, u8 const *src,
 				    int blocks);
arch/arm64/kernel/cpufeature.c +1 -1
index de6fa9b4abfa..1719d21a171a 100644
@@ -1012,7 +1012,7 @@ static bool cpu_has_broken_dbm(void)
 	/* List of CPUs which have broken DBM support. */
 	static const struct midr_range cpus[] = {
 #ifdef CONFIG_ARM64_ERRATUM_1024718
-		MIDR_RANGE(MIDR_CORTEX_A55, 0, 0, 1, 0),  // A55 r0p0 -r1p0
+		MIDR_ALL_VERSIONS(MIDR_CORTEX_A55),
 #endif
 		{},
 	};
arch/arm64/kernel/head.S +1 -0
index d22ab8d9edc9..c85ea70b9293 100644
@@ -867,6 +867,7 @@ __primary_switch:
 
 	tlbi	vmalle1				// Remove any stale TLB entries
 	dsb	nsh
+	isb
 
 	msr	sctlr_el1, x19			// re-enable the MMU
 	isb
arch/arm64/kernel/probes/uprobes.c +1 -1
index 636ca0119c0e..6aeb11aa7e28 100644
@@ -41,7 +41,7 @@ int arch_uprobe_analyze_insn(struct arch_uprobe *auprobe, struct mm_struct *mm,
 
 	/* TODO: Currently we do not support AARCH32 instruction probing */
 	if (mm->context.flags & MMCF_AARCH32)
-		return -ENOTSUPP;
+		return -EOPNOTSUPP;
 	else if (!IS_ALIGNED(addr, AARCH64_INSN_SIZE))
 		return -EINVAL;
 
arch/mips/kernel/vmlinux.lds.S +1 -0
index be63fff95b2a..968c5765020c 100644
@@ -93,6 +93,7 @@ SECTIONS
 
 		INIT_TASK_DATA(THREAD_SIZE)
 		NOSAVE_DATA
+		PAGE_ALIGNED_DATA(PAGE_SIZE)
 		CACHELINE_ALIGNED_DATA(1 << CONFIG_MIPS_L1_CACHE_SHIFT)
 		READ_MOSTLY_DATA(1 << CONFIG_MIPS_L1_CACHE_SHIFT)
 		DATA_DATA
arch/mips/lantiq/irq.c +1 -1
index 37caeadb2964..0476d7e97a03 100644
@@ -244,7 +244,7 @@ static void ltq_hw_irq_handler(struct irq_desc *desc)
 	generic_handle_irq(irq_linear_revmap(ltq_domain, hwirq));
 
 	/* if this is a EBU irq, we need to ack it or get a deadlock */
-	if ((irq == LTQ_ICU_EBU_IRQ) && (module == 0) && LTQ_EBU_PCC_ISTAT)
+	if (irq == LTQ_ICU_EBU_IRQ && !module && LTQ_EBU_PCC_ISTAT != 0)
 		ltq_ebu_w32(ltq_ebu_r32(LTQ_EBU_PCC_ISTAT) | 0x10,
 			LTQ_EBU_PCC_ISTAT);
 }
arch/mips/mm/c-r4k.c +1 -1
index 7650edd5cf7f..60fe72170856 100644
@@ -1673,7 +1673,7 @@ static int probe_scache(void)
 	return 1;
 }
 
-static void __init loongson2_sc_init(void)
+static void loongson2_sc_init(void)
 {
 	struct cpuinfo_mips *c = &current_cpu_data;
 
arch/powerpc/Kconfig +1 -1
index d18ea3c1f4fa..6dd2a14e1ebc 100644
@@ -709,7 +709,7 @@ config PPC_64K_PAGES
 
 config PPC_256K_PAGES
 	bool "256k page size"
-	depends on 44x && !STDBINUTILS
+	depends on 44x && !STDBINUTILS && !PPC_47x
 	help
 	  Make the page size 256k.
 
arch/powerpc/kernel/head_8xx.S +1 -1
index dc99258f2e8c..08c16aa0dd53 100644
@@ -269,7 +269,7 @@ SystemCall:
 /* On the MPC8xx, this is a software emulation interrupt.  It occurs
  * for all unimplemented and illegal instructions.
  */
-	EXCEPTION(0x1000, SoftEmu, program_check_exception, EXC_XFER_STD)
+	EXCEPTION(0x1000, SoftEmu, emulation_assist_interrupt, EXC_XFER_STD)
 
 	. = 0x1100
 /*
arch/powerpc/kvm/powerpc.c +4 -4
index 51cd66dc1bb0..7c8354dfe80e 100644
@@ -1497,7 +1497,7 @@ int kvmppc_handle_vmx_load(struct kvm_run *run, struct kvm_vcpu *vcpu,
 	return emulated;
 }
 
-int kvmppc_get_vmx_dword(struct kvm_vcpu *vcpu, int index, u64 *val)
+static int kvmppc_get_vmx_dword(struct kvm_vcpu *vcpu, int index, u64 *val)
 {
 	union kvmppc_one_reg reg;
 	int vmx_offset = 0;
@@ -1515,7 +1515,7 @@ int kvmppc_get_vmx_dword(struct kvm_vcpu *vcpu, int index, u64 *val)
 	return result;
 }
 
-int kvmppc_get_vmx_word(struct kvm_vcpu *vcpu, int index, u64 *val)
+static int kvmppc_get_vmx_word(struct kvm_vcpu *vcpu, int index, u64 *val)
 {
 	union kvmppc_one_reg reg;
 	int vmx_offset = 0;
@@ -1533,7 +1533,7 @@ int kvmppc_get_vmx_word(struct kvm_vcpu *vcpu, int index, u64 *val)
 	return result;
 }
 
-int kvmppc_get_vmx_hword(struct kvm_vcpu *vcpu, int index, u64 *val)
+static int kvmppc_get_vmx_hword(struct kvm_vcpu *vcpu, int index, u64 *val)
 {
 	union kvmppc_one_reg reg;
 	int vmx_offset = 0;
@@ -1551,7 +1551,7 @@ int kvmppc_get_vmx_hword(struct kvm_vcpu *vcpu, int index, u64 *val)
 	return result;
 }
 
-int kvmppc_get_vmx_byte(struct kvm_vcpu *vcpu, int index, u64 *val)
+static int kvmppc_get_vmx_byte(struct kvm_vcpu *vcpu, int index, u64 *val)
 {
 	union kvmppc_one_reg reg;
 	int vmx_offset = 0;
arch/powerpc/platforms/pseries/dlpar.c +3 -4
index c5ffcadab730..90fd03b9d3c2 100644
@@ -132,7 +132,6 @@ void dlpar_free_cc_nodes(struct device_node *dn)
 #define NEXT_PROPERTY   3
 #define PREV_PARENT     4
 #define MORE_MEMORY     5
-#define CALL_AGAIN	-2
 #define ERR_CFG_USE     -9003
 
 struct device_node *dlpar_configure_connector(__be32 drc_index,
@@ -173,6 +172,9 @@ struct device_node *dlpar_configure_connector(__be32 drc_index,
 
 		spin_unlock(&rtas_data_buf_lock);
 
+		if (rtas_busy_delay(rc))
+			continue;
+
 		switch (rc) {
 		case COMPLETE:
 			break;
@@ -221,9 +223,6 @@ struct device_node *dlpar_configure_connector(__be32 drc_index,
 			last_dn = last_dn->parent;
 			break;
 
-		case CALL_AGAIN:
-			break;
-
 		case MORE_MEMORY:
 		case ERR_CFG_USE:
 		default:
arch/sparc/Kconfig +1 -1
index e6f2a38d2e61..1f1a7583fa90 100644
@@ -554,7 +554,7 @@ config COMPAT
 	bool
 	depends on SPARC64
 	default y
-	select COMPAT_BINFMT_ELF
+	select COMPAT_BINFMT_ELF if BINFMT_ELF
 	select HAVE_UID16
 	select ARCH_WANT_OLD_COMPAT_IPC
 	select COMPAT_OLD_SIGACTION
arch/sparc/lib/memset.S +1 -0
index b89d42b29e34..f427f34b8b79 100644
@@ -142,6 +142,7 @@ __bzero:
 	ZERO_LAST_BLOCKS(%o0, 0x48, %g2)
 	ZERO_LAST_BLOCKS(%o0, 0x08, %g2)
 13:
+	EXT(12b, 13b, 21f)
 	be	8f
 	 andcc	%o1, 4, %g0
 
arch/x86/kernel/reboot.c +10 -19
index 39f3cad58b6c..a19706bee687 100644
@@ -538,29 +538,20 @@ static void emergency_vmx_disable_all(void)
 	local_irq_disable();
 
 	/*
-	 * We need to disable VMX on all CPUs before rebooting, otherwise
-	 * we risk hanging up the machine, because the CPU ignore INIT
-	 * signals when VMX is enabled.
+	 * Disable VMX on all CPUs before rebooting, otherwise we risk hanging
+	 * the machine, because the CPU blocks INIT when it's in VMX root.
 	 *
-	 * We can't take any locks and we may be on an inconsistent
-	 * state, so we use NMIs as IPIs to tell the other CPUs to disable
-	 * VMX and halt.
+	 * We can't take any locks and we may be on an inconsistent state, so
+	 * use NMIs as IPIs to tell the other CPUs to exit VMX root and halt.
 	 *
-	 * For safety, we will avoid running the nmi_shootdown_cpus()
-	 * stuff unnecessarily, but we don't have a way to check
-	 * if other CPUs have VMX enabled. So we will call it only if the
-	 * CPU we are running on has VMX enabled.
-	 *
-	 * We will miss cases where VMX is not enabled on all CPUs. This
-	 * shouldn't do much harm because KVM always enable VMX on all
-	 * CPUs anyway. But we can miss it on the small window where KVM
-	 * is still enabling VMX.
+	 * Do the NMI shootdown even if VMX if off on _this_ CPU, as that
+	 * doesn't prevent a different CPU from being in VMX root operation.
 	 */
-	if (cpu_has_vmx() && cpu_vmx_enabled()) {
-		/* Disable VMX on this CPU. */
-		cpu_vmxoff();
+	if (cpu_has_vmx()) {
+		/* Safely force _this_ CPU out of VMX root operation. */
+		__cpu_emergency_vmxoff();
 
-		/* Halt and disable VMX on the other CPUs */
+		/* Halt and exit VMX root operation on the other CPUs. */
 		nmi_shootdown_cpus(vmxoff_nmi);
 
 	}
arch/x86/mm/pat.c +2 -1
index a3c9ea29d7cc..324e26d0607b 100644
@@ -1131,12 +1131,14 @@ static void *memtype_seq_start(struct seq_file *seq, loff_t *pos)
 
 static void *memtype_seq_next(struct seq_file *seq, void *v, loff_t *pos)
 {
+	kfree(v);
 	++*pos;
 	return memtype_get_idx(*pos);
 }
 
 static void memtype_seq_stop(struct seq_file *seq, void *v)
 {
+	kfree(v);
 }
 
 static int memtype_seq_show(struct seq_file *seq, void *v)
@@ -1145,7 +1147,6 @@ static int memtype_seq_show(struct seq_file *seq, void *v)
 
 	seq_printf(seq, "%s @ 0x%Lx-0x%Lx\n", cattr_name(print_entry->type),
 			print_entry->start, print_entry->end);
-	kfree(print_entry);
 
 	return 0;
 }
block/bfq-iosched.c +1 -0
index 5198ed1b3669..d984592b0995 100644
@@ -2478,6 +2478,7 @@ static void __bfq_set_in_service_queue(struct bfq_data *bfqd,
 	}
 
 	bfqd->in_service_queue = bfqq;
+	bfqd->in_serv_last_pos = 0;
 }
 
 /*
block/blk-core.c +1 -0
index ce3710404544..80f3e729fdd4 100644
@@ -1059,6 +1059,7 @@ struct request_queue *blk_alloc_queue_node(gfp_t gfp_mask, int node_id,
 	mutex_init(&q->blk_trace_mutex);
 #endif
 	mutex_init(&q->sysfs_lock);
+	mutex_init(&q->sysfs_dir_lock);
 	spin_lock_init(&q->__queue_lock);
 
 	if (!q->mq_ops)
block/blk-mq-sysfs.c +6 -6
index 5006a0d00990..5e4b7ed1e897 100644
@@ -264,7 +264,7 @@ void blk_mq_unregister_dev(struct device *dev, struct request_queue *q)
 	struct blk_mq_hw_ctx *hctx;
 	int i;
 
-	lockdep_assert_held(&q->sysfs_lock);
+	lockdep_assert_held(&q->sysfs_dir_lock);
 
 	queue_for_each_hw_ctx(q, hctx, i)
 		blk_mq_unregister_hctx(hctx);
@@ -312,7 +312,7 @@ int __blk_mq_register_dev(struct device *dev, struct request_queue *q)
 	int ret, i;
 
 	WARN_ON_ONCE(!q->kobj.parent);
-	lockdep_assert_held(&q->sysfs_lock);
+	lockdep_assert_held(&q->sysfs_dir_lock);
 
 	ret = kobject_add(&q->mq_kobj, kobject_get(&dev->kobj), "%s", "mq");
 	if (ret < 0)
@@ -358,7 +358,7 @@ void blk_mq_sysfs_unregister(struct request_queue *q)
 	struct blk_mq_hw_ctx *hctx;
 	int i;
 
-	mutex_lock(&q->sysfs_lock);
+	mutex_lock(&q->sysfs_dir_lock);
 	if (!q->mq_sysfs_init_done)
 		goto unlock;
 
@@ -366,7 +366,7 @@ void blk_mq_sysfs_unregister(struct request_queue *q)
 		blk_mq_unregister_hctx(hctx);
 
 unlock:
-	mutex_unlock(&q->sysfs_lock);
+	mutex_unlock(&q->sysfs_dir_lock);
 }
 
 int blk_mq_sysfs_register(struct request_queue *q)
@@ -374,7 +374,7 @@ int blk_mq_sysfs_register(struct request_queue *q)
 	struct blk_mq_hw_ctx *hctx;
 	int i, ret = 0;
 
-	mutex_lock(&q->sysfs_lock);
+	mutex_lock(&q->sysfs_dir_lock);
 	if (!q->mq_sysfs_init_done)
 		goto unlock;
 
@@ -385,7 +385,7 @@ int blk_mq_sysfs_register(struct request_queue *q)
 	}
 
 unlock:
-	mutex_unlock(&q->sysfs_lock);
+	mutex_unlock(&q->sysfs_dir_lock);
 
 	return ret;
 }
block/blk-settings.c +12 -0
index 01093b8f3e62..2c01b6f65110 100644
@@ -513,6 +513,14 @@ void blk_queue_io_opt(struct request_queue *q, unsigned int opt)
 }
 EXPORT_SYMBOL(blk_queue_io_opt);
 
+static unsigned int blk_round_down_sectors(unsigned int sectors, unsigned int lbs)
+{
+	sectors = round_down(sectors, lbs >> SECTOR_SHIFT);
+	if (sectors < PAGE_SIZE >> SECTOR_SHIFT)
+		sectors = PAGE_SIZE >> SECTOR_SHIFT;
+	return sectors;
+}
+
 /**
  * blk_queue_stack_limits - inherit underlying queue limits for stacked drivers
  * @t:	the stacking driver (top)
@@ -639,6 +647,10 @@ int blk_stack_limits(struct queue_limits *t, struct queue_limits *b,
 		ret = -1;
 	}
 
+	t->max_sectors = blk_round_down_sectors(t->max_sectors, t->logical_block_size);
+	t->max_hw_sectors = blk_round_down_sectors(t->max_hw_sectors, t->logical_block_size);
+	t->max_dev_sectors = blk_round_down_sectors(t->max_dev_sectors, t->logical_block_size);
+
 	/* Discard alignment and granularity */
 	if (b->discard_granularity) {
 		alignment = queue_limit_discard_alignment(b, start);
block/blk-sysfs.c +32 -17

112 lines not on this page · raw message

block/blk-wbt.c +1 -1
index f1de8ba483a9..50f2abfa1a60 100644
@@ -708,7 +708,7 @@ void wbt_enable_default(struct request_queue *q)
 		return;
 
 	/* Queue not registered? Maybe shutting down... */
-	if (!test_bit(QUEUE_FLAG_REGISTERED, &q->queue_flags))
+	if (!blk_queue_registered(q))
 		return;
 
 	if ((q->mq_ops && IS_ENABLED(CONFIG_BLK_WBT_MQ)) ||
block/blk.h +1 -1
index 1a5b67b57e6b..ae87e2a5f2bd 100644
@@ -244,7 +244,7 @@ int elevator_init_mq(struct request_queue *q);
 int elevator_switch_mq(struct request_queue *q,
 			      struct elevator_type *new_e);
 void elevator_exit(struct request_queue *, struct elevator_queue *);
-int elv_register_queue(struct request_queue *q);
+int elv_register_queue(struct request_queue *q, bool uevent);
 void elv_unregister_queue(struct request_queue *q);
 
 struct hd_struct *__disk_get_part(struct gendisk *disk, int partno);
block/elevator.c +20 -10
index ddbcd36616a8..5b51bc5fad9f 100644
@@ -833,13 +833,16 @@ static struct kobj_type elv_ktype = {
 	.release	= elevator_release,
 };
 
-int elv_register_queue(struct request_queue *q)
+/*
+ * elv_register_queue is called from either blk_register_queue or
+ * elevator_switch, elevator switch is prevented from being happen
+ * in the two paths, so it is safe to not hold q->sysfs_lock.
+ */
+int elv_register_queue(struct request_queue *q, bool uevent)
 {
 	struct elevator_queue *e = q->elevator;
 	int error;
 
-	lockdep_assert_held(&q->sysfs_lock);
-
 	error = kobject_add(&e->kobj, &q->kobj, "%s", "iosched");
 	if (!error) {
 		struct elv_fs_entry *attr = e->type->elevator_attrs;
@@ -850,7 +853,9 @@ int elv_register_queue(struct request_queue *q)
 				attr++;
 			}
 		}
-		kobject_uevent(&e->kobj, KOBJ_ADD);
+		if (uevent)
+			kobject_uevent(&e->kobj, KOBJ_ADD);
+
 		e->registered = 1;
 		if (!e->uses_mq && e->type->ops.sq.elevator_registered_fn)
 			e->type->ops.sq.elevator_registered_fn(q);
@@ -858,15 +863,19 @@ int elv_register_queue(struct request_queue *q)
 	return error;
 }
 
+/*
+ * elv_unregister_queue is called from either blk_unregister_queue or
+ * elevator_switch, elevator switch is prevented from being happen
+ * in the two paths, so it is safe to not hold q->sysfs_lock.
+ */
 void elv_unregister_queue(struct request_queue *q)
 {
-	lockdep_assert_held(&q->sysfs_lock);
-
 	if (q) {
 		struct elevator_queue *e = q->elevator;
 
 		kobject_uevent(&e->kobj, KOBJ_REMOVE);
 		kobject_del(&e->kobj);
+
 		e->registered = 0;
 		/* Re-enable throttling in case elevator disabled it */
 		wbt_enable_default(q);
@@ -942,6 +951,7 @@ int elevator_switch_mq(struct request_queue *q,
 	if (q->elevator) {
 		if (q->elevator->registered)
 			elv_unregister_queue(q);
+
 		ioc_clear_queue(q);
 		elevator_exit(q, q->elevator);
 	}
@@ -951,7 +961,7 @@ int elevator_switch_mq(struct request_queue *q,
 		goto out;
 
 	if (new_e) {
-		ret = elv_register_queue(q);
+		ret = elv_register_queue(q, true);
 		if (ret) {
 			elevator_exit(q, q->elevator);
 			goto out;
@@ -1047,7 +1057,7 @@ static int elevator_switch(struct request_queue *q, struct elevator_type *new_e)
 	if (err)
 		goto fail_init;
 
-	err = elv_register_queue(q);
+	err = elv_register_queue(q, true);
 	if (err)
 		goto fail_register;
 
@@ -1067,7 +1077,7 @@ static int elevator_switch(struct request_queue *q, struct elevator_type *new_e)
 	/* switch failed, restore and re-register old elevator */
 	if (old) {
 		q->elevator = old;
-		elv_register_queue(q);
+		elv_register_queue(q, true);
 		blk_queue_bypass_end(q);
 	}
 
@@ -1083,7 +1093,7 @@ static int __elevator_change(struct request_queue *q, const char *name)
 	struct elevator_type *e;
 
 	/* Make sure queue is not in the middle of being removed */
-	if (!test_bit(QUEUE_FLAG_REGISTERED, &q->queue_flags))
+	if (!blk_queue_registered(q))
 		return -ENOENT;
 
 	/*
certs/blacklist.c +1 -1
index 3a507b9e2568..e9f3f81c51f9 100644
@@ -157,7 +157,7 @@ static int __init blacklist_init(void)
 			      KEY_USR_VIEW | KEY_USR_READ |
 			      KEY_USR_SEARCH,
 			      KEY_ALLOC_NOT_IN_QUOTA |
-			      KEY_FLAG_KEEP,
+			      KEY_ALLOC_SET_KEEP,
 			      NULL, NULL);
 	if (IS_ERR(blacklist_keyring))
 		panic("Can't allocate system blacklist keyring\n");
crypto/ecdh_helper.c +3 -0
index d3af8e8b0b5e..25711de44584 100644
@@ -71,6 +71,9 @@ int crypto_ecdh_decode_key(const char *buf, unsigned int len,
 	if (secret.type != CRYPTO_KPP_SECRET_TYPE_ECDH)
 		return -EINVAL;
 
+	if (unlikely(len < secret.len))
+		return -EINVAL;
+
 	ptr = ecdh_unpack_data(&params->curve_id, ptr, sizeof(params->curve_id));
 	ptr = ecdh_unpack_data(&params->key_size, ptr, sizeof(params->key_size));
 	if (secret.len != crypto_ecdh_key_len(params))
drivers/acpi/acpi_configfs.c +6 -1
index b58850389094..c0325556a897 100644
@@ -269,7 +269,12 @@ static int __init acpi_configfs_init(void)
 
 	acpi_table_group = configfs_register_default_group(root, "table",
 							   &acpi_tables_type);
-	return PTR_ERR_OR_ZERO(acpi_table_group);
+	if (IS_ERR(acpi_table_group)) {
+		configfs_unregister_subsystem(&acpi_configfs);
+		return PTR_ERR(acpi_table_group);
+	}
+
+	return 0;
 }
 module_init(acpi_configfs_init);
 
drivers/acpi/property.c +33 -11

87 lines not on this page · raw message

drivers/amba/bus.c +12 -8
index 41b706403ef7..2380ebd9b7fd 100644
@@ -284,10 +284,11 @@ static int amba_remove(struct device *dev)
 {
 	struct amba_device *pcdev = to_amba_device(dev);
 	struct amba_driver *drv = to_amba_driver(dev->driver);
-	int ret;
+	int ret = 0;
 
 	pm_runtime_get_sync(dev);
-	ret = drv->remove(pcdev);
+	if (drv->remove)
+		ret = drv->remove(pcdev);
 	pm_runtime_put_noidle(dev);
 
 	/* Undo the runtime PM settings in amba_probe() */
@@ -304,7 +305,9 @@ static int amba_remove(struct device *dev)
 static void amba_shutdown(struct device *dev)
 {
 	struct amba_driver *drv = to_amba_driver(dev->driver);
-	drv->shutdown(to_amba_device(dev));
+
+	if (drv->shutdown)
+		drv->shutdown(to_amba_device(dev));
 }
 
 /**
@@ -317,12 +320,13 @@ static void amba_shutdown(struct device *dev)
  */
 int amba_driver_register(struct amba_driver *drv)
 {
-	drv->drv.bus = &amba_bustype;
+	if (!drv->probe)
+		return -EINVAL;
 
-#define SETFN(fn)	if (drv->fn) drv->drv.fn = amba_##fn
-	SETFN(probe);
-	SETFN(remove);
-	SETFN(shutdown);
+	drv->drv.bus = &amba_bustype;
+	drv->drv.probe = amba_probe;
+	drv->drv.remove = amba_remove;
+	drv->drv.shutdown = amba_shutdown;
 
 	return driver_register(&drv->drv);
 }
drivers/ata/ahci_brcm.c +13 -1
index 0192cab1b862..e58b336d1324 100644
@@ -370,6 +370,10 @@ static int brcm_ahci_resume(struct device *dev)
 	if (ret)
 		return ret;
 
+	ret = ahci_platform_enable_regulators(hpriv);
+	if (ret)
+		goto out_disable_clks;
+
 	brcm_sata_init(priv);
 	brcm_sata_phys_enable(priv);
 	brcm_sata_alpm_init(hpriv);
@@ -399,6 +403,8 @@ static int brcm_ahci_resume(struct device *dev)
 	ahci_platform_disable_phys(hpriv);
 out_disable_phys:
 	brcm_sata_phys_disable(priv);
+	ahci_platform_disable_regulators(hpriv);
+out_disable_clks:
 	ahci_platform_disable_clks(hpriv);
 	return ret;
 }
@@ -471,6 +477,10 @@ static int brcm_ahci_probe(struct platform_device *pdev)
 	if (ret)
 		goto out_reset;
 
+	ret = ahci_platform_enable_regulators(hpriv);
+	if (ret)
+		goto out_disable_clks;
+
 	/* Must be first so as to configure endianness including that
 	 * of the standard AHCI register space.
 	 */
@@ -480,7 +490,7 @@ static int brcm_ahci_probe(struct platform_device *pdev)
 	priv->port_mask = brcm_ahci_get_portmask(hpriv, priv);
 	if (!priv->port_mask) {
 		ret = -ENODEV;
-		goto out_disable_clks;
+		goto out_disable_regulators;
 	}
 
 	/* Must be done before ahci_platform_enable_phys() */
@@ -505,6 +515,8 @@ static int brcm_ahci_probe(struct platform_device *pdev)
 	ahci_platform_disable_phys(hpriv);
 out_disable_phys:
 	brcm_sata_phys_disable(priv);
+out_disable_regulators:
+	ahci_platform_disable_regulators(hpriv);
 out_disable_clks:
 	ahci_platform_disable_clks(hpriv);
 out_reset:
drivers/auxdisplay/ht16k33.c +1 -2
index 21393ec3b9a4..194370ae37dd 100644
@@ -117,8 +117,7 @@ static void ht16k33_fb_queue(struct ht16k33_priv *priv)
 {
 	struct ht16k33_fbdev *fbdev = &priv->fbdev;
 
-	schedule_delayed_work(&fbdev->work,
-			      msecs_to_jiffies(HZ / fbdev->refresh_rate));
+	schedule_delayed_work(&fbdev->work, HZ / fbdev->refresh_rate);
 }
 
 /*
drivers/base/regmap/regmap-sdw.c +2 -2
index 50a66382d87d..e75168b941d0 100644
@@ -12,7 +12,7 @@ static int regmap_sdw_write(void *context, unsigned int reg, unsigned int val)
 	struct device *dev = context;
 	struct sdw_slave *slave = dev_to_sdw_dev(dev);
 
-	return sdw_write(slave, reg, val);
+	return sdw_write_no_pm(slave, reg, val);
 }
 
 static int regmap_sdw_read(void *context, unsigned int reg, unsigned int *val)
@@ -21,7 +21,7 @@ static int regmap_sdw_read(void *context, unsigned int reg, unsigned int *val)
 	struct sdw_slave *slave = dev_to_sdw_dev(dev);
 	int read;
 
-	read = sdw_read(slave, reg);
+	read = sdw_read_no_pm(slave, reg);
 	if (read < 0)
 		return read;
 
drivers/block/floppy.c +14 -13
index bf222c4b2f82..56d4c7df9185 100644
@@ -4074,21 +4074,22 @@ static int floppy_open(struct block_device *bdev, fmode_t mode)
 	if (UFDCS->rawcmd == 1)
 		UFDCS->rawcmd = 2;
 
-	if (!(mode & FMODE_NDELAY)) {
-		if (mode & (FMODE_READ|FMODE_WRITE)) {
-			UDRS->last_checked = 0;
-			clear_bit(FD_OPEN_SHOULD_FAIL_BIT, &UDRS->flags);
-			check_disk_change(bdev);
-			if (test_bit(FD_DISK_CHANGED_BIT, &UDRS->flags))
-				goto out;
-			if (test_bit(FD_OPEN_SHOULD_FAIL_BIT, &UDRS->flags))
-				goto out;
-		}
-		res = -EROFS;
-		if ((mode & FMODE_WRITE) &&
-		    !test_bit(FD_DISK_WRITABLE_BIT, &UDRS->flags))
+	if (mode & (FMODE_READ|FMODE_WRITE)) {
+		UDRS->last_checked = 0;
+		clear_bit(FD_OPEN_SHOULD_FAIL_BIT, &UDRS->flags);
+		check_disk_change(bdev);
+		if (test_bit(FD_DISK_CHANGED_BIT, &UDRS->flags))
+			goto out;
+		if (test_bit(FD_OPEN_SHOULD_FAIL_BIT, &UDRS->flags))
 			goto out;
 	}
+
+	res = -EROFS;
+
+	if ((mode & FMODE_WRITE) &&
+			!test_bit(FD_DISK_WRITABLE_BIT, &UDRS->flags))
+		goto out;
+
 	mutex_unlock(&open_lock);
 	mutex_unlock(&floppy_mutex);
 	return 0;
drivers/bluetooth/btqcomsmd.c +19 -8
index 7df3eed1ef5e..874172aa8e41 100644
@@ -166,8 +166,10 @@ static int btqcomsmd_probe(struct platform_device *pdev)
 
 	btq->cmd_channel = qcom_wcnss_open_channel(wcnss, "APPS_RIVA_BT_CMD",
 						   btqcomsmd_cmd_callback, btq);
-	if (IS_ERR(btq->cmd_channel))
-		return PTR_ERR(btq->cmd_channel);
+	if (IS_ERR(btq->cmd_channel)) {
+		ret = PTR_ERR(btq->cmd_channel);
+		goto destroy_acl_channel;
+	}
 
 	/* The local-bd-address property is usually injected by the
 	 * bootloader which has access to the allocated BD address.
@@ -179,8 +181,10 @@ static int btqcomsmd_probe(struct platform_device *pdev)
 	}
 
 	hdev = hci_alloc_dev();
-	if (!hdev)
-		return -ENOMEM;
+	if (!hdev) {
+		ret = -ENOMEM;
+		goto destroy_cmd_channel;
+	}
 
 	hci_set_drvdata(hdev, btq);
 	btq->hdev = hdev;
@@ -194,14 +198,21 @@ static int btqcomsmd_probe(struct platform_device *pdev)
 	hdev->set_bdaddr = qca_set_bdaddr_rome;
 
 	ret = hci_register_dev(hdev);
-	if (ret < 0) {
-		hci_free_dev(hdev);
-		return ret;
-	}
+	if (ret < 0)
+		goto hci_free_dev;
 
 	platform_set_drvdata(pdev, btq);
 
 	return 0;
+
+hci_free_dev:
+	hci_free_dev(hdev);
+destroy_cmd_channel:
+	rpmsg_destroy_ept(btq->cmd_channel);
+destroy_acl_channel:
+	rpmsg_destroy_ept(btq->acl_channel);
+
+	return ret;
 }
 
 static int btqcomsmd_remove(struct platform_device *pdev)
drivers/char/hw_random/timeriomem-rng.c +1 -1
index f615684028af..ba01f24db6db 100644
@@ -72,7 +72,7 @@ static int timeriomem_rng_read(struct hwrng *hwrng, void *data,
 		 */
 		if (retval > 0)
 			usleep_range(period_us,
-					period_us + min(1, period_us / 100));
+					period_us + max(1, period_us / 100));
 
 		*(u32 *)data = readl(priv->io_base);
 		retval += sizeof(u32);
drivers/char/random.c +1 -1
index 98925d49c96b..297a716f5a56 100644
@@ -2071,7 +2071,7 @@ static long random_ioctl(struct file *f, unsigned int cmd, unsigned long arg)
 			return -EPERM;
 		if (crng_init < 2)
 			return -ENODATA;
-		crng_reseed(&primary_crng, NULL);
+		crng_reseed(&primary_crng, &input_pool);
 		crng_global_init_time = jiffies - 1;
 		return 0;
 	default:
drivers/char/tpm/tpm_tis_core.c +3 -47

68 lines not on this page · raw message

drivers/clk/meson/clk-pll.c +1 -1
index 3e04617ac47f..6fdad22a583d 100644
@@ -197,7 +197,7 @@ static int meson_clk_pll_set_rate(struct clk_hw *hw, unsigned long rate,
 	if (parent_rate == 0 || rate == 0)
 		return -EINVAL;
 
-	old_rate = rate;
+	old_rate = clk_hw_get_rate(hw);
 
 	pllt = meson_clk_get_pll_settings(rate, pll);
 	if (!pllt)
drivers/clk/qcom/gcc-msm8998.c +50 -50

341 lines not on this page · raw message

drivers/clk/sunxi-ng/ccu-sun50i-h6.c +5 -5
index d425b47cef17..1197ace59124 100644
@@ -223,7 +223,7 @@ static const char * const psi_ahb1_ahb2_parents[] = { "osc24M", "osc32k",
 static SUNXI_CCU_MP_WITH_MUX(psi_ahb1_ahb2_clk, "psi-ahb1-ahb2",
 			     psi_ahb1_ahb2_parents,
 			     0x510,
-			     0, 5,	/* M */
+			     0, 2,	/* M */
 			     8, 2,	/* P */
 			     24, 2,	/* mux */
 			     0);
@@ -232,19 +232,19 @@ static const char * const ahb3_apb1_apb2_parents[] = { "osc24M", "osc32k",
 						       "psi-ahb1-ahb2",
 						       "pll-periph0" };
 static SUNXI_CCU_MP_WITH_MUX(ahb3_clk, "ahb3", ahb3_apb1_apb2_parents, 0x51c,
-			     0, 5,	/* M */
+			     0, 2,	/* M */
 			     8, 2,	/* P */
 			     24, 2,	/* mux */
 			     0);
 
 static SUNXI_CCU_MP_WITH_MUX(apb1_clk, "apb1", ahb3_apb1_apb2_parents, 0x520,
-			     0, 5,	/* M */
+			     0, 2,	/* M */
 			     8, 2,	/* P */
 			     24, 2,	/* mux */
 			     0);
 
 static SUNXI_CCU_MP_WITH_MUX(apb2_clk, "apb2", ahb3_apb1_apb2_parents, 0x524,
-			     0, 5,	/* M */
+			     0, 2,	/* M */
 			     8, 2,	/* P */
 			     24, 2,	/* mux */
 			     0);
@@ -662,7 +662,7 @@ static struct ccu_mux hdmi_cec_clk = {
 
 	.common		= {
 		.reg		= 0xb10,
-		.features	= CCU_FEATURE_VARIABLE_PREDIV,
+		.features	= CCU_FEATURE_FIXED_PREDIV,
 		.hw.init	= CLK_HW_INIT_PARENTS("hdmi-cec",
 						      hdmi_cec_parents,
 						      &ccu_mux_ops,
drivers/clocksource/mxs_timer.c +1 -4
index f6ddae30933f..dae8c0c2e606 100644
@@ -138,10 +138,7 @@ static void mxs_irq_clear(char *state)
 
 	/* Clear pending interrupt */
 	timrot_irq_acknowledge();
-
-#ifdef DEBUG
-	pr_info("%s: changing mode to %s\n", __func__, state)
-#endif /* DEBUG */
+	pr_debug("%s: changing mode to %s\n", __func__, state);
 }
 
 static int mxs_shutdown(struct clock_event_device *evt)
drivers/cpufreq/brcmstb-avs-cpufreq.c +17 -7
index 77b0e5d0fb13..a3c82f530d60 100644
@@ -566,6 +566,16 @@ static int brcm_avs_prepare_init(struct platform_device *pdev)
 	return ret;
 }
 
+static void brcm_avs_prepare_uninit(struct platform_device *pdev)
+{
+	struct private_data *priv;
+
+	priv = platform_get_drvdata(pdev);
+
+	iounmap(priv->avs_intr_base);
+	iounmap(priv->base);
+}
+
 static int brcm_avs_cpufreq_init(struct cpufreq_policy *policy)
 {
 	struct cpufreq_frequency_table *freq_table;
@@ -701,21 +711,21 @@ static int brcm_avs_cpufreq_probe(struct platform_device *pdev)
 
 	brcm_avs_driver.driver_data = pdev;
 
-	return cpufreq_register_driver(&brcm_avs_driver);
+	ret = cpufreq_register_driver(&brcm_avs_driver);
+	if (ret)
+		brcm_avs_prepare_uninit(pdev);
+
+	return ret;
 }
 
 static int brcm_avs_cpufreq_remove(struct platform_device *pdev)
 {
-	struct private_data *priv;
 	int ret;
 
 	ret = cpufreq_unregister_driver(&brcm_avs_driver);
-	if (ret)
-		return ret;
+	WARN_ON(ret);
 
-	priv = platform_get_drvdata(pdev);
-	iounmap(priv->base);
-	iounmap(priv->avs_intr_base);
+	brcm_avs_prepare_uninit(pdev);
 
 	return 0;
 }
drivers/cpufreq/intel_pstate.c +3 -2
index 864a7e8ebdfc..c2d222f97db7 100644
@@ -1420,11 +1420,9 @@ static void intel_pstate_max_within_limits(struct cpudata *cpu)
 static void intel_pstate_get_cpu_pstates(struct cpudata *cpu)
 {
 	cpu->pstate.min_pstate = pstate_funcs.get_min();
-	cpu->pstate.max_pstate = pstate_funcs.get_max();
 	cpu->pstate.max_pstate_physical = pstate_funcs.get_max_physical();
 	cpu->pstate.turbo_pstate = pstate_funcs.get_turbo();
 	cpu->pstate.scaling = pstate_funcs.get_scaling();
-	cpu->pstate.max_freq = cpu->pstate.max_pstate * cpu->pstate.scaling;
 
 	if (hwp_active && !hwp_mode_bdw) {
 		unsigned int phy_max, current_max;
@@ -1432,9 +1430,12 @@ static void intel_pstate_get_cpu_pstates(struct cpudata *cpu)
 		intel_pstate_get_hwp_max(cpu->cpu, &phy_max, &current_max);
 		cpu->pstate.turbo_freq = phy_max * cpu->pstate.scaling;
 		cpu->pstate.turbo_pstate = phy_max;
+		cpu->pstate.max_pstate = HWP_GUARANTEED_PERF(READ_ONCE(cpu->hwp_cap_cached));
 	} else {
 		cpu->pstate.turbo_freq = cpu->pstate.turbo_pstate * cpu->pstate.scaling;
+		cpu->pstate.max_pstate = pstate_funcs.get_max();
 	}
+	cpu->pstate.max_freq = cpu->pstate.max_pstate * cpu->pstate.scaling;
 
 	if (pstate_funcs.get_aperf_mperf_shift)
 		cpu->aperf_mperf_shift = pstate_funcs.get_aperf_mperf_shift();
drivers/crypto/bcm/cipher.c +1 -1
index c2736274ad63..c63992fbbc98 100644
@@ -52,7 +52,7 @@
 
 /* ================= Device Structure ================== */
 
-struct device_private iproc_priv;
+struct bcm_device_private iproc_priv;
 
 /* ==================== Parameters ===================== */
 
drivers/crypto/bcm/cipher.h +2 -2
index 763c425c41ca..36452d26c7c5 100644
@@ -431,7 +431,7 @@ struct spu_hw {
 	u32 num_chan;
 };
 
-struct device_private {
+struct bcm_device_private {
 	struct platform_device *pdev;
 
 	struct spu_hw spu;
@@ -478,6 +478,6 @@ struct device_private {
 	struct mbox_chan **mbox;
 };
 
-extern struct device_private iproc_priv;
+extern struct bcm_device_private iproc_priv;
 
 #endif
drivers/crypto/bcm/util.c +1 -1
index a912c6ad3e85..f96d1dade010 100644
@@ -400,7 +400,7 @@ char *spu_alg_name(enum spu_cipher_alg alg, enum spu_cipher_mode mode)
 static ssize_t spu_debugfs_read(struct file *filp, char __user *ubuf,
 				size_t count, loff_t *offp)
 {
-	struct device_private *ipriv;
+	struct bcm_device_private *ipriv;
 	char *buf;
 	ssize_t ret, out_offset, out_count;
 	int i;
drivers/crypto/chelsio/chtls/chtls_cm.h +0 -3
index 4282d8a4eae4..ef7261072434 100644
@@ -53,9 +53,6 @@
 #define MIN_RCV_WND (24 * 1024U)
 #define LOOPBACK(x)     (((x) & htonl(0xff000000)) == htonl(0x7f000000))
 
-/* ulp_mem_io + ulptx_idata + payload + padding */
-#define MAX_IMM_ULPTX_WR_LEN (32 + 8 + 256 + 8)
-
 /* for TX: a skb must have a headroom of at least TX_HEADER_LEN bytes */
 #define TX_HEADER_LEN \
 	(sizeof(struct fw_ofld_tx_data_wr) + sizeof(struct sge_opaque_hdr))
drivers/crypto/sunxi-ss/sun4i-ss-cipher.c +73 -52

249 lines not on this page · raw message

drivers/crypto/talitos.c +16 -12
index c70a7c4f5b73..7a55baa861e5 100644
@@ -1066,11 +1066,12 @@ static void ipsec_esp_decrypt_hwauth_done(struct device *dev,
  */
 static int sg_to_link_tbl_offset(struct scatterlist *sg, int sg_count,
 				 unsigned int offset, int datalen, int elen,
-				 struct talitos_ptr *link_tbl_ptr)
+				 struct talitos_ptr *link_tbl_ptr, int align)
 {
 	int n_sg = elen ? sg_count + 1 : sg_count;
 	int count = 0;
 	int cryptlen = datalen + elen;
+	int padding = ALIGN(cryptlen, align) - cryptlen;
 
 	while (cryptlen && sg && n_sg--) {
 		unsigned int len = sg_dma_len(sg);
@@ -1094,7 +1095,7 @@ static int sg_to_link_tbl_offset(struct scatterlist *sg, int sg_count,
 			offset += datalen;
 		}
 		to_talitos_ptr(link_tbl_ptr + count,
-			       sg_dma_address(sg) + offset, len, 0);
+			       sg_dma_address(sg) + offset, sg_next(sg) ? len : len + padding, 0);
 		to_talitos_ptr_ext_set(link_tbl_ptr + count, 0, 0);
 		count++;
 		cryptlen -= len;
@@ -1117,10 +1118,11 @@ static int talitos_sg_map_ext(struct device *dev, struct scatterlist *src,
 			      unsigned int len, struct talitos_edesc *edesc,
 			      struct talitos_ptr *ptr, int sg_count,
 			      unsigned int offset, int tbl_off, int elen,
-			      bool force)
+			      bool force, int align)
 {
 	struct talitos_private *priv = dev_get_drvdata(dev);
 	bool is_sec1 = has_ftr_sec1(priv);
+	int aligned_len = ALIGN(len, align);
 
 	if (!src) {
 		to_talitos_ptr(ptr, 0, 0, is_sec1);
@@ -1128,22 +1130,22 @@ static int talitos_sg_map_ext(struct device *dev, struct scatterlist *src,
 	}
 	to_talitos_ptr_ext_set(ptr, elen, is_sec1);
 	if (sg_count == 1 && !force) {
-		to_talitos_ptr(ptr, sg_dma_address(src) + offset, len, is_sec1);
+		to_talitos_ptr(ptr, sg_dma_address(src) + offset, aligned_len, is_sec1);
 		return sg_count;
 	}
 	if (is_sec1) {
-		to_talitos_ptr(ptr, edesc->dma_link_tbl + offset, len, is_sec1);
+		to_talitos_ptr(ptr, edesc->dma_link_tbl + offset, aligned_len, is_sec1);
 		return sg_count;
 	}
 	sg_count = sg_to_link_tbl_offset(src, sg_count, offset, len, elen,
-					 &edesc->link_tbl[tbl_off]);
+					 &edesc->link_tbl[tbl_off], align);
 	if (sg_count == 1 && !force) {
 		/* Only one segment now, so no link tbl needed*/
 		copy_talitos_ptr(ptr, &edesc->link_tbl[tbl_off], is_sec1);
 		return sg_count;
 	}
 	to_talitos_ptr(ptr, edesc->dma_link_tbl +
-			    tbl_off * sizeof(struct talitos_ptr), len, is_sec1);
+			    tbl_off * sizeof(struct talitos_ptr), aligned_len, is_sec1);
 	to_talitos_ptr_ext_or(ptr, DESC_PTR_LNKTBL_JUMP, is_sec1);
 
 	return sg_count;
@@ -1155,7 +1157,7 @@ static int talitos_sg_map(struct device *dev, struct scatterlist *src,
 			  unsigned int offset, int tbl_off)
 {
 	return talitos_sg_map_ext(dev, src, len, edesc, ptr, sg_count, offset,
-				  tbl_off, 0, false);
+				  tbl_off, 0, false, 1);
 }
 
 /*
@@ -1224,7 +1226,7 @@ static int ipsec_esp(struct talitos_edesc *edesc, struct aead_request *areq,
 
 	ret = talitos_sg_map_ext(dev, areq->src, cryptlen, edesc, &desc->ptr[4],
 				 sg_count, areq->assoclen, tbl_off, elen,
-				 false);
+				 false, 1);
 
 	if (ret > 1) {
 		tbl_off += ret;
@@ -1244,7 +1246,7 @@ static int ipsec_esp(struct talitos_edesc *edesc, struct aead_request *areq,
 		elen = 0;
 	ret = talitos_sg_map_ext(dev, areq->dst, cryptlen, edesc, &desc->ptr[5],
 				 sg_count, areq->assoclen, tbl_off, elen,
-				 is_ipsec_esp && !encrypt);
+				 is_ipsec_esp && !encrypt, 1);
 	tbl_off += ret;
 
 	/* ICV data */
@@ -1554,6 +1556,8 @@ static int common_nonsnoop(struct talitos_edesc *edesc,
 	bool sync_needed = false;
 	struct talitos_private *priv = dev_get_drvdata(dev);
 	bool is_sec1 = has_ftr_sec1(priv);
+	bool is_ctr = (desc->hdr & DESC_HDR_SEL0_MASK) == DESC_HDR_SEL0_AESU &&
+		      (desc->hdr & DESC_HDR_MODE0_AESU_MASK) == DESC_HDR_MODE0_AESU_CTR;
 
 	/* first DWORD empty */
 
@@ -1574,8 +1578,8 @@ static int common_nonsnoop(struct talitos_edesc *edesc,
 	/*
 	 * cipher in
 	 */
-	sg_count = talitos_sg_map(dev, areq->src, cryptlen, edesc,
-				  &desc->ptr[3], sg_count, 0, 0);
+	sg_count = talitos_sg_map_ext(dev, areq->src, cryptlen, edesc, &desc->ptr[3],
+				      sg_count, 0, 0, 0, false, is_ctr ? 16 : 1);
 	if (sg_count > 1)
 		sync_needed = true;
 
drivers/crypto/talitos.h +1 -0
index cb0137e131cc..16f96c57de34 100644
@@ -377,6 +377,7 @@ static inline bool has_ftr_sec1(struct talitos_private *priv)
 
 /* primary execution unit mode (MODE0) and derivatives */
 #define	DESC_HDR_MODE0_ENCRYPT		cpu_to_be32(0x00100000)
+#define	DESC_HDR_MODE0_AESU_MASK	cpu_to_be32(0x00600000)
 #define	DESC_HDR_MODE0_AESU_CBC		cpu_to_be32(0x00200000)
 #define	DESC_HDR_MODE0_AESU_CTR		cpu_to_be32(0x00600000)
 #define	DESC_HDR_MODE0_DEU_CBC		cpu_to_be32(0x00400000)
drivers/dma/fsldma.c +6 -0
index 1117b5123a6f..e7ca3175dbc3 100644
@@ -1218,6 +1218,7 @@ static int fsldma_of_probe(struct platform_device *op)
 {
 	struct fsldma_device *fdev;
 	struct device_node *child;
+	unsigned int i;
 	int err;
 
 	fdev = kzalloc(sizeof(*fdev), GFP_KERNEL);
@@ -1296,6 +1297,10 @@ static int fsldma_of_probe(struct platform_device *op)
 	return 0;
 
 out_free_fdev:
+	for (i = 0; i < FSL_DMA_MAX_CHANS_PER_DEVICE; i++) {
+		if (fdev->chan[i])
+			fsl_dma_chan_remove(fdev->chan[i]);
+	}
 	irq_dispose_mapping(fdev->irq);
 	iounmap(fdev->regs);
 out_free:
@@ -1318,6 +1323,7 @@ static int fsldma_of_remove(struct platform_device *op)
 		if (fdev->chan[i])
 			fsl_dma_chan_remove(fdev->chan[i]);
 	}
+	irq_dispose_mapping(fdev->irq);
 
 	iounmap(fdev->regs);
 	kfree(fdev);
drivers/dma/hsu/pci.c +11 -10
index ad45cd344bba..78836526d2e0 100644
@@ -29,22 +29,12 @@
 static irqreturn_t hsu_pci_irq(int irq, void *dev)
 {
 	struct hsu_dma_chip *chip = dev;
-	struct pci_dev *pdev = to_pci_dev(chip->dev);
 	u32 dmaisr;
 	u32 status;
 	unsigned short i;
 	int ret = 0;
 	int err;
 
-	/*
-	 * On Intel Tangier B0 and Anniedale the interrupt line, disregarding
-	 * to have different numbers, is shared between HSU DMA and UART IPs.
-	 * Thus on such SoCs we are expecting that IRQ handler is called in
-	 * UART driver only.
-	 */
-	if (pdev->device == PCI_DEVICE_ID_INTEL_MRFLD_HSU_DMA)
-		return IRQ_HANDLED;
-
 	dmaisr = readl(chip->regs + HSU_PCI_DMAISR);
 	for (i = 0; i < chip->hsu->nr_channels; i++) {
 		if (dmaisr & 0x1) {
@@ -108,6 +98,17 @@ static int hsu_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
 	if (ret)
 		goto err_register_irq;
 
+	/*
+	 * On Intel Tangier B0 and Anniedale the interrupt line, disregarding
+	 * to have different numbers, is shared between HSU DMA and UART IPs.
+	 * Thus on such SoCs we are expecting that IRQ handler is called in
+	 * UART driver only. Instead of handling the spurious interrupt
+	 * from HSU DMA here and waste CPU time and delay HSU UART interrupt
+	 * handling, disable the interrupt entirely.
+	 */
+	if (pdev->device == PCI_DEVICE_ID_INTEL_MRFLD_HSU_DMA)
+		disable_irq_nosync(chip->irq);
+
 	pci_set_drvdata(pdev, chip);
 
 	return 0;
drivers/dma/owl-dma.c +1 -0
index 7ff04bf04b31..da5050ab7f38 100644
@@ -932,6 +932,7 @@ static int owl_dma_remove(struct platform_device *pdev)
 	owl_dma_free(od);
 
 	clk_disable_unprepare(od->clk);
+	dma_pool_destroy(od->lli_pool);
 
 	return 0;
 }
drivers/gpio/gpio-pcf857x.c +1 -1
index 68a35b65925a..d3fcc0d15eb8 100644
@@ -357,7 +357,7 @@ static int pcf857x_probe(struct i2c_client *client,
 	 * reset state.  Otherwise it flags pins to be driven low.
 	 */
 	gpio->out = ~n_latch;
-	gpio->status = gpio->out;
+	gpio->status = gpio->read(gpio->client);
 
 	status = devm_gpiochip_add_data(&client->dev, &gpio->chip, gpio);
 	if (status < 0)
drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c +3 -3
index e63a253eb425..cbb969a870f6 100644
@@ -617,7 +617,7 @@ static ssize_t amdgpu_get_pp_dpm_sclk(struct device *dev,
 static ssize_t amdgpu_read_mask(const char *buf, size_t count, uint32_t *mask)
 {
 	int ret;
-	long level;
+	unsigned long level;
 	char *sub_str = NULL;
 	char *tmp;
 	char buf_cpy[AMDGPU_MASK_BUF_MAX + 1];
@@ -633,8 +633,8 @@ static ssize_t amdgpu_read_mask(const char *buf, size_t count, uint32_t *mask)
 	while (tmp[0]) {
 		sub_str = strsep(&tmp, delimiter);
 		if (strlen(sub_str)) {
-			ret = kstrtol(sub_str, 0, &level);
-			if (ret)
+			ret = kstrtoul(sub_str, 0, &level);
+			if (ret || level > 31)
 				return -EINVAL;
 			*mask |= 1 << level;
 		} else
drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h +1 -1
index 7206a0025b17..db9907fb99f3 100644
@@ -21,7 +21,7 @@
  *
  */
 
-#if !defined(_AMDGPU_TRACE_H) || defined(TRACE_HEADER_MULTI_READ)
+#if !defined(_AMDGPU_TRACE_H_) || defined(TRACE_HEADER_MULTI_READ)
 #define _AMDGPU_TRACE_H_
 
 #include <linux/stringify.h>
drivers/gpu/drm/amd/display/dc/dce/dce_transform.c +4 -4
index ab63d0d0304c..6fd57cfb112f 100644
@@ -429,12 +429,12 @@ static void set_clamp(
 		clamp_max = 0x3FC0;
 		break;
 	case COLOR_DEPTH_101010:
-		/* 10bit MSB aligned on 14 bit bus '11 1111 1111 1100' */
-		clamp_max = 0x3FFC;
+		/* 10bit MSB aligned on 14 bit bus '11 1111 1111 0000' */
+		clamp_max = 0x3FF0;
 		break;
 	case COLOR_DEPTH_121212:
-		/* 12bit MSB aligned on 14 bit bus '11 1111 1111 1111' */
-		clamp_max = 0x3FFF;
+		/* 12bit MSB aligned on 14 bit bus '11 1111 1111 1100' */
+		clamp_max = 0x3FFC;
 		break;
 	default:
 		clamp_max = 0x3FC0;
drivers/gpu/drm/gma500/oaktrail_hdmi_i2c.c +13 -9
index e28107061148..fc9a34ed58bd 100644
@@ -279,11 +279,8 @@ int oaktrail_hdmi_i2c_init(struct pci_dev *dev)
 	hdmi_dev = pci_get_drvdata(dev);
 
 	i2c_dev = kzalloc(sizeof(struct hdmi_i2c_dev), GFP_KERNEL);
-	if (i2c_dev == NULL) {
-		DRM_ERROR("Can't allocate interface\n");
-		ret = -ENOMEM;
-		goto exit;
-	}
+	if (!i2c_dev)
+		return -ENOMEM;
 
 	i2c_dev->adap = &oaktrail_hdmi_i2c_adapter;
 	i2c_dev->status = I2C_STAT_INIT;
@@ -300,16 +297,23 @@ int oaktrail_hdmi_i2c_init(struct pci_dev *dev)
 			  oaktrail_hdmi_i2c_adapter.name, hdmi_dev);
 	if (ret) {
 		DRM_ERROR("Failed to request IRQ for I2C controller\n");
-		goto err;
+		goto free_dev;
 	}
 
 	/* Adapter registration */
 	ret = i2c_add_numbered_adapter(&oaktrail_hdmi_i2c_adapter);
-	return ret;
+	if (ret) {
+		DRM_ERROR("Failed to add I2C adapter\n");
+		goto free_irq;
+	}
 
-err:
+	return 0;
+
+free_irq:
+	free_irq(dev->irq, hdmi_dev);
+free_dev:
 	kfree(i2c_dev);
-exit:
+
 	return ret;
 }
 
drivers/gpu/drm/gma500/psb_drv.c +2 -0
index ac32ab5aa002..2fa3c7fc4b6d 100644
@@ -316,6 +316,8 @@ static int psb_driver_load(struct drm_device *dev, unsigned long flags)
 	if (ret)
 		goto out_err;
 
+	ret = -ENOMEM;
+
 	dev_priv->mmu = psb_mmu_driver_init(dev, 1, 0, 0);
 	if (!dev_priv->mmu)
 		goto out_err;
drivers/gpu/drm/msm/dsi/phy/dsi_phy_20nm.c +1 -1
index 1ca6c69516f5..4c037d855b27 100644
@@ -147,7 +147,7 @@ const struct msm_dsi_phy_cfg dsi_phy_20nm_cfgs = {
 		.disable = dsi_20nm_phy_disable,
 		.init = msm_dsi_phy_init_common,
 	},
-	.io_start = { 0xfd998300, 0xfd9a0300 },
+	.io_start = { 0xfd998500, 0xfd9a0500 },
 	.num_dsi_phy = 2,
 };
 
drivers/hid/hid-core.c +6 -3
index 05122167d9d8..9b66eb1d42c2 100644
@@ -93,7 +93,7 @@ EXPORT_SYMBOL_GPL(hid_register_report);
  * Register a new field for this report.
  */
 
-static struct hid_field *hid_register_field(struct hid_report *report, unsigned usages, unsigned values)
+static struct hid_field *hid_register_field(struct hid_report *report, unsigned usages)
 {
 	struct hid_field *field;
 
@@ -104,7 +104,7 @@ static struct hid_field *hid_register_field(struct hid_report *report, unsigned
 
 	field = kzalloc((sizeof(struct hid_field) +
 			 usages * sizeof(struct hid_usage) +
-			 values * sizeof(unsigned)), GFP_KERNEL);
+			 usages * sizeof(unsigned)), GFP_KERNEL);
 	if (!field)
 		return NULL;
 
@@ -300,7 +300,7 @@ static int hid_add_field(struct hid_parser *parser, unsigned report_type, unsign
 	usages = max_t(unsigned, parser->local.usage_index,
 				 parser->global.report_count);
 
-	field = hid_register_field(report, usages, parser->global.report_count);
+	field = hid_register_field(report, usages);
 	if (!field)
 		return 0;
 
@@ -1128,6 +1128,9 @@ EXPORT_SYMBOL_GPL(hid_open_report);
 
 static s32 snto32(__u32 value, unsigned n)
 {
+	if (!value || !n)
+		return 0;
+
 	switch (n) {
 	case 8:  return ((__s8)value);
 	case 16: return ((__s16)value);
drivers/hid/wacom_wac.c +6 -1
index da83884b90d2..274a55702784 100644
@@ -2557,7 +2557,12 @@ static void wacom_wac_finger_event(struct hid_device *hdev,
 		wacom_wac->hid_data.tipswitch = value;
 		break;
 	case HID_DG_CONTACTMAX:
-		features->touch_max = value;
+		if (!features->touch_max) {
+			features->touch_max = value;
+		} else {
+			hid_warn(hdev, "%s: ignoring attempt to overwrite non-zero touch_max "
+				 "%d -> %d\n", __func__, features->touch_max, value);
+		}
 		return;
 	}
 
drivers/hv/channel_mgmt.c +1 -2
index 7920b0d7e35a..ac9617671757 100644
@@ -1001,8 +1001,7 @@ static void vmbus_onoffer_rescind(struct vmbus_channel_message_header *hdr)
 			vmbus_device_unregister(channel->device_obj);
 			put_device(dev);
 		}
-	}
-	if (channel->primary_channel != NULL) {
+	} else if (channel->primary_channel != NULL) {
 		/*
 		 * Sub-channel is being rescinded. Following is the channel
 		 * close sequence when initiated from the driveri (refer to
drivers/i2c/busses/i2c-brcmstb.c +1 -1
index 826d32049996..2086a96307bf 100644
@@ -318,7 +318,7 @@ static int brcmstb_send_i2c_cmd(struct brcmstb_i2c_dev *dev,
 		goto cmd_out;
 	}
 
-	if ((CMD_RD || CMD_WR) &&
+	if ((cmd == CMD_RD || cmd == CMD_WR) &&
 	    bsc_readl(dev, iic_enable) & BSC_IIC_EN_NOACK_MASK) {
 		rc = -EREMOTEIO;
 		dev_dbg(dev->device, "controller received NOACK intr for %s\n",
drivers/infiniband/core/user_mad.c +16 -1
index a18f3f8ad77f..471a824be86c 100644
@@ -366,6 +366,11 @@ static ssize_t ib_umad_read(struct file *filp, char __user *buf,
 
 	mutex_lock(&file->mutex);
 
+	if (file->agents_dead) {
+		mutex_unlock(&file->mutex);
+		return -EIO;
+	}
+
 	while (list_empty(&file->recv_list)) {
 		mutex_unlock(&file->mutex);
 
@@ -379,6 +384,11 @@ static ssize_t ib_umad_read(struct file *filp, char __user *buf,
 		mutex_lock(&file->mutex);
 	}
 
+	if (file->agents_dead) {
+		mutex_unlock(&file->mutex);
+		return -EIO;
+	}
+
 	packet = list_entry(file->recv_list.next, struct ib_umad_packet, list);
 	list_del(&packet->list);
 
@@ -508,7 +518,7 @@ static ssize_t ib_umad_write(struct file *filp, const char __user *buf,
 
 	agent = __get_agent(file, packet->mad.hdr.id);
 	if (!agent) {
-		ret = -EINVAL;
+		ret = -EIO;
 		goto err_up;
 	}
 
@@ -637,10 +647,14 @@ static __poll_t ib_umad_poll(struct file *filp, struct poll_table_struct *wait)
 	/* we will always be able to post a MAD send */
 	__poll_t mask = EPOLLOUT | EPOLLWRNORM;
 
+	mutex_lock(&file->mutex);
 	poll_wait(filp, &file->recv_wait, wait);
 
 	if (!list_empty(&file->recv_list))
 		mask |= EPOLLIN | EPOLLRDNORM;
+	if (file->agents_dead)
+		mask = EPOLLERR;
+	mutex_unlock(&file->mutex);
 
 	return mask;
 }
@@ -1257,6 +1271,7 @@ static void ib_umad_kill_port(struct ib_umad_port *port)
 	list_for_each_entry(file, &port->file_list, port_list) {
 		mutex_lock(&file->mutex);
 		file->agents_dead = 1;
+		wake_up_interruptible(&file->recv_wait);
 		mutex_unlock(&file->mutex);
 
 		for (id = 0; id < IB_UMAD_MAX_AGENTS; ++id)
drivers/infiniband/hw/mlx5/devx.c +3 -1
index 4c90a007e09d..c89aec834972 100644
@@ -572,7 +572,9 @@ static void devx_obj_build_destroy_cmd(void *in, void *out, void *din,
 		MLX5_SET(general_obj_in_cmd_hdr, din, opcode, MLX5_CMD_OP_DESTROY_RQT);
 		break;
 	case MLX5_CMD_OP_CREATE_TIR:
-		MLX5_SET(general_obj_in_cmd_hdr, din, opcode, MLX5_CMD_OP_DESTROY_TIR);
+		*obj_id = MLX5_GET(create_tir_out, out, tirn);
+		MLX5_SET(destroy_tir_in, din, opcode, MLX5_CMD_OP_DESTROY_TIR);
+		MLX5_SET(destroy_tir_in, din, tirn, *obj_id);
 		break;
 	case MLX5_CMD_OP_CREATE_TIS:
 		MLX5_SET(general_obj_in_cmd_hdr, din, opcode, MLX5_CMD_OP_DESTROY_TIS);
drivers/infiniband/sw/rxe/rxe_net.c +5 -0
index 7903bd5c639e..04bfc36cc8d7 100644
@@ -500,6 +500,11 @@ int rxe_send(struct rxe_pkt_info *pkt, struct sk_buff *skb)
 
 void rxe_loopback(struct sk_buff *skb)
 {
+	if (skb->protocol == htons(ETH_P_IP))
+		skb_pull(skb, sizeof(struct iphdr));
+	else
+		skb_pull(skb, sizeof(struct ipv6hdr));
+
 	rxe_rcv(skb);
 }
 
drivers/infiniband/sw/rxe/rxe_recv.c +8 -3
index b8f3e65402d1..d94e2c5bc317 100644
@@ -36,21 +36,26 @@
 #include "rxe.h"
 #include "rxe_loc.h"
 
+/* check that QP matches packet opcode type and is in a valid state */
 static int check_type_state(struct rxe_dev *rxe, struct rxe_pkt_info *pkt,
 			    struct rxe_qp *qp)
 {
+	unsigned int pkt_type;
+
 	if (unlikely(!qp->valid))
 		goto err1;
 
+	pkt_type = pkt->opcode & 0xe0;
+
 	switch (qp_type(qp)) {
 	case IB_QPT_RC:
-		if (unlikely((pkt->opcode & IB_OPCODE_RC) != 0)) {
+		if (unlikely(pkt_type != IB_OPCODE_RC)) {
 			pr_warn_ratelimited("bad qp type\n");
 			goto err1;
 		}
 		break;
 	case IB_QPT_UC:
-		if (unlikely(!(pkt->opcode & IB_OPCODE_UC))) {
+		if (unlikely(pkt_type != IB_OPCODE_UC)) {
 			pr_warn_ratelimited("bad qp type\n");
 			goto err1;
 		}
@@ -58,7 +63,7 @@ static int check_type_state(struct rxe_dev *rxe, struct rxe_pkt_info *pkt,
 	case IB_QPT_UD:
 	case IB_QPT_SMI:
 	case IB_QPT_GSI:
-		if (unlikely(!(pkt->opcode & IB_OPCODE_UD))) {
+		if (unlikely(pkt_type != IB_OPCODE_UD)) {
 			pr_warn_ratelimited("bad qp type\n");
 			goto err1;
 		}
drivers/input/joydev.c +5 -2
index 4c1e427dfabb..7ef6e1c165e3 100644
@@ -460,7 +460,7 @@ static int joydev_handle_JSIOCSAXMAP(struct joydev *joydev,
 	if (IS_ERR(abspam))
 		return PTR_ERR(abspam);
 
-	for (i = 0; i < joydev->nabs; i++) {
+	for (i = 0; i < len && i < joydev->nabs; i++) {
 		if (abspam[i] > ABS_MAX) {
 			retval = -EINVAL;
 			goto out;
@@ -484,6 +484,9 @@ static int joydev_handle_JSIOCSBTNMAP(struct joydev *joydev,
 	int i;
 	int retval = 0;
 
+	if (len % sizeof(*keypam))
+		return -EINVAL;
+
 	len = min(len, sizeof(joydev->keypam));
 
 	/* Validate the map. */
@@ -491,7 +494,7 @@ static int joydev_handle_JSIOCSBTNMAP(struct joydev *joydev,
 	if (IS_ERR(keypam))
 		return PTR_ERR(keypam);
 
-	for (i = 0; i < joydev->nkey; i++) {
+	for (i = 0; i < (len / 2) && i < joydev->nkey; i++) {
 		if (keypam[i] > KEY_MAX || keypam[i] < BTN_MISC) {
 			retval = -EINVAL;
 			goto out;
drivers/input/joystick/xpad.c +1 -0
index ef4e8423843f..eacb8af8b4fc 100644
@@ -319,6 +319,7 @@ static const struct xpad_device {
 	{ 0x1bad, 0xfd00, "Razer Onza TE", 0, XTYPE_XBOX360 },
 	{ 0x1bad, 0xfd01, "Razer Onza", 0, XTYPE_XBOX360 },
 	{ 0x20d6, 0x2001, "BDA Xbox Series X Wired Controller", 0, XTYPE_XBOXONE },
+	{ 0x20d6, 0x2009, "PowerA Enhanced Wired Controller for Xbox Series X|S", 0, XTYPE_XBOXONE },
 	{ 0x20d6, 0x281f, "PowerA Wired Controller For Xbox 360", 0, XTYPE_XBOX360 },
 	{ 0x2e24, 0x0652, "Hyperkin Duke X-Box One pad", 0, XTYPE_XBOXONE },
 	{ 0x24c6, 0x5000, "Razer Atrox Arcade Stick", MAP_TRIGGERS_TO_BUTTONS, XTYPE_XBOX360 },
drivers/input/serio/i8042-x86ia64io.h +4 -0
index 844875df8cad..0463ab79160b 100644
@@ -592,6 +592,10 @@ static const struct dmi_system_id i8042_dmi_noselftest_table[] = {
 			DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
 			DMI_MATCH(DMI_CHASSIS_TYPE, "10"), /* Notebook */
 		},
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
+			DMI_MATCH(DMI_CHASSIS_TYPE, "31"), /* Convertible Notebook */
+		},
 	},
 	{ }
 };
drivers/input/touchscreen/elo.c +3 -1
index 7f2942f3cec6..0f3146bcfcd0 100644
@@ -345,8 +345,10 @@ static int elo_connect(struct serio *serio, struct serio_driver *drv)
 	switch (elo->id) {
 
 	case 0: /* 10-byte protocol */
-		if (elo_setup_10(elo))
+		if (elo_setup_10(elo)) {
+			err = -EIO;
 			goto fail3;
+		}
 
 		break;
 
drivers/input/touchscreen/raydium_i2c_ts.c +2 -1
index 05c1054330b7..1a8c7403cfe6 100644
@@ -419,6 +419,7 @@ static int raydium_i2c_write_object(struct i2c_client *client,
 				    enum raydium_bl_ack state)
 {
 	int error;
+	static const u8 cmd[] = { 0xFF, 0x39 };
 
 	error = raydium_i2c_send(client, RM_CMD_BOOT_WRT, data, len);
 	if (error) {
@@ -427,7 +428,7 @@ static int raydium_i2c_write_object(struct i2c_client *client,
 		return error;
 	}
 
-	error = raydium_i2c_send(client, RM_CMD_BOOT_ACK, NULL, 0);
+	error = raydium_i2c_send(client, RM_CMD_BOOT_ACK, cmd, sizeof(cmd));
 	if (error) {
 		dev_err(&client->dev, "Ack obj command failed: %d\n", error);
 		return error;
drivers/input/touchscreen/sur40.c +1 -0
index caa3aca2ea54..d5956854ac98 100644
@@ -778,6 +778,7 @@ static int sur40_probe(struct usb_interface *interface,
 		dev_err(&interface->dev,
 			"Unable to register video controls.");
 		v4l2_ctrl_handler_free(&sur40->hdl);
+		error = sur40->hdl.error;
 		goto err_unreg_v4l2;
 	}
 
drivers/md/dm-core.h +4 -0
index 7e426e4d1352..8cda3f7ddbae 100644
@@ -110,6 +110,10 @@ struct mapped_device {
 	/* zero-length flush that will be cloned and submitted to targets */
 	struct bio flush_bio;
 
+	int swap_bios;
+	struct semaphore swap_bios_semaphore;
+	struct mutex swap_bios_lock;
+
 	struct dm_stats stats;
 
 	struct kthread_worker kworker;
drivers/md/dm-crypt.c +1 -0
index 07661c3c1513..85559f772d0d 100644
@@ -2852,6 +2852,7 @@ static int crypt_ctr(struct dm_target *ti, unsigned int argc, char **argv)
 	wake_up_process(cc->write_thread);
 
 	ti->num_flush_bios = 1;
+	ti->limit_swap_bios = true;
 
 	return 0;
 
drivers/md/dm-era-target.c +60 -33

243 lines not on this page · raw message

drivers/md/dm.c +60 -0

118 lines not on this page · raw message

drivers/media/i2c/ov5670.c +2 -1
index 53dd30d96e69..62dfdcb6e0bd 100644
@@ -2081,7 +2081,8 @@ static int ov5670_init_controls(struct ov5670 *ov5670)
 
 	/* By default, V4L2_CID_PIXEL_RATE is read only */
 	ov5670->pixel_rate = v4l2_ctrl_new_std(ctrl_hdlr, &ov5670_ctrl_ops,
-					       V4L2_CID_PIXEL_RATE, 0,
+					       V4L2_CID_PIXEL_RATE,
+					       link_freq_configs[0].pixel_rate,
 					       link_freq_configs[0].pixel_rate,
 					       1,
 					       link_freq_configs[0].pixel_rate);
drivers/media/pci/cx25821/cx25821-core.c +3 -1
index 2f0171134f7e..e04fe9f17b7a 100644
@@ -986,8 +986,10 @@ int cx25821_riscmem_alloc(struct pci_dev *pci,
 	__le32 *cpu;
 	dma_addr_t dma = 0;
 
-	if (NULL != risc->cpu && risc->size < size)
+	if (risc->cpu && risc->size < size) {
 		pci_free_consistent(pci, risc->size, risc->cpu, risc->dma);
+		risc->cpu = NULL;
+	}
 	if (NULL == risc->cpu) {
 		cpu = pci_zalloc_consistent(pci, size, &dma);
 		if (NULL == cpu)
drivers/media/pci/intel/ipu3/ipu3-cio2.c +1 -1
index 2ad2870c03ae..cdf4d07343a7 100644
@@ -1290,7 +1290,7 @@ static int cio2_subdev_set_fmt(struct v4l2_subdev *sd,
 	fmt->format.code = formats[0].mbus_code;
 
 	for (i = 0; i < ARRAY_SIZE(formats); i++) {
-		if (formats[i].mbus_code == fmt->format.code) {
+		if (formats[i].mbus_code == mbus_code) {
 			fmt->format.code = mbus_code;
 			break;
 		}
drivers/media/pci/saa7134/saa7134-empress.c +4 -1
index 66acfd35ffc6..8680eb08b654 100644
@@ -293,8 +293,11 @@ static int empress_init(struct saa7134_dev *dev)
 	q->lock = &dev->lock;
 	q->dev = &dev->pci->dev;
 	err = vb2_queue_init(q);
-	if (err)
+	if (err) {
+		video_device_release(dev->empress_dev);
+		dev->empress_dev = NULL;
 		return err;
+	}
 	dev->empress_dev->queue = q;
 
 	video_set_drvdata(dev->empress_dev, dev);
drivers/media/platform/pxa_camera.c +3 -0
index 406ac673ad84..0281b8e53fef 100644
@@ -1452,6 +1452,9 @@ static int pxac_vb2_prepare(struct vb2_buffer *vb)
 	struct pxa_camera_dev *pcdev = vb2_get_drv_priv(vb->vb2_queue);
 	struct pxa_buffer *buf = vb2_to_pxa_buffer(vb);
 	int ret = 0;
+#ifdef DEBUG
+	int i;
+#endif
 
 	switch (pcdev->channels) {
 	case 1:
drivers/media/platform/qcom/camss/camss-video.c +1 -0
index c9bb0d023db4..e81ebeb0506e 100644
@@ -901,6 +901,7 @@ int msm_video_register(struct camss_video *video, struct v4l2_device *v4l2_dev,
 			video->nformats = ARRAY_SIZE(formats_rdi_8x96);
 		}
 	} else {
+		ret = -EINVAL;
 		goto error_video_register;
 	}
 
drivers/media/platform/vsp1/vsp1_drv.c +3 -1
index 4e6530ee809a..022f84569d0e 100644
@@ -882,8 +882,10 @@ static int vsp1_probe(struct platform_device *pdev)
 	}
 
 done:
-	if (ret)
+	if (ret) {
 		pm_runtime_disable(&pdev->dev);
+		rcar_fcp_put(vsp1->fcp);
+	}
 
 	return ret;
 }
drivers/media/tuners/qm1d1c0042.c +3 -1
index 83ca5dc047ea..baa9950783b6 100644
@@ -343,8 +343,10 @@ static int qm1d1c0042_init(struct dvb_frontend *fe)
 		if (val == reg_initval[reg_index][0x00])
 			break;
 	}
-	if (reg_index >= QM1D1C0042_NUM_REG_ROWS)
+	if (reg_index >= QM1D1C0042_NUM_REG_ROWS) {
+		ret = -EINVAL;
 		goto failed;
+	}
 	memcpy(state->regs, reg_initval[reg_index], QM1D1C0042_NUM_REGS);
 	usleep_range(2000, 3000);
 
drivers/media/usb/dvb-usb-v2/lmedm04.c +1 -1
index 0750a975bcb8..316edb2dd6c4 100644
@@ -436,7 +436,7 @@ static int lme2510_int_read(struct dvb_usb_adapter *adap)
 	ep = usb_pipe_endpoint(d->udev, lme_int->lme_urb->pipe);
 
 	if (usb_endpoint_type(&ep->desc) == USB_ENDPOINT_XFER_BULK)
-		lme_int->lme_urb->pipe = usb_rcvbulkpipe(d->udev, 0xa),
+		lme_int->lme_urb->pipe = usb_rcvbulkpipe(d->udev, 0xa);
 
 	lme_int->lme_urb->transfer_flags |= URB_NO_TRANSFER_DMA_MAP;
 
drivers/media/usb/em28xx/em28xx-core.c +1 -5
index 69445c8e38e2..d0f95a5cb4d2 100644
@@ -955,14 +955,10 @@ int em28xx_alloc_urbs(struct em28xx *dev, enum em28xx_mode mode, int xfer_bulk,
 
 		usb_bufs->buf[i] = kzalloc(sb_size, GFP_KERNEL);
 		if (!usb_bufs->buf[i]) {
-			em28xx_uninit_usb_xfer(dev, mode);
-
 			for (i--; i >= 0; i--)
 				kfree(usb_bufs->buf[i]);
 
-			kfree(usb_bufs->buf);
-			usb_bufs->buf = NULL;
-
+			em28xx_uninit_usb_xfer(dev, mode);
 			return -ENOMEM;
 		}
 
drivers/media/usb/tm6000/tm6000-dvb.c +4 -0
index 3db2fd7f5d7c..e4f2160f46ff 100644
@@ -149,6 +149,10 @@ static int tm6000_start_stream(struct tm6000_core *dev)
 	if (ret < 0) {
 		printk(KERN_ERR "tm6000: error %i in %s during pipe reset\n",
 							ret, __func__);
+
+		kfree(dvb->bulk_urb->transfer_buffer);
+		usb_free_urb(dvb->bulk_urb);
+		dvb->bulk_urb = NULL;
 		return ret;
 	} else
 		printk(KERN_ERR "tm6000: pipe resetted\n");
drivers/media/usb/uvc/uvc_v4l2.c +9 -9
index 0921c95a1dca..06167c51af12 100644
@@ -253,7 +253,9 @@ static int uvc_v4l2_try_format(struct uvc_streaming *stream,
 		goto done;
 
 	/* After the probe, update fmt with the values returned from
-	 * negotiation with the device.
+	 * negotiation with the device. Some devices return invalid bFormatIndex
+	 * and bFrameIndex values, in which case we can only assume they have
+	 * accepted the requested format as-is.
 	 */
 	for (i = 0; i < stream->nformats; ++i) {
 		if (probe->bFormatIndex == stream->format[i].index) {
@@ -262,11 +264,10 @@ static int uvc_v4l2_try_format(struct uvc_streaming *stream,
 		}
 	}
 
-	if (i == stream->nformats) {
-		uvc_trace(UVC_TRACE_FORMAT, "Unknown bFormatIndex %u\n",
+	if (i == stream->nformats)
+		uvc_trace(UVC_TRACE_FORMAT,
+			  "Unknown bFormatIndex %u, using default\n",
 			  probe->bFormatIndex);
-		return -EINVAL;
-	}
 
 	for (i = 0; i < format->nframes; ++i) {
 		if (probe->bFrameIndex == format->frame[i].bFrameIndex) {
@@ -275,11 +276,10 @@ static int uvc_v4l2_try_format(struct uvc_streaming *stream,
 		}
 	}
 
[… more lines in the raw message]

Lines of this file are not shown. View the raw message.

drivers/memory/ti-aemif.c +6 -2
index 475e5b3790ed..be3d978648f5 100644

Lines of this file are not shown. View the raw message.

drivers/mfd/bd9571mwv.c +3 -3
index fab3cdc27ed6..19d57a45134c 100644

Lines of this file are not shown. View the raw message.

drivers/mfd/wm831x-auxadc.c +1 -2
index fd789d2eb0f5..9f7ae1e1ebcd 100644

Lines of this file are not shown. View the raw message.

drivers/misc/aspeed-lpc-snoop.c +27 -3
index c10be21a1663..b4a776bf44bc 100644

Lines of this file are not shown. View the raw message.

drivers/misc/cardreader/rts5227.c +5 -0
index f0e845c8e6a7..d3ce9fe08eaf 100644

Lines of this file are not shown. View the raw message.

drivers/misc/eeprom/eeprom_93xx46.c +1 -0
index 38766968bfa2..a3248ebd28c6 100644

Lines of this file are not shown. View the raw message.

drivers/misc/vmw_vmci/vmci_queue_pair.c +4 -1
index 5e0d1ac67f73..9bc97d6a651d 100644

Lines of this file are not shown. View the raw message.

drivers/mmc/host/renesas_sdhi_internal_dmac.c +2 -2
index 74eea8247490..6e2685c9e9cb 100644

Lines of this file are not shown. View the raw message.

drivers/mmc/host/sdhci-esdhc-imx.c +2 -1
index bd502f4f4704..5099353e6f13 100644

Lines of this file are not shown. View the raw message.

drivers/mmc/host/usdhi6rol0.c +3 -1
index cdfeb15b6f05..ef3aa8b52078 100644

Lines of this file are not shown. View the raw message.

drivers/mtd/spi-nor/cadence-quadspi.c +1 -1
index 04cedd3a2bf6..a92f531ad23a 100644

Lines of this file are not shown. View the raw message.

drivers/mtd/spi-nor/hisi-sfc.c +3 -1
index dea7b0c4b339..184ba5069ac5 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/amd/xgbe/xgbe-common.h +14 -0
index b40d4377cc71..b2cd3bdba9f8 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/amd/xgbe/xgbe-drv.c +1 -0
index 5519eff58441..80cf6af822f7 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/amd/xgbe/xgbe-mdio.c +1 -2
index 8a3a60bb2688..156a0bc8ab01 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/amd/xgbe/xgbe-phy-v2.c +38 -1
index 3ceb4f95ca7c..54753c8a6a9d 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/broadcom/bnxt/bnxt.c +2 -1
index db1a23b8d531..44ed2f6e2d96 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/chelsio/cxgb4/cxgb4_uld.h +3 -0
index de9ad311dacd..ea0758de8ac8 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/chelsio/cxgb4/sge.c +8 -3
index 7801f2aeeb30..0a2d10a000ca 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/ibm/ibmvnic.c +12 -4
index 68d5971c200a..0c7c0206b1be 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/intel/i40e/i40e_main.c +10 -31

41 lines not on this page · raw message

drivers/net/ethernet/intel/i40e/i40e_txrx.c +6 -3
index b5042d1a63c0..9ccbcd88bf1e 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/marvell/mvneta.c +8 -1
index 30a16cf796c7..fda5dd8c71eb 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/mellanox/mlx4/resource_tracker.c +1 -0
index a4c1ed65f620..550e4893253e 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/realtek/r8169.c +2 -2
index 6b901bf1cd54..6fd1a639ec53 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/sun/sunvnet_common.c +4 -19
index baa3088b475c..59fc14b58c83 100644

Lines of this file are not shown. View the raw message.

drivers/net/gtp.c +2 -3
index bb9cd1262cc9..e18d06cb2173 100644

Lines of this file are not shown. View the raw message.

drivers/net/usb/qmi_wwan.c +1 -0
index bdfe88c754df..d2e5f5b7adf1 100644

Lines of this file are not shown. View the raw message.

drivers/net/vxlan.c +8 -3
index 66fffbd64a33..49e8c6d42cda 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/ath/ath10k/snoc.c +3 -2
index e2d78f77edb7..241e6f0e1dfe 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/ath/ath9k/debug.c +4 -1
index 0a6eb8a8c1ed..84fe68670949 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/broadcom/b43/phy_n.c +1 -1
index 44ab080d6518..88446258e775 100644

Lines of this file are not shown. View the raw message.

drivers/net/xen-netback/interface.c +5 -3
index c960cb7e3251..3b5fdb24ef1b 100644

Lines of this file are not shown. View the raw message.

drivers/nvdimm/dimm_devs.c +15 -3
index 863cabc35215..f0e0e3b42c91 100644

Lines of this file are not shown. View the raw message.

drivers/of/fdt.c +10 -2
index 800ad252cf9c..21160a08ead4 100644

Lines of this file are not shown. View the raw message.

drivers/pci/controller/dwc/pcie-qcom.c +3 -1
index 791d6b671ee0..33e510393976 100644

Lines of this file are not shown. View the raw message.

drivers/pci/syscall.c +5 -5
index d96626c614f5..a7bdd10fccf3 100644

Lines of this file are not shown. View the raw message.

drivers/power/reset/at91-sama5d2_shdwc.c +1 -1
index d9493e893d64..7cf59e764ef2 100644

Lines of this file are not shown. View the raw message.

drivers/pwm/pwm-rockchip.c +0 -1
index 4d99d468df09..48bcc853d57a 100644

Lines of this file are not shown. View the raw message.

drivers/regulator/axp20x-regulator.c +3 -4
index 91b8ff8bac15..c9e3677ac734 100644

Lines of this file are not shown. View the raw message.

drivers/regulator/s5m8767.c +6 -2
index 667d16dc83ce..7ff94695eee7 100644

Lines of this file are not shown. View the raw message.

drivers/rtc/Kconfig +1 -0
index 28a4505a1bc8..b5845f16a3a2 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/bnx2fc/Kconfig +1 -0
index d401a096dfc7..2eb2476852b1 100644

Lines of this file are not shown. View the raw message.

drivers/spi/spi-atmel.c +1 -1
index 5a9d7e252a77..2254e36c7f46 100644

Lines of this file are not shown. View the raw message.

drivers/spi/spi-pxa2xx-pci.c +19 -8
index 869f188b02eb..1736a48bbcce 100644

Lines of this file are not shown. View the raw message.

drivers/spi/spi-s3c24xx-fiq.S +3 -6
index 059f2dc1fda2..1565c792da07 100644

Lines of this file are not shown. View the raw message.

drivers/spi/spi-stm32.c +4 -0
index 8eb2644506dd..8d692f16d90a 100644

Lines of this file are not shown. View the raw message.

drivers/staging/gdm724x/gdm_usb.c +7 -3
index dc4da66c3695..54bdb64f52e8 100644

Lines of this file are not shown. View the raw message.

drivers/staging/mt7621-dma/Makefile +1 -1
index d3152d45cf45..e3ab560ed35a 100644

Lines of this file are not shown. View the raw message.

drivers/staging/mt7621-dma/hsdma-mt7621.c new file +771 -0

771 lines not on this page · raw message

drivers/staging/mt7621-dma/mtk-hsdma.c deleted +0 -771

771 lines not on this page · raw message

drivers/staging/rtl8188eu/os_dep/usb_intf.c +1 -0
index 276c965afc11..5c6630255ac2 100644

Lines of this file are not shown. View the raw message.

drivers/staging/rtl8723bs/os_dep/wifi_regd.c +1 -1
index aa2f62acc994..4dd6f3fb5906 100644

Lines of this file are not shown. View the raw message.

drivers/target/iscsi/cxgbit/cxgbit_target.c +1 -2
index 25eb3891e34b..56bfb30b0ef5 100644

Lines of this file are not shown. View the raw message.

drivers/usb/core/quirks.c +6 -3
index c1592403222f..239443ce5200 100644

Lines of this file are not shown. View the raw message.

drivers/usb/dwc2/hcd.c +8 -7
index a5c8329fd462..56a35e016039 100644

Lines of this file are not shown. View the raw message.

drivers/usb/dwc2/hcd_intr.c +13 -1
index a052d39b4375..d5f4ec1b73b1 100644

Lines of this file are not shown. View the raw message.

drivers/usb/dwc3/gadget.c +17 -2
index 6ab5c48f5d87..a0806dca3de9 100644

Lines of this file are not shown. View the raw message.

drivers/usb/gadget/function/u_audio.c +14 -3
index fb5ed97572e5..0cb0c638fd13 100644

Lines of this file are not shown. View the raw message.

drivers/usb/musb/musb_core.c +17 -14
index 28b4cacf7a78..9ce21b8caf35 100644

Lines of this file are not shown. View the raw message.

drivers/usb/serial/ftdi_sio.c +3 -2
index b2364e379429..a5891cb2c72e 100644

Lines of this file are not shown. View the raw message.

drivers/usb/serial/mos7720.c +3 -1
index 1f65bee521e6..1e3ee2bfbcd0 100644

Lines of this file are not shown. View the raw message.

drivers/usb/serial/mos7840.c +3 -1
index 4a7bd26841af..c78dfb7fd394 100644

Lines of this file are not shown. View the raw message.

drivers/usb/serial/option.c +2 -1
index cdf25a39fca7..aeaa3756f6ee 100644

Lines of this file are not shown. View the raw message.

drivers/video/fbdev/Kconfig +1 -1
index f99558d006bf..97c4319797d5 100644

Lines of this file are not shown. View the raw message.

drivers/watchdog/mei_wdt.c +1 -0
index 8023cf28657a..c862dd38b6f5 100644

Lines of this file are not shown. View the raw message.

fs/affs/namei.c +3 -1
index 41c5749f4db7..5400a876d73f 100644

Lines of this file are not shown. View the raw message.

fs/btrfs/ctree.c +5 -2
index f36b2a386aae..49db37b1f6e3 100644

Lines of this file are not shown. View the raw message.

fs/btrfs/free-space-cache.c +5 -1
index 652b0b16e93e..6511cb71986c 100644

Lines of this file are not shown. View the raw message.

fs/btrfs/relocation.c +1 -3
index eedcb7bf50e9..e6e4e6fb2add 100644

Lines of this file are not shown. View the raw message.

fs/cifs/connect.c +1 -0
index 6285085195c1..632249ce61eb 100644

Lines of this file are not shown. View the raw message.

fs/ext4/namei.c +3 -4
index 8f7e0ad5b5ef..0dde6385a125 100644

Lines of this file are not shown. View the raw message.

fs/f2fs/file.c +6 -1
index 59b5c0b032bb..95330dfdbb1a 100644

Lines of this file are not shown. View the raw message.

fs/f2fs/inline.c +4 -0
index 2fabeb0bb28f..299f295fcb6c 100644

Lines of this file are not shown. View the raw message.

fs/gfs2/lock_dlm.c +2 -6
index 62edf8f5615f..56dddc1f8ddd 100644

Lines of this file are not shown. View the raw message.

fs/isofs/dir.c +1 -0
index 947ce22f5b3c..55df4d80793b 100644

Lines of this file are not shown. View the raw message.

fs/isofs/namei.c +1 -0
index cac468f04820..558e7c51ce0d 100644

Lines of this file are not shown. View the raw message.

fs/jffs2/summary.c +3 -0
index be7c8a6a5748..4fe64519870f 100644

Lines of this file are not shown. View the raw message.

fs/jfs/jfs_dmap.c +1 -1
index 49263e220dbc..687b07b9b4f6 100644

Lines of this file are not shown. View the raw message.

fs/ntfs/inode.c +6 -0
index 0d4b5b9843b6..a2fb866ff76e 100644

Lines of this file are not shown. View the raw message.

fs/ocfs2/cluster/heartbeat.c +7 -1
index 9b2ed62dd638..19b0d358a0d6 100644

Lines of this file are not shown. View the raw message.

fs/pstore/platform.c +2 -2
index 2197bf68f278..904c2a60f5ba 100644

Lines of this file are not shown. View the raw message.

fs/quota/quota_v2.c +8 -3
index d99710270a37..addfaae8decf 100644

Lines of this file are not shown. View the raw message.

include/acpi/acexcep.h +5 -5
index 856c56ef0143..878b8e26c6c5 100644

Lines of this file are not shown. View the raw message.

include/asm-generic/vmlinux.lds.h +6 -1
index e71c97c3c25e..2d632a74cc5e 100644

Lines of this file are not shown. View the raw message.

include/linux/blkdev.h +2 -0
index 745b2d0dcf78..209ba8e7bd31 100644

Lines of this file are not shown. View the raw message.

include/linux/device-mapper.h +5 -0
index ff60ba537cf2..cde6708644ae 100644

Lines of this file are not shown. View the raw message.

include/linux/filter.h +1 -1
index d61dc72ebb96..117f9380069a 100644

Lines of this file are not shown. View the raw message.

include/linux/icmpv6.h +46 -2

48 lines not on this page · raw message

include/linux/ipv6.h +1 -1
index 8415bf1a9776..0ebd180e7f91 100644

Lines of this file are not shown. View the raw message.

include/linux/kexec.h +5 -0
index 9e4e638fb505..fe9f6f2dd811 100644

Lines of this file are not shown. View the raw message.

include/linux/key.h +1 -0
index e58ee10f6e58..3683c6a6fca3 100644

Lines of this file are not shown. View the raw message.

include/linux/rmap.h +2 -1
index 988d176472df..d7d6d4eb1794 100644

Lines of this file are not shown. View the raw message.

include/net/icmp.h +10 -0
index 8665bf24e3b7..ffe4a5d2bbe7 100644

Lines of this file are not shown. View the raw message.

include/net/tcp.h +7 -2
index afbe1d3991f2..4fe3ab47b480 100644

Lines of this file are not shown. View the raw message.

kernel/bpf/bpf_lru_list.c +4 -3
index e6ef4401a138..9b5eeff72fd3 100644

Lines of this file are not shown. View the raw message.

kernel/debug/kdb/kdb_private.h +1 -1
index 2118d8258b7c..ad53b19734e9 100644

Lines of this file are not shown. View the raw message.

kernel/jump_label.c +18 -8
index 7c8262635b29..01c673721894 100644

Lines of this file are not shown. View the raw message.

kernel/kexec_file.c +5 -0
index c6a3b6851372..2fbdb78d66c8 100644

Lines of this file are not shown. View the raw message.

kernel/module.c +19 -2
index 429769605871..d5d01ece720c 100644

Lines of this file are not shown. View the raw message.

kernel/printk/printk_safe.c +12 -4
index 82003d0d2e9f..0dbc06033113 100644

Lines of this file are not shown. View the raw message.

kernel/seccomp.c +2 -0
index b9bd5a6b5138..a9dd2325bdda 100644

Lines of this file are not shown. View the raw message.

kernel/tracepoint.c +64 -16

80 lines not on this page · raw message

mm/hugetlb.c +3 -1
index df89aed02302..9eb5c25fabc9 100644

Lines of this file are not shown. View the raw message.

mm/memory.c +9 -7
index eeae63bd9502..c1a05c2484b0 100644

Lines of this file are not shown. View the raw message.

net/bluetooth/a2mp.c +2 -1
index be9640e9ca00..e09ea78356c3 100644

Lines of this file are not shown. View the raw message.

net/bluetooth/hci_core.c +4 -2
index e03faca84919..04d6f50798c9 100644

Lines of this file are not shown. View the raw message.

net/core/filter.c +10 -3
index 557bd5cc8f94..bbf5dbb95644 100644

Lines of this file are not shown. View the raw message.

net/ipv4/icmp.c +34 -0
index 59c0b1a86e51..b048125ea099 100644

Lines of this file are not shown. View the raw message.

net/ipv6/icmp.c +10 -9
index 6d14cbe443f8..fbc8746371b6 100644

Lines of this file are not shown. View the raw message.

net/ipv6/ip6_icmp.c +41 -5

46 lines not on this page · raw message

net/mac80211/mesh_hwmp.c +1 -1
index 6219b6b0c7e1..18158855d98c 100644

Lines of this file are not shown. View the raw message.

net/qrtr/tun.c +11 -1
index 997af345ce37..cb425e216d46 100644

Lines of this file are not shown. View the raw message.

net/xfrm/xfrm_interface.c +3 -3
index 6cc9f6e2dd2b..eae8b9086497 100644

Lines of this file are not shown. View the raw message.

scripts/Makefile +7 -2
index 61affa300d25..3ce4981bb2b6 100644

Lines of this file are not shown. View the raw message.

scripts/recordmcount.pl +5 -1
index f599031260d5..7f6f96256b09 100755

Lines of this file are not shown. View the raw message.

security/commoncap.c +11 -1
index a1dee0ab345a..1bc40e78fa7f 100644

Lines of this file are not shown. View the raw message.

security/integrity/ima/ima_kexec.c +3 -0
index 16bd18747cfa..6a10d4d8b6e1 100644

Lines of this file are not shown. View the raw message.

security/integrity/ima/ima_mok.c +2 -3
index 073ddc9bce5b..3e7a1523663b 100644

Lines of this file are not shown. View the raw message.

security/keys/key.c +2 -0
index d5fa8c4fc554..d3ebc0533e3a 100644

Lines of this file are not shown. View the raw message.

security/keys/trusted.c +1 -1
index 09545c42977e..9179a5bbf998 100644

Lines of this file are not shown. View the raw message.

sound/pci/hda/patch_realtek.c +11 -0
index 9f0b05bcbd86..70571092db8d 100644

Lines of this file are not shown. View the raw message.

sound/soc/codecs/cpcap.c +6 -6
index d7f05b384f1f..1902689c5ea2 100644

Lines of this file are not shown. View the raw message.

sound/soc/codecs/cs42l56.c +2 -1
index a5c8736fad77..04f89b751304 100644

Lines of this file are not shown. View the raw message.

sound/usb/pcm.c +1 -1
index e4d2fcc89c30..4c9ab611aa3e 100644

Lines of this file are not shown. View the raw message.

tools/perf/tests/sample-parsing.c +1 -1
index 0e2d00d69e6e..66e46bc8d6f1 100644

Lines of this file are not shown. View the raw message.

tools/perf/util/event.c +2 -0
index 9c22729e2ad6..538c935b40b8 100644

Lines of this file are not shown. View the raw message.

tools/perf/util/intel-pt-decoder/intel-pt-decoder.c +3 -0
index 6522b6513895..e2f038f84dbc 100644

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.