tree 245b5a0fddddc5a394c08166956a986958370b45
parent 7408a5a1fd5f268bf6390cd0da937b33c247dec0
parent a7eb81c1d11ae311c25db88c25a7d5228fe5680a
author COS Kernel Merge Bot <cloud-image-merge-automation@prod.google.com> 1619081991 -0700
committer COS Kernel Merge Bot <cloud-image-merge-automation@prod.google.com> 1619081991 -0700

merge-upstream/v5.4.114 from branch/tag: upstream/v5.4.114 into branch: cos-5.4

Changelog:
-------------------------------------------------------------

A. Cody Schuffelen (1):
      virt_wifi: Return micros for BSS TSF values

Alexander Aring (11):
      net: ieee802154: stop dump llsec keys for monitors
      net: ieee802154: forbid monitor for add llsec key
      net: ieee802154: forbid monitor for del llsec key
      net: ieee802154: stop dump llsec devs for monitors
      net: ieee802154: forbid monitor for add llsec dev
      net: ieee802154: forbid monitor for del llsec dev
      net: ieee802154: stop dump llsec devkeys for monitors
      net: ieee802154: forbid monitor for add llsec devkey
      net: ieee802154: forbid monitor for del llsec devkey
      net: ieee802154: stop dump llsec seclevels for monitors
      net: ieee802154: forbid monitor for add llsec seclevel

Alexander Shiyan (1):
      ASoC: fsl_esai: Fix TDM slot setup for I2S mode

Andre Przywara (1):
      arm64: dts: allwinner: Fix SD card CD GPIO for SOPine systems

Andy Shevchenko (1):
      dmaengine: dw: Make it dependent to HAS_IOMEM

Arnd Bergmann (3):
      ARM: keystone: fix integer overflow warning
      ARM: omap1: fix building with clang IAS
      Input: i8042 - fix Pegatron C15B ID entry

Arun Easi (1):
      scsi: qla2xxx: Fix device connect issues in P2P configuration

Caleb Connolly (1):
      Input: s6sy761 - fix coordinate read bit shift

Christian A. Ehrhardt (1):
      vfio/pci: Add missing range check in vfio_pci_mmap

Christophe JAILLET (1):
      net: davicom: Fix regulator not turned off on failed probe

Claudiu Beznea (1):
      net: macb: fix the restore of cmp registers

Eric Dumazet (2):
      netfilter: nft_limit: avoid possible divide error in nft_limit_init
      gro: ensure frag0 meets IP header alignment

Fabian Vogt (1):
      Input: nspire-keypad - enable interrupts only when opened

Florian Westphal (2):
      netfilter: bridge: add pre_exit hooks for ebtable unregistration
      netfilter: arp_tables: add pre_exit hook for table unregister

Fredrik Strupe (1):
      ARM: 9071/1: uprobes: Don't hook on thumb instructions

Greg Kroah-Hartman (1):
      Linux 5.4.114

Guenter Roeck (1):
      pcnet32: Use pci_resource_len to validate PCI resource

Heiner Kallweit (6):
      r8169: remove fiddling with the PCIe max read request size
      r8169: simplify setting PCI_EXP_DEVCTL_NOSNOOP_EN
      r8169: fix performance regression related to PCIe max read request size
      r8169: improve rtl_jumbo_config
      r8169: tweak max read request size for newer chips also in jumbo mtu mode
      r8169: don't advertise pause in jumbo mode

Hristo Venev (2):
      net: sit: Unregister catch-all devices
      net: ip6_tunnel: Unregister catch-all devices

Jaegeuk Kim (1):
      dm verity fec: fix misaligned RS roots IO

Jason Xing (1):
      i40e: fix the panic when running bpf in xdpdrv mode

Jolly Shah (1):
      scsi: libsas: Reset num_scatter if libata marks qc as NODATA

Kefeng Wang (1):
      riscv: Fix spelling mistake "SPARSEMEM" to "SPARSMEM"

Lijun Pan (3):
      ibmvnic: avoid calling napi_disable() twice
      ibmvnic: remove duplicate napi_schedule call in do_reset function
      ibmvnic: remove duplicate napi_schedule call in open function

Linus Torvalds (1):
      readdir: make sure to verify directory entry for legacy interfaces too

Martin Wilck (1):
      scsi: scsi_transport_srp: Don't block target in SRP_PORT_LOST state

Matti Vaittinen (1):
      gpio: sysfs: Obey valid_mask

Michael Hernandez (1):
      scsi: qla2xxx: Dual FCP-NVMe target port support

Nathan Chancellor (1):
      arm64: alternatives: Move length validation in alternative_{insn, endif}

Or Cohen (1):
      net/sctp: fix race condition in sctp_destroy_sock

Pablo Neira Ayuso (1):
      netfilter: conntrack: do not print icmpv6 as unknown via /proc

Pali Rohár (1):
      net: phy: marvell: fix detection of PHY on Topaz switches

Peter Collingbourne (1):
      arm64: fix inline asm in load_unaligned_zeropad()

Ping Cheng (1):
      HID: wacom: set EV_KEY and EV_ABS only for non-HID_GENERIC type of devices

Quinn Tran (3):
      scsi: qla2xxx: Retry PLOGI on FC-NVMe PRLI failure
      scsi: qla2xxx: Fix stuck login session using prli_pend_timer
      scsi: qla2xxx: Fix fabric scan hang

Rob Clark (1):
      drm/msm: Fix a5xx/a6xx timestamps

Russell King (1):
      ARM: footbridge: fix PCI interrupt mapping

Ryan Lee (1):
      ASoC: max98373: Added 30ms turn on/off time delay

Sasha Levin (2):
      Revert "scsi: qla2xxx: Retry PLOGI on FC-NVMe PRLI failure"
      Revert "scsi: qla2xxx: Fix stuck login session using prli_pend_timer"

Seevalamuthu Mariappan (1):
      mac80211: clear sta->fast_rx when STA removed from 4-addr VLAN

Shyam Sundar (1):
      scsi: qla2xxx: Add a shadow variable to hold disc_state history of fcport

Tetsuo Handa (1):
      lockdep: Add a missing initialization hint to the "INFO: Trying to register non-static key" message

Tong Zhu (1):
      neighbour: Disregard DEAD dst in neigh_update

Tony Lindgren (2):
      ARM: dts: Drop duplicate sha2md5_fck to fix clk_disable race
      ARM: dts: Fix moving mmc devices with aliases for omap4 & 5

Vaibhav Jain (1):
      libnvdimm/region: Fix nvdimm_has_flush() to handle ND_REGION_ASYNC

Wang Qing (1):
      arc: kernel: Return -EFAULT if copy_to_user() fails

BUG=b/186088208
TEST=tryjob, validation and K8s e2e
RELEASE_NOTE=Updated the Linux kernel to v5.4.114.

Signed-off-by: COS Kernel Merge Bot <cloud-image-merge-automation@prod.google.com>
Change-Id: I118be8c1350b211c2e45a47cd6dd3794ed263af8
