tree caa628e62af9b961b17a9b19222087841d8dc1ca
parent 9b5bbdc8c29c9843d1e3af4275f51c9515f328ff
parent 509a32764e1a5692935c4f26ed96fbe94c480186
author COS Kernel Merge Bot <cloud-image-merge-automation@prod.google.com> 1668159761 -0800
committer COS Kernel Merge Bot <cloud-image-merge-automation@prod.google.com> 1668159762 -0800

merge-upstream/v5.15.78 from branch/tag: upstream/v5.15.78 into branch: cos-5.15

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

Aaron Lewis (1):
      KVM: x86: Protect the unused bits in MSR exiting flags

Alexander Graf (2):
      KVM: x86: Copy filter arg outside kvm_vm_ioctl_set_msr_filter()
      KVM: x86: Add compat handler for KVM_X86_SET_MSR_FILTER

Ard Biesheuvel (2):
      efi: random: reduce seed size to 32 bytes
      efi: random: Use 'ACPI reclaim' memory for random seed

Ashish Kalra (1):
      ACPI: APEI: Fix integer overflow in ghes_estatus_pool_init()

Baolin Wang (1):
      mm/hugetlb: fix races when looking up a CONT-PTE/PMD size hugetlb page

Benjamin Coddington (1):
      NFSv4.2: Fixup CLONE dest file size for zero-length count

Brian Norris (2):
      drm/rockchip: dsi: Clean up 'usage_mode' when failing to attach
      drm/rockchip: dsi: Force synchronous probe

Chen Zhongjin (6):
      net: dsa: Fix possible memory leaks in dsa_loop_init()
      RDMA/core: Fix null-ptr-deref in ib_core_cleanup()
      net/smc: Fix possible leaked pernet namespace in smc_init()
      net, neigh: Fix null-ptr-deref in neigh_table_clear()
      block: Fix possible memory leak for rq_wb on add_disk failure
      i2c: piix4: Fix adapter not be removed in piix4_remove()

Cristian Marussi (4):
      firmware: arm_scmi: Suppress the driver's bind attributes
      firmware: arm_scmi: Make Rx chan_setup fail on memory errors
      firmware: arm_scmi: Fix devres allocation device in virtio transport
      arm64: dts: juno: Add thermal critical trip points

Dan Carpenter (2):
      RDMA/qedr: clean up work queue on failure in qedr_alloc_resources()
      net: sched: Fix use after free in red_enqueue()

Daniel Thompson (1):
      drm/msm/hdmi: Remove spurious IRQF_ONESHOT flag

Danijel Slivka (1):
      drm/amdgpu: set vm_update_mode=0 as default for Sienna Cichlid in SRIOV case

David Sterba (1):
      btrfs: fix type of parameter generation in btrfs_get_dentry

Dean Luick (1):
      IB/hfi1: Correctly move list in sc_disable()

Dexuan Cui (1):
      vsock: fix possible infinite sleep in vsock_connectible_wait_data()

Dokyung Song (1):
      wifi: brcmfmac: Fix potential buffer overflow in brcmf_fweh_event_worker()

Emanuele Giuseppe Esposito (1):
      KVM: VMX: fully disable SGX if SECONDARY_EXEC_ENCLS_EXITING unavailable

Eric Biggers (2):
      fscrypt: stop using keyrings subsystem for fscrypt_master_key
      fscrypt: fix keyring memory leak on mount failure

Filipe Manana (4):
      btrfs: fix inode list leak during backref walking at resolve_indirect_refs()
      btrfs: fix inode list leak during backref walking at find_parent_nodes()
      btrfs: fix ulist leaks in error paths of qgroup self tests
      btrfs: fix lost file sync on direct IO write with nowait and dsync iocb

Gaosheng Cui (2):
      net: mdio: fix undefined behavior in bit shift for __mdiobus_register
      capabilities: fix potential memleak on error path from vfs_getxattr_alloc()

Greg Kroah-Hartman (1):
      Linux 5.15.78

Hangyu Hua (1):
      media: meson: vdec: fix possible refcount leak in vdec_probe()

Hans Verkuil (3):
      media: s5p_cec: limit msg.len to CEC_MAX_MSG_SIZE
      media: cros-ec-cec: limit msg.len to CEC_MAX_MSG_SIZE
      media: dvb-frontends/drxk: initialize err to 0

Hawkins Jiawei (1):
      Bluetooth: L2CAP: Fix memory leak in vhci_write

Heiko Carstens (1):
      s390/uaccess: add missing EX_TABLE entries to __clear_user()

Helge Deller (5):
      video/fbdev/stifb: Implement the stifb_fillrect() function
      fbdev: stifb: Fall back to cfb_fillrect() on 32-bit HCRX cards
      parisc: Make 8250_gsc driver dependend on CONFIG_PARISC
      parisc: Export iosapic_serial_irq() symbol for serial port driver
      parisc: Avoid printing the hardware path twice

Håkon Bugge (1):
      RDMA/cma: Use output interface for net_dev check

Ioana Ciornei (3):
      arm64: dts: lx2160a: specify clock frequencies for the MDIO controllers
      arm64: dts: ls1088a: specify clock frequencies for the MDIO controllers
      arm64: dts: ls208xa: specify clock frequencies for the MDIO controllers

James Smart (3):
      scsi: lpfc: Adjust bytes received vales during cmf timer interval
      scsi: lpfc: Adjust CMF total bytes and rxmonitor
      scsi: lpfc: Rework MIB Rx Monitor debug info logic

Jason A. Donenfeld (1):
      ipvs: use explicitly signed chars

Jerry Snitselaar (1):
      efi/tpm: Pass correct address to memblock_reserve

Jim Mattson (5):
      KVM: x86: Mask off reserved bits in CPUID.80000006H
      KVM: x86: Mask off reserved bits in CPUID.8000001AH
      KVM: x86: Mask off reserved bits in CPUID.80000008H
      KVM: x86: Mask off reserved bits in CPUID.80000001H
      KVM: x86: Mask off reserved bits in CPUID.8000001FH

Jiri Olsa (1):
      x86/syscall: Include asm/ptrace.h in syscall_wrapper header

Johan Hovold (1):
      drm/msm/hdmi: fix IRQ lifetime

Josef Bacik (1):
      btrfs: fix tree mod log mishandling of reallocated nodes

Jozsef Kadlecsik (1):
      netfilter: ipset: enforce documented limit to prevent allocating huge memory

Kan Liang (3):
      perf/x86/intel: Fix pebs event constraints for ICL
      perf/x86/intel: Add Cooper Lake stepping to isolation_ucodes[]
      perf/x86/intel: Fix pebs event constraints for SPR

Kuniyuki Iwashima (2):
      af_unix: Fix memory leaks of the whole sk due to OOB skb.
      tcp/udp: Make early_demux back namespacified.

Laurent Pinchart (4):
      media: rkisp1: Don't pass the quantization to rkisp1_csm_config()
      media: rkisp1: Initialize color space on resizer sink and source pads
      media: rkisp1: Use correct macro for gradient registers
      media: rkisp1: Zero v4l2_subdev_format fields in when validating links

Li Huafei (1):
      ftrace: Fix use-after-free for dynamic ftrace_ops

Li Qiang (1):
      kprobe: reverse kp->flags when arm_kprobe failed

Linus Walleij (1):
      mtd: parsers: bcm47xxpart: Fix halfblock reads

Liu Peibao (1):
      stmmac: dwmac-loongson: fix invalid mdio_node

Luiz Augusto von Dentz (2):
      Bluetooth: L2CAP: Fix accepting connection request for invalid SPSM
      Bluetooth: L2CAP: Fix attempting to access uninitialized memory

Lukas Wunner (1):
      serial: ar933x: Deassert Transmit Enable on ->rs485_config()

Luís Henriques (1):
      ext4: fix BUG_ON() when directory entry has invalid rec_len

Mark Rutland (1):
      arm64: entry: avoid kprobe recursion

Martin Tůma (1):
      i2c: xiic: Add platform module alias

Matthew Wilcox (Oracle) (1):
      ext4,f2fs: fix readahead of verity data

Maxim Levitsky (4):
      KVM: x86: emulator: em_sysexit should update ctxt->mode
      KVM: x86: emulator: introduce emulator_recalc_and_set_mode
      KVM: x86: emulator: update the emulation mode after rsm
      KVM: x86: emulator: update the emulation mode after CR0 write

Maxim Mikityanskiy (1):
      Bluetooth: L2CAP: Fix use-after-free caused by l2cap_reassemble_sdu

Miklos Szeredi (1):
      fuse: add file_modified() to fallocate

Nick Child (1):
      ibmvnic: Free rwi on reset success

Pablo Neira Ayuso (2):
      netfilter: nf_tables: netlink notifier might race to release objects
      netfilter: nf_tables: release flow rule object from commit path

Peng Fan (1):
      arm64: dts: imx8: correct clock order

Peter Oberparleiter (2):
      s390/boot: add secure boot trailer
      s390/cio: fix out-of-bounds access on cio_ignore free

Rafał Miłecki (1):
      mtd: parsers: bcm47xxpart: print correct offset on read error

Rasmus Villemoes (1):
      tools/nolibc/string: Fix memcmp() implementation

Roderick Colenbrander (1):
      HID: playstation: add initial DualSense Edge controller support

Ronnie Sahlberg (1):
      cifs: fix regression in very old smb1 mounts

Ryan Roberts (1):
      KVM: arm64: Fix bad dereference on MTE-enabled systems

Sakari Ailus (1):
      media: v4l: subdev: Fail graciously when getting try data for NULL state

Samuel Bailey (1):
      HID: saitek: add madcatz variant of MMO7 mouse device ID

Sean Christopherson (2):
      KVM: x86: Trace re-injected exceptions
      KVM: x86: Treat #DBs from the emulator as fault-like (code and DR7.GD=1)

Sergey Shtylyov (1):
      ata: pata_legacy: fix pdc20230_set_piomode()

Shang XiaoJing (5):
      nfc: fdp: Fix potential memory leak in fdp_nci_send()
      nfc: nxp-nci: Fix potential memory leak in nxp_nci_send()
      nfc: s3fwrn5: Fix potential memory leak in s3fwrn5_nci_send()
      nfc: nfcmrvl: Fix potential memory leak in nfcmrvl_i2c_nci_send()
      tracing: kprobe: Fix memory leak in test_gen_kprobe/kretprobe_cmd()

Shirish S (1):
      drm/amd/display: explicitly disable psr_feature_enable appropriately

Soenke Huster (1):
      Bluetooth: virtio_bt: Use skb_put to set length

Steven Rostedt (Google) (1):
      ring-buffer: Check for NULL cpu_buffer in ring_buffer_wake_waiters()

Sumit Garg (1):
      tee: Fix tee_shm_register() for kernel TEE drivers

Taniya Das (1):
      clk: qcom: Update the force mem core bit for GPU clocks

Tim Harvey (1):
      ARM: dts: imx6qdl-gw59{10,13}: fix user pushbutton GPIO offset

Trond Myklebust (3):
      NFSv4: Fix a potential state reclaim deadlock
      NFSv4.1: Handle RECLAIM_COMPLETE trunking errors
      NFSv4.1: We must always send RECLAIM_COMPLETE after a reboot

Uday Shankar (1):
      scsi: core: Restrict legal sdev_state transitions via sysfs

Ville Syrjälä (2):
      drm/i915/sdvo: Filter out invalid outputs more sensibly
      drm/i915/sdvo: Setup DDC fully before output init

Vineeth Vijayan (1):
      s390/cio: derive cdev information only for IO-subchannels

Vladimir Oltean (1):
      net: dsa: fall back to default tagger if we can't load the one from DT

Wenpeng Liang (1):
      RDMA/hns: Use hr_reg_xxx() instead of remaining roce_set_xxx()

Xinhao Liu (1):
      RDMA/hns: Remove magic number

Yang Yingliang (2):
      mISDN: fix possible memory leak in mISDN_register_device()
      isdn: mISDN: netjet: fix wrong check of device registration

Yangyang Li (1):
      RDMA/hns: Disable local invalidate operation

Ye Bin (1):
      ext4: fix warning in 'ext4_da_release_space'

Yu Kuai (1):
      block, bfq: protect 'bfqd->queued' by 'bfqd->lock'

Zhang Changzhong (1):
      net: fec: fix improper use of NETDEV_TX_BUSY

Zhang Qilong (1):
      rose: Fix NULL pointer dereference in rose_send_frame()

Zhang Xiaoxu (2):
      SUNRPC: Fix null-ptr-deref when xps sysfs alloc failed
      nfs4: Fix kmemleak when allocate slot failed

Zheng Yejian (1):
      tracing/histogram: Update document for KEYS_MAX size

Zhengchao Shao (4):
      ipvs: fix WARNING in __ip_vs_cleanup_batch()
      ipvs: fix WARNING in ip_vs_app_net_cleanup()
      Bluetooth: L2CAP: fix use-after-free in l2cap_conn_del()
      ipv6: fix WARNING in ip6_route_net_exit_late()

Ziyang Xuan (1):
      net: tun: fix bugs for oversize packet when napi frags enabled

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

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