tree d41ad9c52d21e32d9879cb01c21c1e2c82f2a146
parent 3ab8290539ba05c0189f04a25c5da389d9fcf506
parent 3df0eeae4d9a547c0f19924952ccb8290582e5d0
author COS Kernel Merge Bot <cloud-image-merge-automation@prod.google.com> 1668678225 -0800
committer COS Kernel Merge Bot <cloud-image-merge-automation@prod.google.com> 1668678225 -0800

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

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

Alex Barba (1):
      bnxt_en: fix potentially incorrect return value for ndo_rx_flow_steer

Alex Sierra (1):
      drm/amdkfd: avoid recursive lock in migrations back to RAM

Alexander Potapenko (1):
      ipv6: addrlabel: fix infoleak when sending struct ifaddrlblmsg to network

Anders Roxell (1):
      marvell: octeontx2: build error: unknown type name 'u64'

Antoine Tenart (2):
      net: phy: mscc: macsec: clear encryption keys when freeing a flow
      net: atlantic: macsec: clear encryption keys from the stack

Ard Biesheuvel (1):
      arm64: efi: Fix handling of misaligned runtime regions and drop warning

Arend van Spriel (1):
      wifi: cfg80211: fix memory leak in query_regdb_file()

Athira Rajeev (1):
      perf stat: Fix printing os->prefix in CSV metrics output

Borislav Petkov (1):
      x86/cpu: Restore AMD's DE_CFG MSR after resume

Brian Norris (5):
      mmc: cqhci: Provide helper for resetting both SDHCI and CQHCI
      mmc: sdhci-of-arasan: Fix SDHCI_RESET_ALL for CQHCI
      mmc: sdhci_am654: Fix SDHCI_RESET_ALL for CQHCI
      mmc: sdhci-tegra: Fix SDHCI_RESET_ALL for CQHCI
      mms: sdhci-esdhc-imx: Fix SDHCI_RESET_ALL for CQHCI

Christophe JAILLET (1):
      dmaengine: mv_xor_v2: Fix a resource leak in mv_xor_v2_remove()

Chuang Wang (1):
      net: macvlan: fix memory leaks of macvlan_common_newlink

Cong Wang (1):
      bpf, sock_map: Move cancel_work_sync() out of sock lock

Conor Dooley (1):
      riscv: fix reserved memory setup

Dan Carpenter (1):
      phy: stm32: fix an error code in probe

Donglin Peng (1):
      perf tools: Add the include/perf/ directory to .gitignore

Doug Brown (1):
      dmaengine: pxa_dma: use platform_get_irq_optional

Edson Juliano Drosdeck (1):
      ALSA: hda/realtek: Add Positivo C6300 model quirk

Eric Dumazet (1):
      net: tun: call napi_schedule_prep() to ensure we own a napi

Evan Quan (1):
      ALSA: hda/hdmi - enable runtime pm for more AMD display audio

Gaosheng Cui (1):
      capabilities: fix undefined behavior in bit shift for CAP_TO_MASK

Geetha sowjanya (1):
      octeontx2-pf: Use hardware register for CQE count

Greg Kroah-Hartman (1):
      Linux 5.15.79

Guchun Chen (1):
      drm/amdgpu: disable BACO on special BEIGE_GOBY card

HW He (2):
      net: wwan: iosm: fix memory leak in ipc_wwan_dellink
      net: wwan: mhi: fix memory leak in mhi_mbim_dellink

Haibo Chen (1):
      mmc: sdhci-esdhc-imx: use the correct host caps for MMC_CAP_8_BIT_DATA

Howard Hsu (1):
      wifi: mac80211: Set TWT Information Frame Disabled bit as 1

Jiaxun Yang (1):
      MIPS: jump_label: Fix compat branch range check

Jiri Benc (1):
      net: gso: fix panic on frag_list with mixed head alloc types

Jisheng Zhang (2):
      riscv: process: fix kernel info leakage
      riscv: vdso: fix build with llvm

Johannes Berg (1):
      wifi: cfg80211: silence a sparse RCU warning

Johannes Thumshirn (1):
      btrfs: zoned: initialize device's zone info for seeding

John Fastabend (1):
      bpf: Fix sockmap calling sleepable function in teardown path

John Thomson (1):
      phy: ralink: mt7621-pci: add sentinel to quirks table

Jorge Lopez (1):
      platform/x86: hp_wmi: Fix rfkill causing soft blocked wifi

Jussi Laako (1):
      ALSA: usb-audio: Add DSD support for Accuphase DAC-60

Kees Cook (1):
      bpf, verifier: Fix memory leak in array reallocation for stack state

Krzysztof Kozlowski (1):
      hwspinlock: qcom: correct MMIO max register for newer SoCs

Kumar Kartikeya Dwivedi (1):
      bpf: Add helper macro bpf_for_each_reg_in_vstate

Linus Torvalds (1):
      cert host tools: Stop complaining about deprecated OpenSSL functions

Liu Shixin (1):
      btrfs: fix match incorrectly in dev_args_match_device

Lu Wei (1):
      tcp: prohibit TCP_REPAIR_OPTIONS if data was already sent

M Chetan Kumar (1):
      net: wwan: iosm: fix memory leak in ipc_pcie_read_bios_cfg

Matthew Auld (1):
      drm/i915/dmabuf: fix sg_table handling in map_dma_buf

Michael Chan (1):
      bnxt_en: Fix possible crash in bnxt_hwrm_set_coal()

Mika Westerberg (1):
      thunderbolt: Tear down existing tunnels when resuming from hibernate

Miklos Szeredi (1):
      fuse: fix readdir cache race

Nathan Chancellor (1):
      vmlinux.lds.h: Fix placement of '.data..decrypted' section

Nico Boehr (1):
      KVM: s390: pv: don't allow userspace to set the clock under PV

Oliver Hartkopp (1):
      can: j1939: j1939_send_one(): fix missing CAN header initialization

Pankaj Gupta (1):
      mm/memremap.c: map FS_DAX device memory as decrypted

Peter Xu (1):
      mm/shmem: use page_mapping() to detect page cache for uffd continue

Philip Yang (2):
      drm/amdkfd: handle CPU fault on COW mapping
      drm/amdkfd: Migrate in CPU page fault use current mm

Pu Lehui (1):
      bpftool: Fix NULL pointer dereference when pin {PROG, MAP, LINK} without FILE

Rasmus Villemoes (1):
      net: stmmac: dwmac-meson8b: fix meson8b_devm_clk_prepare_enable()

Ratheesh Kannoth (1):
      octeontx2-pf: NIX TX overwrites SQ_CTX_HW_S[SQ_INT]

Roi Dayan (1):
      net/mlx5e: E-Switch, Fix comparing termination table instance

Roy Novich (1):
      net/mlx5: Allow async trigger completion execution on single CPU systems

Ryusuke Konishi (2):
      nilfs2: fix deadlock in nilfs_count_free_blocks()
      nilfs2: fix use-after-free bug of ns_writer on remount

Sabrina Dubroca (4):
      macsec: delete new rxsc when offload fails
      macsec: fix secy->n_rx_sc accounting
      macsec: fix detection of RXSCs when toggling offloading
      macsec: clear encryption keys from the stack after setting up offload

Sanjay R Mehta (1):
      thunderbolt: Add DP OUT resource when DP tunnel is discovered

Sean Anderson (1):
      net: fman: Unregister ethernet device on removal

SeongJae Park (1):
      mm/damon/dbgfs: check if rm_contexts input is for a real context

Shigeru Yoshida (1):
      netfilter: Cleanup nft_net->module_list from nf_tables_exit_net()

Shin'ichiro Kawasaki (1):
      ata: libata-scsi: fix SYNCHRONIZE CACHE (16) command failure

Srinivas Kandagatla (2):
      soundwire: qcom: reinit broadcast completion
      soundwire: qcom: check for outanding writes before doing a read

Takashi Iwai (2):
      ALSA: usb-audio: Yet more regression for for the delayed card registration
      ALSA: usb-audio: Add quirk entry for M-Audio Micro

Tan, Tee Min (1):
      stmmac: intel: Update PCH PTP clock rate from 200MHz to 204.8MHz

Tudor Ambarus (15):
      dmaengine: at_hdmac: Fix at_lli struct definition
      dmaengine: at_hdmac: Don't start transactions at tx_submit level
      dmaengine: at_hdmac: Start transfer for cyclic channels in issue_pending
      dmaengine: at_hdmac: Fix premature completion of desc in issue_pending
      dmaengine: at_hdmac: Do not call the complete callback on device_terminate_all
      dmaengine: at_hdmac: Protect atchan->status with the channel lock
      dmaengine: at_hdmac: Fix concurrency problems by removing atc_complete_all()
      dmaengine: at_hdmac: Fix concurrency over descriptor
      dmaengine: at_hdmac: Free the memset buf without holding the chan lock
      dmaengine: at_hdmac: Fix concurrency over the active list
      dmaengine: at_hdmac: Fix descriptor handling when issuing it to hardware
      dmaengine: at_hdmac: Fix completion of unissued descriptor in case of errors
      dmaengine: at_hdmac: Don't allow CPU to reorder channel enable
      dmaengine: at_hdmac: Fix impossible condition
      dmaengine: at_hdmac: Check return code of dma_async_device_register

Vlad Buslov (1):
      net/mlx5: Bridge, verify LAG state when adding bond to bridge

Wang Yufen (3):
      bpf, sockmap: Fix the sk->sk_forward_alloc warning of sk_stream_kill_queues
      bpf, sockmap: Fix sk->sk_forward_alloc warn_on in sk_stream_kill_queues
      net: tun: Fix memory leaks of napi_get_frags

Wei Yongjun (1):
      mctp: Fix an error handling path in mctp_init()

Wen Gong (1):
      wifi: ath11k: avoid deadlock during regulatory update in ath11k_regd_update()

Wong Vee Khee (1):
      stmmac: intel: Enable 2.5Gbps for Intel AlderLake-S

Xian Wang (1):
      ALSA: hda/ca0132: add quirk for EVGA Z390 DARK

Xin Long (1):
      tipc: fix the msg->req tlv len check in tipc_nl_compat_name_table_dump_header

Yang Li (1):
      drm/amdkfd: Fix NULL pointer dereference in svm_migrate_to_ram()

Yang Yingliang (5):
      HID: hyperv: fix possible memory leak in mousevsc_probe()
      dmaengine: ti: k3-udma-glue: fix memory leak when register device fail
      stmmac: dwmac-loongson: fix missing pci_disable_msi() while module exiting
      stmmac: dwmac-loongson: fix missing pci_disable_device() in loongson_dwmac_probe()
      stmmac: dwmac-loongson: fix missing of_node_put() while module exiting

Ye Bin (1):
      ALSA: hda: fix potential memleak in 'add_widget_node'

Youlin Li (1):
      bpf: Fix wrong reg type conversion in release_reference()

Yuan Can (1):
      drm/vc4: Fix missing platform_unregister_drivers() call in vc4_drm_register()

YueHaibing (1):
      net: broadcom: Fix BCMGENET Kconfig

Zhang Xiaoxu (1):
      btrfs: selftests: fix wrong error check in btrfs_free_dummy_root()

ZhangPeng (1):
      udf: Fix a slab-out-of-bounds write bug in udf_find_entry()

Zhengchao Shao (13):
      net: lapbether: fix issue of dev reference count leakage in lapbeth_device_event()
      hamradio: fix issue of dev reference count leakage in bpq_device_event()
      can: af_can: fix NULL pointer dereference in can_rx_register()
      net: lapbether: fix issue of invalid opcode in lapbeth_open()
      drivers: net: xgene: disable napi when register irq failed in xgene_enet_open()
      net: marvell: prestera: fix memory leak in prestera_rxtx_switch_init()
      net: nixge: disable napi when enable interrupts failed in nixge_open()
      net: cpsw: disable napi in cpsw_ndo_open()
      net: cxgb3_main: disable napi when bind qsets failed in cxgb_up()
      cxgb4vf: shut down the adapter when t4vf_update_port_info() failed in cxgb4vf_open()
      ethernet: s2io: disable napi when start nic failed in s2io_card_up()
      net: mv643xx_eth: disable napi when init rxq or txq failed in mv643xx_eth_open()
      ethernet: tundra: free irq when alloc ring failed in tsi108_open()

Ziyang Xuan (1):
      netfilter: nfnetlink: fix potential dead lock in nfnetlink_rcv_msg()

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

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