tree b1a439bcc049b66d871bdc34e854f019761b6418
parent f6747cb1f423b62679f12c25ffe9cc61f70fa833
parent 59c8e332926875d337f426fde14fec986faab414
author COS Kernel Merge Bot <cloud-image-merge-automation@prod.google.com> 1617844357 -0700
committer COS Kernel Merge Bot <cloud-image-merge-automation@prod.google.com> 1617844357 -0700

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

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

Adrian Hunter (2):
      PM: runtime: Fix race getting/putting suppliers at probe
      PM: runtime: Fix ordering in pm_runtime_get_suppliers()

Alexey Dobriyan (1):
      scsi: qla2xxx: Fix broken #endif placement

Artur Petrosyan (2):
      usb: dwc2: Fix HPRT0.PrtSusp bit setting for HiKey 960 board.
      usb: dwc2: Prevent core suspend when port connection flag is 0

Atul Gopinathan (2):
      staging: rtl8192e: Fix incorrect source in memcpy()
      staging: rtl8192e: Change state information from u16 to u8

Benjamin Rood (1):
      ASoC: sgtl5000: set DAP_AVC_CTRL register to correct default value on probe

Christophe Leroy (1):
      powerpc: Force inlining of cpu_has_feature() to avoid build failure

Chunfeng Yun (1):
      usb: xhci-mtk: fix broken streams issue on 0.96 xHCI

David Brazdil (1):
      selinux: vsock: Set SID for socket returned by accept()

Davide Caratti (1):
      flow_dissector: fix TTL and TOS dissection on IPv4 fragments

Dinghao Liu (1):
      extcon: Fix error handling in extcon_dev_register

Doug Brown (1):
      appletalk: Fix skb allocation size in loopback case

Du Cheng (1):
      drivers: video: fbcon: fix NULL dereference in fbcon_cursor()

Eric Whitney (1):
      ext4: shrink race window in ext4_should_retry_alloc()

Frank van der Linden (1):
      module: harden ELF info handling

Greg Kroah-Hartman (1):
      Linux 5.4.110

Hans de Goede (3):
      ASoC: rt5640: Fix dac- and adc- vol-tlv values being off by a factor of 10
      ASoC: rt5651: Fix dac- and adc- vol-tlv values being off by a factor of 10
      ASoC: es8316: Simplify adc_pga_gain_tlv table

Hui Wang (2):
      ALSA: hda/realtek: fix a determine_headset_type issue for a Dell AIO
      ALSA: hda/realtek: call alc_update_headset_mode() in hp_automute_hook

Ikjoon Jang (1):
      ALSA: usb-audio: Apply sample rate quirk to Logitech Connect

Ilya Lipnitskiy (1):
      mm: fix race by making init_zero_pfn() early_initcall

J. Bruce Fields (1):
      rpc: fix NULL dereference on kmalloc failure

Jakub Kicinski (1):
      ipv6: weaken the v4mapped source check

Jason Gunthorpe (1):
      vfio/nvlink: Add missing SPAPR_TCE_IOMMU depends

Jesper Dangaard Brouer (1):
      bpf: Remove MTU check in __bpf_skb_max_len

Jessica Yu (1):
      modsign: print module name along with error message

Johan Hovold (2):
      USB: cdc-acm: fix double free on probe failure
      USB: cdc-acm: fix use-after-free after probe failure

Julian Braha (1):
      fs: nfsd: fix kconfig dependency warning for NFSD_V4

Krzysztof Kozlowski (1):
      extcon: Add stubs for extcon_register_notifier_all() functions

Laurent Vivier (1):
      vhost: Fix vhost_vq_reset()

Luca Pesce (1):
      brcmfmac: clear EAP/association status bits on linkdown events

Lucas Tanure (4):
      ASoC: cs42l42: Fix Bitclock polarity inversion
      ASoC: cs42l42: Fix channel width support
      ASoC: cs42l42: Fix mixer volume control
      ASoC: cs42l42: Always wait at least 3ms after reset

Lv Yunlong (1):
      scsi: st: Fix a use after free in st_open()

Manaf Meethalavalappu Pallikunhi (1):
      thermal/core: Add NULL pointer check before using cooling device stats

Marc Kleine-Budde (1):
      can: dev: move driver related infrastructure into separate subdir

Max Filippov (1):
      xtensa: move coprocessor_flush to the .text section

Nathan Rossi (1):
      net: ethernet: aquantia: Handle error cleanup of start on open

Nirmoy Das (1):
      drm/amdgpu: fix offset calculation in amdgpu_vm_bo_clear_mappings()

Oleksij Rempel (1):
      net: introduce CAN specific pointer in the struct net_device

Olga Kornievskaia (1):
      NFSD: fix error handling in NFSv4.0 callbacks

Oliver Neukum (3):
      cdc-acm: fix BREAK rx code path adding necessary calls
      USB: cdc-acm: untangle a circular dependency between callback and softint
      USB: cdc-acm: downgrade message to debug

Ritesh Harjani (1):
      iomap: Fix negative assignment to unsigned sis->pages in iomap_swapfile_activate

Sameer Pujar (1):
      ASoC: rt5659: Update MCLK rate in set_sysclk()

Sasha Levin (2):
      net: mvpp2: fix interrupt mask/unmask skip condition
      can: tcan4x5x: fix max register value

Sergey Shtylyov (2):
      module: merge repetitive strings in module_sig_check()
      module: avoid *goto*s in module_sig_check()

Shuah Khan (2):
      ath10k: hold RCU lock when calling ieee80211_find_sta_by_ifaddr()
      usbip: vhci_hcd fix shift out-of-bounds in vhci_hub_control()

Steven Rostedt (VMware) (1):
      tracing: Fix stack trace event size

Takashi Iwai (2):
      ALSA: hda: Re-add dropped snd_poewr_change_state() calls
      ALSA: hda: Add missing sanity checks in PM prepare/complete callbacks

Tetsuo Handa (1):
      reiserfs: update reiserfs_xattrs_initialized() condition

Tong Zhang (4):
      staging: comedi: cb_pcidas: fix request_irq() warn
      staging: comedi: cb_pcidas64: fix request_irq() warn
      net: wan/lmc: unregister device when no matching device is found
      usb: gadget: udc: amd5536udc_pci fix null-ptr-dereference

Tony Lindgren (1):
      usb: musb: Fix suspend with devices connected for a64

Vincent Palatin (1):
      USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem

Waiman Long (1):
      locking/ww_mutex: Simplify use_ww_ctx & ww_ctx handling

Wang Panzhenzhuan (1):
      pinctrl: rockchip: fix restore error in resume

Xℹ Ruoyao (1):
      drm/amdgpu: check alignment on CPU page for bo map

Zhaolong Zhang (1):
      ext4: fix bh ref count on error paths

Zheyu Ma (1):
      firewire: nosy: Fix a use-after-free bug in nosy_ioctl()

zhangyi (F) (1):
      ext4: do not iput inode under running transaction in ext4_rename()

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

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