62223 Commits

Author SHA1 Message Date
79ad050bdd This is the 6.1.38 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmSlqDYACgkQONu9yGCS
 aT6bohAA2JQgHaer+7xCnxp21yqBDFGKUXTKc0yeFx8R0uGGv0evGgsJD2/U4EeW
 076gpANsR4Qks5sLzF/tjS5+wWztZkj/j1GgQ6uRSSk7qBrzCIpi8yod/IrTkXlO
 DHVO5BX7WJ0DKjCWAlebtn+hYgEaqH6DXiTzWLLu/4h8v3uT4yzQzZCtfEqxKF+Y
 UWPg+nih6Q/cwNNzQr1va+Wdqo60H8ajlJ8255Mcho4lrTLyGvBN7DV84u2R4LTv
 mK3SuiGwwOcxD6tSpRDqoDs/q/SrgTODmOOx0oYXRnUaadKvcHhDP/xTMJg0klHE
 gemmfIGvInG9NAJO/W8QvdZkMlh4o4akIPkRgSyWhGKXynJEX1b1vA5wGK+lw9er
 Yc1tEi1gNYo7vfenNiPjhM2SIhzxoMxCBCjfj+NnfRvK4Is/lLi9qu5x2DYGipVX
 FJ8H+igI/sivEgqMkB1J/hgWzH6cLneYSh83B4DXK3NjZlgR+g2QwEd3gFH0kf+/
 luzQtF06MFaCgQFEchOLOT1kWest/GW/KQEgzkxP60ZxyoqfaOeuMO/qqrSCbGwp
 JvZXw016ff1fmJQrbfCaORG0HRMByop74uie1zQqpcGU16pVWmXgUTMuQArzXttT
 y/mnE1p/5bZg/6xKal/sLIL4tY1+rAi6lhpIS47NusB20+cGjKQ=
 =yu08
 -----END PGP SIGNATURE-----

Merge 6.1.38 into android14-6.1-lts

Changes in 6.1.38
	xtensa: fix lock_mm_and_find_vma in case VMA not found
	drm/amd/display: Remove optimization for VRR updates
	drm/amd/display: Do not update DRR while BW optimizations pending
	PCI/ACPI: Validate acpi_pci_set_power_state() parameter
	PCI/ACPI: Call _REG when transitioning D-states
	execve: always mark stack as growing down during early stack setup
	nubus: Partially revert proc_create_single_data() conversion
	perf symbols: Symbol lookup with kcore can fail if multiple segments match stext
	scripts/tags.sh: Resolve gtags empty index generation
	docs: Set minimal gtags / GNU GLOBAL version to 6.6.5
	drm/amdgpu: Validate VM ioctl flags.
	drm/amd/display: Ensure vmin and vmax adjust for DCE
	Linux 6.1.38

Change-Id: I17bf08393a16d6b23541c445d7395f3e966d99b4
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-09-02 11:24:06 +00:00
b0dc0aac20 ACPI: thermal: Drop nocrt parameter
commit 5f641174a12b8a876a4101201a21ef4675ecc014 upstream.

The `nocrt` module parameter has no code associated with it and does
nothing.  As `crt=-1` has same functionality as what nocrt should be
doing drop `nocrt` and associated documentation.

This should fix a quirk for Gigabyte GA-7ZX that used `nocrt` and
thus didn't function properly.

Fixes: 8c99fdce3078 ("ACPI: thermal: set "thermal.nocrt" via DMI on Gigabyte GA-7ZX")
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Cc: All applicable <stable@vger.kernel.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-09-02 09:16:18 +02:00
e1fcc974b1 Merge keystone/android14-6.1-keystone-qcom-release.6.1.25 (af4467f) into
qcom-6.1

* refs/heads/tmp-af4467f:
  ANDROID: ABI: Update STG ABI to format version 2
  ANDROID: GKI: Update pixel symbol list for thermal
  ANDROID: thermal: Add vendor thermal genl check
  ANDROID: ABI: Update symbol for Exynos SoC
  ANDROID: GKI: Update mtk ABI symbol list
  ANDROID: ABI: Update symbol list for imx
  FROMGIT: Multi-gen LRU: Fix per-zone reclaim
  ANDROID: GKI: Update abi_gki_aarch64_qcom
  ANDROID: ABI: Update STG ABI to format version 2
  BACKPORT: FROMGIT: irqchip/gic-v3: Workaround for GIC-700 erratum 2941627
  ANDROID: ABI: update symbol list for Xclipse GPU
  ANDROID: drm/ttm: export ttm_tt_unpopulate()
  ANDROID: fuse-bpf: Add partial flock support
  ANDROID: Incremental fs: Allocate data buffer based on input request size
  UPSTREAM: gfs2: Don't deref jdesc in evict
  ANDROID: KVM: arm64: Fix MMU context save/restore over TLB invalidation
  ANDROID: Update symbol list for VIVO
  ANDROID: add initial symbol list file for ExynosAuto SoCs
  ANDROID: sched: Export sched_domains_mutex for lockdep
  ANDROID: Update symbol for Exynos SoC
  ANDROID: ABI: Update symbol for Exynos SoC
  ANDROID: Update symbol list for mtk
  UPSTREAM: dma-remap: use kvmalloc_array/kvfree for larger dma memory remap
  ANDROID: vendor_hooks: Supplement the missing hook call point.
  ANDROID: GKI: Add WWAN as GKI protected module
  ANDROID: GKI: regmap: Add regmap vendor hook for of_syscon_register
  UPSTREAM: kasan: suppress recursive reports for HW_TAGS
  UPSTREAM: kasan, arm64: add arch_suppress_tag_checks_start/stop
  UPSTREAM: arm64: mte: rename TCO routines
  BACKPORT: kasan, arm64: rename tagging-related routines
  UPSTREAM: kasan: drop empty tagging-related defines
  ANDROID: usb: xhci-plat: Fix double-free in xhci_plat_remove
  ANDROID: ABI: update symbol list for galaxy
  ANDROID: GKI: update the ABI symbol list
  ANDROID: ABI: Update symbol for Exynos SoC
  ANDROID: GKI: ABI: update whitelist for the kmsg_dump and native_hang symbols used by unisoc for kernel6.1
  ANDROID: ABI: Update symbols to unisoc whitelist for ims_bridge module
  ANDROID: abi_gki_aarch64_qcom: Add drm_plane_from_index and drm_gem_prime_export
  ANDROID: abi_gki_aarch64_qcom: Update symbol list
  UPSTREAM: fsverity: reject FS_IOC_ENABLE_VERITY on mode 3 fds
  UPSTREAM: fsverity: explicitly check for buffer overflow in build_merkle_tree()
  ANDROID: update unisoc symbol list
  ANDROID: update symbol for unisoc whitelist
  UPSTREAM: f2fs: fix deadlock in i_xattr_sem and inode page lock
  ANDROID: GKI: update xiaomi symbol list
  Revert "FROMLIST: f2fs: remove i_xattr_sem to avoid deadlock and fix the original issue"
  ANDROID: ABI: Update pixel symbol list
  ANDROID: Set arch attribute for allmodconfig builds
  UPSTREAM: usb: gadget: udc: renesas_usb3: Fix use after free bug in renesas_usb3_remove due to race condition
  ANDROID: ABI: Add to QCOM symbols list
  UPSTREAM: arm64: mm: pass original fault address to handle_mm_fault() in PER_VMA_LOCK block
  UPSTREAM: media: rkvdec: fix use after free bug in rkvdec_remove
  ANDROID: GKI: Update symbol list for MediatTek
  UPSTREAM: scsi: ufs: core: Remove dedicated hwq for dev command
  BACKPORT: scsi: ufs: mcq: Fix the incorrect OCS value for the device command
  FROMLIST: scsi: ufs: ufs-mediatek: Add MCQ support for MTK platform
  FROMLIST: scsi: ufs: core: Export symbols for MTK driver module
  UPSTREAM: blk-mq: check on cpu id when there is only one ctx mapping
  UPSTREAM: relayfs: fix out-of-bounds access in relay_file_read
  UPSTREAM: net/sched: flower: fix possible OOB write in fl_set_geneve_opt()
  UPSTREAM: x86/mm: Avoid using set_pgd() outside of real PGD pages
  UPSTREAM: iommu/amd: Add missing domain type checks
  UPSTREAM: tty: serial: qcom_geni: avoid duplicate struct member init
  UPSTREAM: scsi: ufs: core: bsg: Fix cast to restricted __be16 warning
  UPSTREAM: netfilter: nf_tables: incorrect error path handling with NFT_MSG_NEWRULE
  ANDROID: fix build error when use cpu_cgroup_online vh
  ANDROID: ABI: add android_debug_symbol to whitelist
  ANDROID: defconfig: Enable debug_symbol driver
  ANDROID: android: Create debug_symbols driver
  ANDROID: ABI: update symbol list for exynos
  ANDROID: KVM: arm64: Remove 'struct kvm_vcpu' from the KMI
  UPSTREAM: KVM: arm64: Restore GICv2-on-GICv3 functionality
  UPSTREAM: KVM: arm64: vgic: Wrap vgic_its_create() with config_lock
  UPSTREAM: KVM: arm64: vgic: Fix a circular locking issue
  UPSTREAM: KVM: arm64: vgic: Don't acquire its_lock before config_lock
  BACKPORT: KVM: arm64: Avoid lock inversion when setting the VM register width
  UPSTREAM: KVM: arm64: Avoid vcpu->mutex v. kvm->lock inversion in CPU_ON
  BACKPORT: KVM: arm64: Use config_lock to protect data ordered against KVM_RUN
  UPSTREAM: KVM: arm64: Use config_lock to protect vgic state
  BACKPORT: KVM: arm64: Add helper vgic_write_guest_lock()
  ANDROID: sound: usb: Fix wrong behavior of vendor hooking
  ANDROID: GKI: USB: XHCI: add Android ABI padding to struct xhci_vendor_ops
  Revert "ANDROID: android: Create debug_symbols driver"
  ANDROID: android: Create debug_symbols driver
  UPSTREAM: ipvlan:Fix out-of-bounds caused by unclear skb->cb
  ANDROID: update symbol list for unisoc vendor hook
  ANDROID: thermal: Add hook to enable/disable thermal power throttle
  ANDROID: ABI: Update symbol for Exynos SoC
  BACKPORT: FROMGIT: usb: gadget: udc: Handle gadget_connect failure during bind operation
  FROMGIT: usb: dwc3: gadget: Bail out in pullup if soft reset timeout happens
  ANDROID: GKI: Update symbol list for xiaomi
  ANDROID: vendor_hooks: vendor hook for MM
  ANDROID: add a symbol to unisoc symbol list
  ANDROID: GKI: update symbol list file for xiaomi
  UPSTREAM: net/sched: cls_u32: Fix reference counter leak leading to overflow
  ANDROID: db845c: Fix build when using --kgdb
  FROMGIT: usb: host: xhci-plat: Set XHCI_STATE_REMOVING before resuming XHCI HC
  FROMGIT: usb: host: xhci: Do not re-initialize the XHCI HC if being removed
  FROMLIST: kheaders: dereferences the source tree
  FROMLIST: f2fs: remove i_xattr_sem to avoid deadlock and fix the original issue
  ANDROID: db845c: Local define for db845c targets
  ANDROID: GKI: Update symbols to symbol list
  ANDROID: Export memcg functions to allow module to add new files
  ANDROID: rockpi4: Fix build when using --kgdb
  ANDROID: GKI: update symbol list file for xiaomi
  ANDROID: kleaf: android/gki_system_dlkm_modules is generated.
  ANDROID: ABI: Update pixel symbol list
  ANDROID: fuse-bpf: Move FUSE_RELEASE to correct place
  ANDROID: fuse-bpf: Ensure bpf field can never be nulled
  ANDROID: GKI: Increase CMA areas to 32
  ANDROID: Delete MODULES_LIST from build configs.
  ANDROID: ABI: Update symbols to unisoc whitelist
  ANDROID: HID: Only utilise UHID provided exports if UHID is enabled

 Conflicts:
	BUILD.bazel

Change-Id: Ibeee32bbc28dd5ad943cfb512ae73094cce2027c
Upstream-Build: ks_qcom-android14-6.1-keystone-qcom-release@10659679
UKQ2.230815.001
Signed-off-by: jianzhou <quic_jianzhou@quicinc.com>
2023-08-30 02:32:26 -07:00
40107a0081 FROMLIST: dt-bindings: hypervisor: Add MediaTek GenieZone hypervisor
Add documentation for GenieZone(gzvm) node. This node informs gzvm
driver to start probing if geniezone hypervisor is available and
able to do virtual machine operations.

Change-Id: Ie448a33b8981ee25fe36231a10af5c1372d23012
Signed-off-by: Yingshiuan Pan <yingshiuan.pan@mediatek.com>
Signed-off-by: Liju Chen <liju-clr.chen@mediatek.com>
Signed-off-by: Yi-De Wu <yi-de.wu@mediatek.com>
Bug: 280363874
Link: https://lore.kernel.org/lkml/20230727080005.14474-3-yi-de.wu@mediatek.com/
2023-08-29 18:02:40 +00:00
beaffb638b FROMLIST: docs: geniezone: Introduce GenieZone hypervisor
GenieZone is MediaTek proprietary hypervisor solution, and it is running
in EL2 stand alone as a type-I hypervisor. It is a pure EL2
implementation which implies it does not rely any specific host VM, and
this behavior improves GenieZone's security as it limits its interface.

Change-Id: I8326093b5be79af5f87285fc74ee0cd7f5827808
Signed-off-by: Yingshiuan Pan <yingshiuan.pan@mediatek.com>
Signed-off-by: Liju Chen <liju-clr.chen@mediatek.com>
Signed-off-by: Yi-De Wu <yi-de.wu@mediatek.com>
Bug: 280363874
Link: https://lore.kernel.org/lkml/20230727080005.14474-2-yi-de.wu@mediatek.com/
2023-08-29 18:02:40 +00:00
e6b40d2cb5 x86/cpu: Rename srso_(.*)_alias to srso_alias_\1
commit 42be649dd1f2eee6b1fb185f1a231b9494cf095f upstream.

For a more consistent namespace.

  [ bp: Fixup names in the doc too. ]

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Link: https://lore.kernel.org/r/20230814121148.976236447@infradead.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-26 13:26:59 +02:00
8b02e8901d Merge branch 'android14-6.1' into 'android14-6.1-lts'
Catches the android14-6.1-lts branch up with the android14-6.1 branch
which has had a lot of changes that are needed here to resolve future
LTS merges and to ensure that the ABI is kept stable.

It contains the following commits:

* 9fd41ac1729d ANDROID: Delete build.config.gki.aarch64.16k.
* 073df44c36d6 FROMGIT: usb: typec: tcpm: Refactor the PPS APDO selection
* 078410e73f08 UPSTREAM: usb: typec: tcpm: Fix response to vsafe0V event
* 722f6cc09c1d ANDROID: Revert "ANDROID: allmodconfig: disable WERROR"
* c2611a04b92f ANDROID: GKI: update symbol list file for xiaomi
* 34fde9ec08a3 FROMGIT: usb: typec: tcpm: not sink vbus if operational current is 0mA
* 3ebafb7b468b BACKPORT: FROMGIT: mm: handle faults that merely update the accessed bit under the VMA lock
* 9e066d4b35fe FROMLIST: mm: Allow fault_dirty_shared_page() to be called under the VMA lock
* 83ab9863246c FROMGIT: mm: handle swap and NUMA PTE faults under the VMA lock
* ffcebdef1657 FROMGIT: mm: run the fault-around code under the VMA lock
* 072c35fb69e2 FROMGIT: mm: move FAULT_FLAG_VMA_LOCK check down from do_fault()
* fa9a8adff04d FROMGIT: mm: move FAULT_FLAG_VMA_LOCK check down in handle_pte_fault()
* dd621869c1e6 BACKPORT: FROMGIT: mm: handle some PMD faults under the VMA lock
* 8594d6a30f8e BACKPORT: FROMGIT: mm: handle PUD faults under the VMA lock
* 66cbbe6b3144 FROMGIT: mm: move FAULT_FLAG_VMA_LOCK check from handle_mm_fault()
* e26044769f1d BACKPORT: FROMGIT: mm: allow per-VMA locks on file-backed VMAs
* 4cb518a06f90 FROMGIT: mm: remove CONFIG_PER_VMA_LOCK ifdefs
* f4b32b7f1543 FROMGIT: mm: fix a lockdep issue in vma_assert_write_locked
* 250f19771f4c FROMGIT: mm: handle userfaults under VMA lock
* e704d0e4f9ee FROMGIT: mm: handle swap page faults under per-VMA lock
* f8a65b694b03 FROMGIT: mm: change folio_lock_or_retry to use vm_fault directly
* 693d905ec0da BACKPORT: FROMGIT: mm: drop per-VMA lock when returning VM_FAULT_RETRY or VM_FAULT_COMPLETED
* 939d4b1ccc06 BACKPORT: FROMGIT: mm: move vma locking out of vma_prepare and dup_anon_vma
* 0f0b09c02c2a BACKPORT: FROMGIT: mm: always lock new vma before inserting into vma tree
* a8a479ed9629 FROMGIT: mm: lock vma explicitly before doing vm_flags_reset and vm_flags_reset_once
* ad1892385654 FROMGIT: mm: replace mmap with vma write lock assertions when operating on a vma
* 5f0ca924aa0f FROMGIT: mm: for !CONFIG_PER_VMA_LOCK equate write lock assertion for vma and mmap
* abb0f2767ee8 FROMGIT: mm: don't drop VMA locks in mm_drop_all_locks()
* 365af746f5ad BACKPORT: riscv: mm: try VMA lock-based page fault handling first
* 3c187b4a1250 BACKPORT: FROMGIT: mm: enable page walking API to lock vmas during the walk
* b6093c47fe2a BACKPORT: mm: lock VMA in dup_anon_vma() before setting ->anon_vma
* 0ee0062c9486 UPSTREAM: mm: fix memory ordering for mm_lock_seq and vm_lock_seq
* 3378cbd2649f FROMGIT: usb: host: ehci-sched: try to turn on io watchdog as long as periodic_count > 0
* 2d3351bd5ef5 FROMGIT: BACKPORT: usb: ehci: add workaround for chipidea PORTSC.PEC bug
* 7fa88611307e UPSTREAM: tty: n_gsm: fix UAF in gsm_cleanup_mux
* 683966ac69a0 UPSTREAM: mm/mmap: Fix extra maple tree write
* f86c79eb86ad FROMGIT: Multi-gen LRU: skip CMA pages when they are not eligible
* 7ae1e02abbfb UPSTREAM: mm: skip CMA pages when they are not available
* 7666325265b2 UPSTREAM: dma-buf: fix an error pointer vs NULL bug
* e61d76121fff UPSTREAM: dma-buf: keep the signaling time of merged fences v3
* fda157ce154f UPSTREAM: netfilter: nf_tables: skip bound chain on rule flush
* 110a26edd100 UPSTREAM: net/sched: sch_qfq: account for stab overhead in qfq_enqueue
* 9db143723846 UPSTREAM: net/sched: sch_qfq: refactor parsing of netlink parameters
* 76881029499a UPSTREAM: netfilter: nft_set_pipapo: fix improper element removal
* 37f450940760 ANDROID: Add checkpatch target.
* d7dacaa439c7 UPSTREAM: USB: Gadget: core: Help prevent panic during UVC unconfigure
* 4dc009c3a8aa ANDROID: GKI: Update symbols to symbol list
* fadc35923d8b ANDROID: vendor_hook: fix the error record position of mutex
* 3fc69d3f70e1 ANDROID: ABI: add allowed list for galaxy
* a5a662187fe2 ANDROID: gfp: add __GFP_CMA in gfpflag_names
* b520b909137c ANDROID: ABI: Update to fix slab-out-of-bounds in xhci_vendor_get_ops
* c2cbb3cc2468 ANDROID: usb: host: fix slab-out-of-bounds in xhci_vendor_get_ops
* 64787ee45196 ANDROID: GKI: update pixel symbol list for xhci
* b0c06048a8ff FROMGIT: fs: drop_caches: draining pages before dropping caches
* 2f76bb83b14d ANDROID: GKI: update symbol list file for xiaomi
* 8e86825eecfa ANDROID: uid_sys_stats: Use a single work for deferred updates
* 960d9828eee1 ANDROID: ABI: Update symbol for Exynos SoC
* 3926cc6ef8cc ANDROID: GKI: Add symbols to symbol list for vivo
* dbb09068c1df ANDROID: vendor_hooks: Add tune scan type hook in get_scan_count()
* 5e1d25ac2ab6 FROMGIT: BACKPORT: Multi-gen LRU: Fix can_swap in lru_gen_look_around()
* addf1a9a65a9 FROMGIT: Multi-gen LRU: Avoid race in inc_min_seq()
* a7adb988970e FROMGIT: Multi-gen LRU: Fix per-zone reclaim
* 03812b904e8d ANDROID: ABI: update symbol list for galaxy
* b283f9b41fc5 ANDROID: oplus: Update the ABI xml and symbol list
* c3d26e2b5aae ANDROID: vendor_hooks: Add hooks for lookaround
* 29e2f3e3d196 ANDROID: ABI: Update STG ABI to format version 2
* 3bd3d137019f ANDROID: ABI: Update symbol list for imx
* ad0b008167cb FROMGIT: erofs: fix wrong primary bvec selection on deduplicated extents
* 126ef64cbaae UPSTREAM: media: Add ABGR64_12 video format
* 86e2e8fd053e BACKPORT: media: Add BGR48_12 video format
* 892293272c10 UPSTREAM: media: Add YUV48_12 video format
* b2cf7e426877 UPSTREAM: media: Add Y212 v4l2 format info
* 0f3f7a21aff3 UPSTREAM: media: Add Y210, Y212 and Y216 formats
* ca7b45b12894 UPSTREAM: media: Add Y012 video format
* 343b85ecadc2 UPSTREAM: media: Add P012 and P012M video format
* 7beed73af066 ANDROID: GKI: Create symbol files in include/config
* 295e779e8f89 ANDROID: fuse-bpf: Use stored bpf for create_open
* 74d9daa59a1e ANDROID: fuse-bpf: Add bpf to negative fuse_dentry
* 6aef06abbad4 ANDROID: fuse-bpf: Check inode not null
* 4bbda90bd875 ANDROID: fuse-bpf: Fix flock test compile error
* 84ac22a0d31a ANDROID: fuse-bpf: Add partial ioctl support
* e341d2312c5f ANDROID: ABI: Update oplus symbol list
* f5c707dc65df UPSTREAM: mm/mempolicy: Take VMA lock before replacing policy
* 890b1aabb1f6 BACKPORT: mm: lock_vma_under_rcu() must check vma->anon_vma under vma lock
* d3b37a712ab7 BACKPORT: FROMGIT: irqchip/gic-v3: Workaround for GIC-700 erratum 2941627
* a89e2cbbc026 ANDROID: GKI: update xiaomi symbol list
* 371f8d901ab5 UPSTREAM: mm: lock newly mapped VMA with corrected ordering
* 0d9960403cb0 UPSTREAM: fork: lock VMAs of the parent process when forking
* e3601b25aeae UPSTREAM: mm: lock newly mapped VMA which can be modified after it becomes visible
* 05f7c7fe72fe UPSTREAM: mm: lock a vma before stack expansion
* c0ba567af11a ANDROID: GKI: bring back find_extend_vma()
* 188ce9572f11 BACKPORT: mm: always expand the stack with the mmap write lock held
* 74efdc0966f5 BACKPORT: execve: expand new process stack manually ahead of time
* c8ad90684960 ANDROID: abi_gki_aarch64_qcom: ufshcd_mcq_poll_cqe_lock
* 1afccd425597 UPSTREAM: mm: make find_extend_vma() fail if write lock not held
* 4087cac574fe UPSTREAM: powerpc/mm: convert coprocessor fault to lock_mm_and_find_vma()
* 6c33246824a5 UPSTREAM: mm/fault: convert remaining simple cases to lock_mm_and_find_vma()
* add0a1ea04ff UPSTREAM: arm/mm: Convert to using lock_mm_and_find_vma()
* 9f136450af1a UPSTREAM: riscv/mm: Convert to using lock_mm_and_find_vma()
* 053053fc68a4 UPSTREAM: mips/mm: Convert to using lock_mm_and_find_vma()
* 9cdce804c05a UPSTREAM: powerpc/mm: Convert to using lock_mm_and_find_vma()
* 1016faf50999 BACKPORT: arch/arm64/mm/fault: Fix undeclared variable error in do_page_fault()
* 89298b8b3ce6 BACKPORT: arm64/mm: Convert to using lock_mm_and_find_vma()
* cf70cb4f1f14 UPSTREAM: mm: make the page fault mmap locking killable
* 544ae28cf6b5 ANDROID: Inherit "user-aware property" across rtmutex.
* 5e4a5dc82033 BACKPORT: blk-crypto: use dynamic lock class for blk_crypto_profile::lock
* db2c29e53dfe ANDROID: ABI: update symbol list for Xclipse GPU
* 7edb035c79ac ANDROID: drm/ttm: export ttm_tt_unpopulate()
* b61f298c0d9a ANDROID: GKI: Add ABI symbol list(devlink) for MTK
* ec419af28fdd ANDROID: devlink: Select CONFIG_NET_DEVLINK in Kconfig.gki
* 1e114e6efac1 ANDROID: KVM: arm64: Fix memory ordering for pKVM module callbacks
* 3803ae4a2832 BACKPORT: mm: introduce new 'lock_mm_and_find_vma()' page fault helper
* 66b5ad35078b BACKPORT: maple_tree: fix potential out-of-bounds access in mas_wr_end_piv()
* 19dd4101e0e4 UPSTREAM: x86/smp: Cure kexec() vs. mwait_play_dead() breakage
* 26260c4bd1d0 UPSTREAM: x86/smp: Use dedicated cache-line for mwait_play_dead()
* d8cb0365cbc7 UPSTREAM: x86/smp: Remove pointless wmb()s from native_stop_other_cpus()
* 6744547e9534 UPSTREAM: x86/smp: Dont access non-existing CPUID leaf
* ba2ccba86348 UPSTREAM: x86/smp: Make stop_other_cpus() more robust
* 5c9836e66dde UPSTREAM: x86/microcode/AMD: Load late on both threads too
* 53048f151cd7 BACKPORT: mm, hwpoison: when copy-on-write hits poison, take page offline
* a2dff37b0c2e UPSTREAM: mm, hwpoison: try to recover from copy-on write faults
* 466448f55f0b BACKPORT: mm/mmap: Fix error return in do_vmi_align_munmap()
* 41b30362e991 BACKPORT: mm/mmap: Fix error path in do_vmi_align_munmap()
* d45a054f9ced UPSTREAM: HID: logitech-hidpp: add HIDPP_QUIRK_DELAYED_INIT for the T651.
* 0e477a82e6d9 UPSTREAM: HID: hidraw: fix data race on device refcount
* af2d741bf3d9 UPSTREAM: can: isotp: isotp_sendmsg(): fix return error fix on TX path
* 588704049155 UPSTREAM: fbdev: fix potential OOB read in fast_imageblit()
* 6c48edb9c92d ANDROID: GKI: add function symbols for unisoc
* 342aff08ae23 ANDROID: cgroup: Cleanup android_rvh_cgroup_force_kthread_migration
* fcdea346bb07 UPSTREAM: net/sched: cls_fw: Fix improper refcount update leads to use-after-free
* f091cc743426 UPSTREAM: netfilter: nf_tables: fix chain binding transaction logic
* 1bb5e7fb374b ANDROID: abi_gki_aarch64_qcom: update abi

Change-Id: I6f86301f218a60c00d03e09a4e3bfebe42bad0d5
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-08-23 18:31:43 +00:00
96522cf9c7 iommu/amd: Introduce Disable IRTE Caching Support
[ Upstream commit 66419036f68a838c00cbccacd6cb2e99da6e5710 ]

An Interrupt Remapping Table (IRT) stores interrupt remapping configuration
for each device. In a normal operation, the AMD IOMMU caches the table
to optimize subsequent data accesses. This requires the IOMMU driver to
invalidate IRT whenever it updates the table. The invalidation process
includes issuing an INVALIDATE_INTERRUPT_TABLE command following by
a COMPLETION_WAIT command.

However, there are cases in which the IRT is updated at a high rate.
For example, for IOMMU AVIC, the IRTE[IsRun] bit is updated on every
vcpu scheduling (i.e. amd_iommu_update_ga()). On system with large
amount of vcpus and VFIO PCI pass-through devices, the invalidation
process could potentially become a performance bottleneck.

Introducing a new kernel boot option:

    amd_iommu=irtcachedis

which disables IRTE caching by setting the IRTCachedis bit in each IOMMU
Control register, and bypass the IRT invalidation process.

Reviewed-by: Jerry Snitselaar <jsnitsel@redhat.com>
Co-developed-by: Alejandro Jimenez <alejandro.j.jimenez@oracle.com>
Signed-off-by: Alejandro Jimenez <alejandro.j.jimenez@oracle.com>
Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Link: https://lore.kernel.org/r/20230530141137.14376-4-suravee.suthikulpanit@amd.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-08-23 17:52:21 +02:00
8ddb3183c4 iommu/arm-smmu-v3: Document nesting-related errata
commit 0bfbfc526c70606bf0fad302e4821087cbecfaf4 upstream

Both MMU-600 and MMU-700 have similar errata around TLB invalidation
while both stages of translation are active, which will need some
consideration once nesting support is implemented. For now, though,
it's very easy to make our implicit lack of nesting support explicit
for those cases, so they're less likely to be missed in future.

Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Reviewed-by: Nicolin Chen <nicolinc@nvidia.com>
Link: https://lore.kernel.org/r/696da78d32bb4491f898f11b0bb4d850a8aa7c6a.1683731256.git.robin.murphy@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-11 12:08:09 +02:00
57ae3671ec iommu/arm-smmu-v3: Document MMU-700 erratum 2812531
commit 309a15cb16bb075da1c99d46fb457db6a1a2669e upstream

To work around MMU-700 erratum 2812531 we need to ensure that certain
sequences of commands cannot be issued without an intervening sync. In
practice this falls out of our current command-batching machinery
anyway - each batch only contains a single type of invalidation command,
and ends with a sync. The only exception is when a batch is sufficiently
large to need issuing across multiple command queue slots, wherein the
earlier slots will not contain a sync and thus may in theory interleave
with another batch being issued in parallel to create an affected
sequence across the slot boundary.

Since MMU-700 supports range invalidate commands and thus we will prefer
to use them (which also happens to avoid conditions for other errata),
I'm not entirely sure it's even possible for a single high-level
invalidate call to generate a batch of more than 63 commands, but for
the sake of robustness and documentation, wire up an option to enforce
that a sync is always inserted for every slot issued.

The other aspect is that the relative order of DVM commands cannot be
controlled, so DVM cannot be used. Again that is already the status quo,
but since we have at least defined ARM_SMMU_FEAT_BTM, we can explicitly
disable it for documentation purposes even if it's not wired up anywhere
yet.

Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Reviewed-by: Nicolin Chen <nicolinc@nvidia.com>
Link: https://lore.kernel.org/r/330221cdfd0003cd51b6c04e7ff3566741ad8374.1683731256.git.robin.murphy@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-11 12:08:09 +02:00
e3399bd014 iommu/arm-smmu-v3: Work around MMU-600 erratum 1076982
commit f322e8af35c7f23a8c08b595c38d6c855b2d836f upstream

MMU-600 versions prior to r1p0 fail to correctly generate a WFE wakeup
event when the command queue transitions fom full to non-full. We can
easily work around this by simply hiding the SEV capability such that we
fall back to polling for space in the queue - since MMU-600 implements
MSIs we wouldn't expect to need SEV for sync completion either, so this
should have little to no impact.

Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Reviewed-by: Nicolin Chen <nicolinc@nvidia.com>
Tested-by: Nicolin Chen <nicolinc@nvidia.com>
Link: https://lore.kernel.org/r/08adbe3d01024d8382a478325f73b56851f76e49.1683731256.git.robin.murphy@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-11 12:08:09 +02:00
572508aff3 Merge keystone/android14-6.1-keystone-qcom-release.6.1.25 (b9d4167) into qcom-6.1
* refs/heads/tmp-b9d4167:
  ANDROID: Snap to android14-6.1-2023-06
  ANDROID: fuse-bpf: Move FUSE_RELEASE to correct place
  BACKPORT: FROMLIST: ovl: get_acl: Fix null pointer dereference at realinode in rcu-walk mode
  BACKPORT: FROMLIST: ovl: ovl_permission: Fix null pointer dereference at realinode in rcu-walk mode
  BACKPORT: FROMLIST: ovl: Let helper ovl_i_path_real() return the realinode

 Conflicts:
	android/abi_gki_aarch64.stg

Change-Id: I1c41d9c5d104ea48b379f9d3e0637447637607ff
Upstream-Build: ks_qcom-android14-6.1-keystone-qcom-release@10638318 UKQ2.230809.001
Signed-off-by: jianzhou <quic_jianzhou@quicinc.com>
2023-08-10 01:28:37 -07:00
b7e8439a23 ANDROID: Snap to android14-6.1-2023-06
Snap tree to commit 3bccd89f07ae ("ANDROID: fuse-bpf: Move FUSE_RELEASE
to correct place") while preserving the known keystone divergences for
consolidated builds.

Change-Id: I30ae6c895f9b7c9767277a1e8c7d7e0e6237319a
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
2023-08-08 17:02:27 -07:00
ac41e90d8d x86/srso: Add a Speculative RAS Overflow mitigation
Upstream commit: fb3bd914b3ec28f5fb697ac55c4846ac2d542855

Add a mitigation for the speculative return address stack overflow
vulnerability found on AMD processors.

The mitigation works by ensuring all RET instructions speculate to
a controlled location, similar to how speculation is controlled in the
retpoline sequence.  To accomplish this, the __x86_return_thunk forces
the CPU to mispredict every function return using a 'safe return'
sequence.

To ensure the safety of this mitigation, the kernel must ensure that the
safe return sequence is itself free from attacker interference.  In Zen3
and Zen4, this is accomplished by creating a BTB alias between the
untraining function srso_untrain_ret_alias() and the safe return
function srso_safe_ret_alias() which results in evicting a potentially
poisoned BTB entry and using that safe one for all function returns.

In older Zen1 and Zen2, this is accomplished using a reinterpretation
technique similar to Retbleed one: srso_untrain_ret() and
srso_safe_ret().

Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-08 20:03:50 +02:00
dacb0bac2e Documentation/x86: Fix backwards on/off logic about YMM support
commit 1b0fc0345f2852ffe54fb9ae0e12e2ee69ad6a20 upstream

These options clearly turn *off* XSAVE YMM support.  Correct the
typo.

Reported-by: Ben Hutchings <ben@decadent.org.uk>
Fixes: 553a5c03e90a ("x86/speculation: Add force option to GDS mitigation")
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-08 20:03:49 +02:00
92fc27c79b x86/speculation: Add force option to GDS mitigation
commit 553a5c03e90a6087e88f8ff878335ef0621536fb upstream

The Gather Data Sampling (GDS) vulnerability allows malicious software
to infer stale data previously stored in vector registers. This may
include sensitive data such as cryptographic keys. GDS is mitigated in
microcode, and systems with up-to-date microcode are protected by
default. However, any affected system that is running with older
microcode will still be vulnerable to GDS attacks.

Since the gather instructions used by the attacker are part of the
AVX2 and AVX512 extensions, disabling these extensions prevents gather
instructions from being executed, thereby mitigating the system from
GDS. Disabling AVX2 is sufficient, but we don't have the granularity
to do this. The XCR0[2] disables AVX, with no option to just disable
AVX2.

Add a kernel parameter gather_data_sampling=force that will enable the
microcode mitigation if available, otherwise it will disable AVX on
affected systems.

This option will be ignored if cmdline mitigations=off.

This is a *big* hammer.  It is known to break buggy userspace that
uses incomplete, buggy AVX enumeration.  Unfortunately, such userspace
does exist in the wild:

	https://www.mail-archive.com/bug-coreutils@gnu.org/msg33046.html

[ dhansen: add some more ominous warnings about disabling AVX ]

Signed-off-by: Daniel Sneddon <daniel.sneddon@linux.intel.com>
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Acked-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Daniel Sneddon <daniel.sneddon@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-08 20:03:48 +02:00
c66ebe070d x86/speculation: Add Gather Data Sampling mitigation
commit 8974eb588283b7d44a7c91fa09fcbaf380339f3a upstream

Gather Data Sampling (GDS) is a hardware vulnerability which allows
unprivileged speculative access to data which was previously stored in
vector registers.

Intel processors that support AVX2 and AVX512 have gather instructions
that fetch non-contiguous data elements from memory. On vulnerable
hardware, when a gather instruction is transiently executed and
encounters a fault, stale data from architectural or internal vector
registers may get transiently stored to the destination vector
register allowing an attacker to infer the stale data using typical
side channel techniques like cache timing attacks.

This mitigation is different from many earlier ones for two reasons.
First, it is enabled by default and a bit must be set to *DISABLE* it.
This is the opposite of normal mitigation polarity. This means GDS can
be mitigated simply by updating microcode and leaving the new control
bit alone.

Second, GDS has a "lock" bit. This lock bit is there because the
mitigation affects the hardware security features KeyLocker and SGX.
It needs to be enabled and *STAY* enabled for these features to be
mitigated against GDS.

The mitigation is enabled in the microcode by default. Disable it by
setting gather_data_sampling=off or by disabling all mitigations with
mitigations=off. The mitigation status can be checked by reading:

    /sys/devices/system/cpu/vulnerabilities/gather_data_sampling

Signed-off-by: Daniel Sneddon <daniel.sneddon@linux.intel.com>
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Acked-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Daniel Sneddon <daniel.sneddon@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-08 20:03:48 +02:00
cd1a8952ff xen: speed up grant-table reclaim
commit c04e9894846c663f3278a414f34416e6e45bbe68 upstream.

When a grant entry is still in use by the remote domain, Linux must put
it on a deferred list.  Normally, this list is very short, because
the PV network and block protocols expect the backend to unmap the grant
first.  However, Qubes OS's GUI protocol is subject to the constraints
of the X Window System, and as such winds up with the frontend unmapping
the window first.  As a result, the list can grow very large, resulting
in a massive memory leak and eventual VM freeze.

To partially solve this problem, make the number of entries that the VM
will attempt to free at each iteration tunable.  The default is still
10, but it can be overridden via a module parameter.

This is Cc: stable because (when combined with appropriate userspace
changes) it fixes a severe performance and stability problem for Qubes
OS users.

Cc: stable@vger.kernel.org
Signed-off-by: Demi Marie Obenour <demi@invisiblethingslab.com>
Reviewed-by: Juergen Gross <jgross@suse.com>
Link: https://lore.kernel.org/r/20230726165354.1252-1-demi@invisiblethingslab.com
Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-03 10:24:14 +02:00
ef301c41a1 Documentation: security-bugs.rst: clarify CVE handling
commit 3c1897ae4b6bc7cc586eda2feaa2cd68325ec29c upstream.

The kernel security team does NOT assign CVEs, so document that properly
and provide the "if you want one, ask MITRE for it" response that we
give on a weekly basis in the document, so we don't have to constantly
say it to everyone who asks.

Link: https://lore.kernel.org/r/2023063022-retouch-kerosene-7e4a@gregkh
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-03 10:24:11 +02:00
ddb9503d1c Documentation: security-bugs.rst: update preferences when dealing with the linux-distros group
commit 4fee0915e649bd0cea56dece6d96f8f4643df33c upstream.

Because the linux-distros group forces reporters to release information
about reported bugs, and they impose arbitrary deadlines in having those
bugs fixed despite not actually being kernel developers, the kernel
security team recommends not interacting with them at all as this just
causes confusion and the early-release of reported security problems.

Reviewed-by: Kees Cook <keescook@chromium.org>
Link: https://lore.kernel.org/r/2023063020-throat-pantyhose-f110@gregkh
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-03 10:24:11 +02:00
16cc222026 tracing/probes: Add symstr type for dynamic events
[ Upstream commit b26a124cbfa80f42bfc4e63e1d5643ca98159d66 ]

Add 'symstr' type for storing the kernel symbol as a string data
instead of the symbol address. This allows us to filter the
events by wildcard symbol name.

e.g.
  # echo 'e:wqfunc workqueue.workqueue_execute_start symname=$function:symstr' >> dynamic_events
  # cat events/eprobes/wqfunc/format
  name: wqfunc
  ID: 2110
  format:
  	field:unsigned short common_type;	offset:0;	size:2;	signed:0;
  	field:unsigned char common_flags;	offset:2;	size:1;	signed:0;
  	field:unsigned char common_preempt_count;	offset:3;	size:1;	signed:0;
  	field:int common_pid;	offset:4;	size:4;	signed:1;

  	field:__data_loc char[] symname;	offset:8;	size:4;	signed:1;

  print fmt: " symname=\"%s\"", __get_str(symname)

Note that there is already 'symbol' type which just change the
print format (so it still stores the symbol address in the tracing
ring buffer.) On the other hand, 'symstr' type stores the actual
"symbol+offset/size" data as a string.

Link: https://lore.kernel.org/all/166679930847.1528100.4124308529180235965.stgit@devnote3/

Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Stable-dep-of: 66bcf65d6cf0 ("tracing/probes: Fix to avoid double count of the string length on the array")
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-08-03 10:23:54 +02:00
cde7f2fd63 arm64: errata: Mitigate Ampere1 erratum AC03_CPU_38 at stage-2
[ Upstream commit 6df696cd9bc1ceed0e92e36908f88bbd16d18255 ]

AmpereOne has an erratum in its implementation of FEAT_HAFDBS that
required disabling the feature on the design. This was done by reporting
the feature as not implemented in the ID register, although the
corresponding control bits were not actually RES0. This does not align
well with the requirements of the architecture, which mandates these
bits be RES0 if HAFDBS isn't implemented.

The kernel's use of stage-1 is unaffected, as the HA and HD bits are
only set if HAFDBS is detected in the ID register. KVM, on the other
hand, relies on the RES0 behavior at stage-2 to use the same value for
VTCR_EL2 on any cpu in the system. Mitigate the non-RES0 behavior by
leaving VTCR_EL2.HA clear on affected systems.

Cc: stable@vger.kernel.org
Cc: D Scott Phillips <scott@os.amperecomputing.com>
Cc: Darren Hart <darren@os.amperecomputing.com>
Acked-by: D Scott Phillips <scott@os.amperecomputing.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20230609220104.1836988-2-oliver.upton@linux.dev
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-08-03 10:23:54 +02:00
a58bd03093 BACKPORT: FROMGIT: irqchip/gic-v3: Workaround for GIC-700 erratum 2941627
GIC700 erratum 2941627 may cause GIC-700 missing SPIs wake
requests when SPIs are deactivated while targeting a
sleeping CPU - ie a CPU for which the redistributor:

GICR_WAKER.ProcessorSleep == 1

This runtime situation can happen if an SPI that has been
activated on a core is retargeted to a different core, it
becomes pending and the target core subsequently enters a
power state quiescing the respective redistributor.

When this situation is hit, the de-activation carried out
on the core that activated the SPI (through either ICC_EOIR1_EL1
or ICC_DIR_EL1 register writes) does not trigger a wake
requests for the sleeping GIC redistributor even if the SPI
is pending.

Work around the erratum by de-activating the SPI using the
redistributor GICD_ICACTIVER register if the runtime
conditions require it (ie the IRQ was retargeted between
activation and de-activation).

Bug: 292459437
Bug: 294180741
Change-Id: Ide915b8c925a631a7fc9ccebca19d9175def162e
Signed-off-by: Lorenzo Pieralisi <lpieralisi@kernel.org>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20230704155034.148262-1-lpieralisi@kernel.org
(cherry picked from commit 6fe5c68ee6a1aae0ef291a56001e7888de547fa2 https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git irq/irqchip-fixes)
Signed-off-by: Carlos Galo <carlosgalo@google.com>
(cherry picked from commit d3b37a712ab7a5d73a2c66156debe2e3d48df007)
2023-08-02 15:31:32 +00:00
126ef64cba UPSTREAM: media: Add ABGR64_12 video format
ABGR64_12 is a reversed RGB format with alpha channel last,
12 bits per component like ABGR32,
expanded to 16bits.
Data in the 12 high bits, zeros in the 4 low bits,
arranged in little endian order.

Bug: 293213303
Change-Id: Idc4e1100c9e2134a48b594151e3398f6436b010d
(cherry picked from commit 302b988ca03d83da0a7e006a57efda646c30f978)
Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Signed-off-by: Jindong Yue <jindong.yue@nxp.com>
2023-08-01 21:45:37 +00:00
86e2e8fd05 BACKPORT: media: Add BGR48_12 video format
BGR48_12 is a reversed RGB format with 12 bits per component like BGR24,
expanded to 16bits.
Data in the 12 high bits, zeros in the 4 low bits,
arranged in little endian order.

Bug: 293213303
Change-Id: I27d14a33c8e2b4847a63ea05b285786766949ebf
(cherry picked from commit da0b7a400e4f39726c3c383f377fb51dbd8b0c71)
[Jindong: Fixed conflicts in .rst file and v4l2-ioctl.c]
Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Signed-off-by: Jindong Yue <jindong.yue@nxp.com>
2023-08-01 21:45:37 +00:00
892293272c UPSTREAM: media: Add YUV48_12 video format
YUV48_12 is a YUV format with 12-bits per component like YUV24,
expanded to 16bits.
Data in the 12 high bits, zeros in the 4 low bits,
arranged in little endian order.

[hverkuil: replaced a . by ,]

Bug: 293213303
Change-Id: I12e6f02b99918a429224320da2127d6b4d777584
(cherry picked from commit 99c954967762976b15265ea383354095e1ed1efa)
Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Signed-off-by: Jindong Yue <jindong.yue@nxp.com>
2023-08-01 21:45:37 +00:00
0f3f7a21af UPSTREAM: media: Add Y210, Y212 and Y216 formats
Add Y210, Y212 and Y216 formats.

Bug: 293213303
Change-Id: I2d580dd82481f6a1364dfcedfd918e82d25ac211
(cherry picked from commit 0dc1d7a79a8d13e316d3b168e9fc57e376099c7a)
Signed-off-by: Tomi Valkeinen <tomi.valkeinen+renesas@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Acked-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Jindong Yue <jindong.yue@nxp.com>
2023-08-01 21:45:37 +00:00
ca7b45b128 UPSTREAM: media: Add Y012 video format
Y012 is a luma-only formats with 12-bits per pixel,
expanded to 16bits.
Data in the 12 high bits, zeros in the 4 low bits,
arranged in little endian order.

Bug: 293213303
Change-Id: I1a8f73162932e0760aabbe44525d7c74ace9f7bd
(cherry picked from commit a490ea68444084ec0368c019e11ee4a7e5c8bb13)
Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Signed-off-by: Jindong Yue <jindong.yue@nxp.com>
2023-08-01 21:45:37 +00:00
343b85ecad UPSTREAM: media: Add P012 and P012M video format
P012 is a YUV format with 12-bits per component with interleaved UV,
like NV12, expanded to 16 bits.
Data in the 12 high bits, zeros in the 4 low bits,
arranged in little endian order.
And P012M has two non contiguous planes.

Bug: 293213303
Change-Id: I1fbfa7c445bc682766f479cca07eb8cb16cbb44f
(cherry picked from commit aa1080404200694aace5989f99664ca75e73b03d)
Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Signed-off-by: Jindong Yue <jindong.yue@nxp.com>
2023-08-01 21:45:37 +00:00
d3b37a712a BACKPORT: FROMGIT: irqchip/gic-v3: Workaround for GIC-700 erratum 2941627
GIC700 erratum 2941627 may cause GIC-700 missing SPIs wake
requests when SPIs are deactivated while targeting a
sleeping CPU - ie a CPU for which the redistributor:

GICR_WAKER.ProcessorSleep == 1

This runtime situation can happen if an SPI that has been
activated on a core is retargeted to a different core, it
becomes pending and the target core subsequently enters a
power state quiescing the respective redistributor.

When this situation is hit, the de-activation carried out
on the core that activated the SPI (through either ICC_EOIR1_EL1
or ICC_DIR_EL1 register writes) does not trigger a wake
requests for the sleeping GIC redistributor even if the SPI
is pending.

Work around the erratum by de-activating the SPI using the
redistributor GICD_ICACTIVER register if the runtime
conditions require it (ie the IRQ was retargeted between
activation and de-activation).

Bug: 292459437
Change-Id: Ide915b8c925a631a7fc9ccebca19d9175def162e
Signed-off-by: Lorenzo Pieralisi <lpieralisi@kernel.org>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20230704155034.148262-1-lpieralisi@kernel.org
(cherry picked from commit 6fe5c68ee6a1aae0ef291a56001e7888de547fa2 https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git irq/irqchip-fixes)
Signed-off-by: Carlos Galo <carlosgalo@google.com>
2023-07-27 19:40:08 +00:00
d5dca19776 sched/psi: Allow unprivileged polling of N*2s period
[ Upstream commit d82caa273565b45fcf103148950549af76c314b0 ]

PSI offers 2 mechanisms to get information about a specific resource
pressure. One is reading from /proc/pressure/<resource>, which gives
average pressures aggregated every 2s. The other is creating a pollable
fd for a specific resource and cgroup.

The trigger creation requires CAP_SYS_RESOURCE, and gives the
possibility to pick specific time window and threshold, spawing an RT
thread to aggregate the data.

Systemd would like to provide containers the option to monitor pressure
on their own cgroup and sub-cgroups. For example, if systemd launches a
container that itself then launches services, the container should have
the ability to poll() for pressure in individual services. But neither
the container nor the services are privileged.

This patch implements a mechanism to allow unprivileged users to create
pressure triggers. The difference with privileged triggers creation is
that unprivileged ones must have a time window that's a multiple of 2s.
This is so that we can avoid unrestricted spawning of rt threads, and
use instead the same aggregation mechanism done for the averages, which
runs independently of any triggers.

Suggested-by: Johannes Weiner <hannes@cmpxchg.org>
Signed-off-by: Domenico Cerasuolo <cerasuolodomenico@gmail.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Link: https://lore.kernel.org/r/20230330105418.77061-5-cerasuolodomenico@gmail.com
Stable-dep-of: aff037078eca ("sched/psi: use kernfs polling functions for PSI trigger polling")
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-07-27 08:50:38 +02:00
be19cb6716 dm init: add dm-mod.waitfor to wait for asynchronously probed block devices
commit 035641b01e72af4f6c6cf22a4bdb5d7dfc4e8e8e upstream.

Just calling wait_for_device_probe() is not enough to ensure that
asynchronously probed block devices are available (E.G. mmc, usb), so
add a "dm-mod.waitfor=<device1>[,..,<deviceN>]" parameter to get
dm-init to explicitly wait for specific block devices before
initializing the tables with logic similar to the rootwait logic that
was introduced with commit  cc1ed7542c8c ("init: wait for
asynchronously scanned block devices").

E.G. with dm-verity on mmc using:
dm-mod.waitfor="PARTLABEL=hash-a,PARTLABEL=root-a"

[    0.671671] device-mapper: init: waiting for all devices to be available before creating mapped devices
[    0.671679] device-mapper: init: waiting for device PARTLABEL=hash-a ...
[    0.710695] mmc0: new HS200 MMC card at address 0001
[    0.711158] mmcblk0: mmc0:0001 004GA0 3.69 GiB
[    0.715954] mmcblk0boot0: mmc0:0001 004GA0 partition 1 2.00 MiB
[    0.722085] mmcblk0boot1: mmc0:0001 004GA0 partition 2 2.00 MiB
[    0.728093] mmcblk0rpmb: mmc0:0001 004GA0 partition 3 512 KiB, chardev (249:0)
[    0.738274]  mmcblk0: p1 p2 p3 p4 p5 p6 p7
[    0.751282] device-mapper: init: waiting for device PARTLABEL=root-a ...
[    0.751306] device-mapper: init: all devices available
[    0.751683] device-mapper: verity: sha256 using implementation "sha256-generic"
[    0.759344] device-mapper: ioctl: dm-0 (vroot) is ready
[    0.766540] VFS: Mounted root (squashfs filesystem) readonly on device 254:0.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Cc: Mark-PK Tsai <mark-pk.tsai@mediatek.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-07-23 13:49:38 +02:00
f40d621387 fs: Lock moved directories
commit 28eceeda130f5058074dd007d9c59d2e8bc5af2e upstream.

When a directory is moved to a different directory, some filesystems
(udf, ext4, ocfs2, f2fs, and likely gfs2, reiserfs, and others) need to
update their pointer to the parent and this must not race with other
operations on the directory. Lock the directories when they are moved.
Although not all filesystems need this locking, we perform it in
vfs_rename() because getting the lock ordering right is really difficult
and we don't want to expose these locking details to filesystems.

CC: stable@vger.kernel.org
Signed-off-by: Jan Kara <jack@suse.cz>
Message-Id: <20230601105830.13168-5-jack@suse.cz>
Signed-off-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-07-19 16:22:12 +02:00
33893c6c1f autofs: use flexible array in ioctl structure
commit e910c8e3aa02dc456e2f4c32cb479523c326b534 upstream.

Commit df8fc4e934c1 ("kbuild: Enable -fstrict-flex-arrays=3") introduced a warning
for the autofs_dev_ioctl structure:

In function 'check_name',
    inlined from 'validate_dev_ioctl' at fs/autofs/dev-ioctl.c:131:9,
    inlined from '_autofs_dev_ioctl' at fs/autofs/dev-ioctl.c:624:8:
fs/autofs/dev-ioctl.c:33:14: error: 'strchr' reading 1 or more bytes from a region of size 0 [-Werror=stringop-overread]
   33 |         if (!strchr(name, '/'))
      |              ^~~~~~~~~~~~~~~~~
In file included from include/linux/auto_dev-ioctl.h:10,
                 from fs/autofs/autofs_i.h:10,
                 from fs/autofs/dev-ioctl.c:14:
include/uapi/linux/auto_dev-ioctl.h: In function '_autofs_dev_ioctl':
include/uapi/linux/auto_dev-ioctl.h:112:14: note: source object 'path' of size 0
  112 |         char path[0];
      |              ^~~~

This is easily fixed by changing the gnu 0-length array into a c99
flexible array. Since this is a uapi structure, we have to be careful
about possible regressions but this one should be fine as they are
equivalent here. While it would break building with ancient gcc versions
that predate c99, it helps building with --std=c99 and -Wpedantic builds
in user space, as well as non-gnu compilers. This means we probably
also want it fixed in stable kernels.

Cc: stable@vger.kernel.org
Cc: Kees Cook <keescook@chromium.org>
Cc: "Gustavo A. R. Silva" <gustavoars@kernel.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Kees Cook <keescook@chromium.org>
Link: https://lore.kernel.org/r/20230523081944.581710-1-arnd@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-07-19 16:22:11 +02:00
67eb4aee2c xsk: Honor SO_BINDTODEVICE on bind
[ Upstream commit f7306acec9aae9893d15e745c8791124d42ab10a ]

Initial creation of an AF_XDP socket requires CAP_NET_RAW capability. A
privileged process might create the socket and pass it to a non-privileged
process for later use. However, that process will be able to bind the socket
to any network interface. Even though it will not be able to receive any
traffic without modification of the BPF map, the situation is not ideal.

Sockets already have a mechanism that can be used to restrict what interface
they can be attached to. That is SO_BINDTODEVICE.

To change the SO_BINDTODEVICE binding the process will need CAP_NET_RAW.

Make xsk_bind() honor the SO_BINDTODEVICE in order to allow safer workflow
when non-privileged process is using AF_XDP.

The intended workflow is following:

  1. First process creates a bare socket with socket(AF_XDP, ...).
  2. First process loads the XSK program to the interface.
  3. First process adds the socket fd to a BPF map.
  4. First process ties socket fd to a particular interface using
     SO_BINDTODEVICE.
  5. First process sends socket fd to a second process.
  6. Second process allocates UMEM.
  7. Second process binds socket to the interface with bind(...).
  8. Second process sends/receives the traffic.

All the steps above are possible today if the first process is privileged
and the second one has sufficient RLIMIT_MEMLOCK and no capabilities.
However, the second process will be able to bind the socket to any interface
it wants on step 7 and send traffic from it. With the proposed change, the
second process will be able to bind the socket only to a specific interface
chosen by the first process at step 4.

Fixes: 965a99098443 ("xsk: add support for bind for Rx")
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Magnus Karlsson <magnus.karlsson@intel.com>
Acked-by: John Fastabend <john.fastabend@gmail.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Link: https://lore.kernel.org/bpf/20230703175329.3259672-1-i.maximets@ovn.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-07-19 16:22:05 +02:00
c0ed8b8049 lkdtm: replace ll_rw_block with submit_bh
[ Upstream commit b290df06811852d4cc36f4b8a2a30c2063197a74 ]

Function ll_rw_block was removed in commit 79f597842069 ("fs/buffer:
remove ll_rw_block() helper"). There is no unified function to sumbit
read or write buffer in block layer for now. Consider similar sematics,
we can choose submit_bh() to replace ll_rw_block() as predefined crash
point. In submit_bh(), it also takes read or write flag as the first
argument and invoke submit_bio() to submit I/O request to block layer.

Fixes: 79f597842069 ("fs/buffer: remove ll_rw_block() helper")
Signed-off-by: Yue Zhao <findns94@gmail.com>
Acked-by: Kees Cook <keescook@chromium.org>
Link: https://lore.kernel.org/r/20230503162944.3969-1-findns94@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-07-19 16:21:53 +02:00
c494fe1b66 usb: misc: eud: Fix eud sysfs path (use 'qcom_eud')
[ Upstream commit f16135918b5f8b510db014ecf0a069e34c02382e ]

The eud sysfs enablement path is currently mentioned in the
Documentation as:
  /sys/bus/platform/drivers/eud/.../enable

Instead it should be:
  /sys/bus/platform/drivers/qcom_eud/.../enable

Fix the same.

Fixes: 9a1bf58ccd44 ("usb: misc: eud: Add driver support for Embedded USB Debugger(EUD)")
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Acked-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: Bhupesh Sharma <bhupesh.sharma@linaro.org>
Link: https://lore.kernel.org/r/20230517211756.2483552-2-bhupesh.sharma@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-07-19 16:21:53 +02:00
190bdec8a7 dt-bindings: power: reset: qcom-pon: Only allow reboot-mode pre-pmk8350
[ Upstream commit d41dab4c031edaa460a484113394327aa52dc0bd ]

As pointed out by Shazad [1], PMICs using a separate HLOS+PBS scheme
(so PMK8350 and newer) are expected to pass reboot mode data through SDAM,
as the reboot mode registers are absent in the HLOS reg space.

Limit the reboot-mode.yaml inclusion to PMICs without a separate PBS
region.

[1] https://lore.kernel.org/linux-arm-msm/12f13183-c381-25f7-459e-62e0c2b19498@quicinc.com/

Fixes: 03fccdc76dce ("dt-bindings: power: reset: qcom-pon: Add new compatible "qcom,pmk8350-pon"")
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-07-19 16:21:48 +02:00
fe56f507a1 docs: Set minimal gtags / GNU GLOBAL version to 6.6.5
commit b230235b386589d8f0d631b1c77a95ca79bb0732 upstream.

Kernel build now uses the gtags "-C (--directory)" option, available
since GNU GLOBAL v6.6.5.  Update the documentation accordingly.

Signed-off-by: Ahmed S. Darwish <darwi@linutronix.de>
Cc: <stable@vger.kernel.org>
Link: https://lists.gnu.org/archive/html/info-global/2020-09/msg00000.html
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-07-05 18:27:38 +01:00
bdfdc9261f Revert "Merge remote-tracking branch into HEAD"
This reverts commit eca11903996b5a3c1418d2ceeaf81c9741ccf4d0.

Reason for revert: extra commits

Change-Id: I54870a508c95e92600d76385954c61c71160c4de
2023-06-20 20:55:25 +00:00
ed6634a559 Merge 'android14-6.1' into 'android14-6.1-lts'
This catches the -lts branch up with all of the recent changes that have
gone into the non-lts branch, INCLUDING the ABI update which we want
here to ensure that we do NOT break any newly added dependent symbols
(and to bring back in the reverts that were required before the ABI
break).

This includes the following commits:

0a859e781c76 ANDROID: GKI: Include kheaders in gki_system_dlkm_modules
35fe0d393f80 ANDROID: 6/16/2023 KMI update
fcc5e942e0b4 ANDROID: sched: Add parameter to android_rvh_schedule.
d4dd4d9f193b ANDROID: GKI: provide more padding for struct usb_phy
bb9c8797266b ANDROID: GKI enable CONFIG_NETFILTER_XT_MATCH_CONNBYTES=y
a7b1da66a27e FROMGIT: arm64: set __exception_irq_entry with __irq_entry as a default
d73b3af21fb9 ANDROID: GKI: update symbol list file for xiaomi
73185e2d4e5e ANDROID: Remove all but top-level OWNERS
1090306d3d5a ANDROID: Enable GKI Dr. No Enforcement
16c18c497da2 ANDROID: 6/16/2023 KMI update
fcc32be06182 ANDROID: virt: gunyah: Sync with latest platform ops
69a3ec73e425 FROMGIT: usb: gadget: udc: core: Prevent soft_connect_store() race
18b677ffae1a FROMGIT: usb: gadget: udc: core: Offload usb_udc_vbus_handler processing
a1741f9c45c8 UPSTREAM: Bluetooth: fix debugfs registration
d890debdaf3b UPSTREAM: Bluetooth: hci_sync: add lock to protect HCI_UNREGISTER
855c5479cb63 UPSTREAM: net/ipv6: fix bool/int mismatch for skip_notify_on_dev_down
b0fa6dd29a1e UPSTREAM: neighbour: fix unaligned access to pneigh_entry
1707d64dabf6 UPSTREAM: tcp: deny tcp_disconnect() when threads are waiting
a7cd7a3dd770 ANDROID: sound: usb: Add vendor's hooking interface
2c6f80378c80 ANDROID: GKI: USB: XHCI: add Android ABI padding to struct xhci_driver_overrides
cd3b5ff53588 ANDROID: usb: host: add address_device to xhci overrides
e3ff5d6bf08c UPSTREAM: bpf, sockmap: Avoid potential NULL dereference in sk_psock_verdict_data_ready()
07873e75c6bb UPSTREAM: bpf, sockmap: Incorrectly handling copied_seq
e218734b1be0 UPSTREAM: bpf, sockmap: Wake up polling after data copy
f9cc0b7f9bfc UPSTREAM: bpf, sockmap: TCP data stall on recv before accept
028591f2c859 UPSTREAM: bpf, sockmap: Handle fin correctly
e69ad7c8387f UPSTREAM: bpf, sockmap: Improved check for empty queue
ecfcbe21d799 UPSTREAM: bpf, sockmap: Reschedule is now done through backlog
42fcf3b6df3a UPSTREAM: bpf, sockmap: Convert schedule_work into delayed_work
a59051006bc7 UPSTREAM: bpf, sockmap: Pass skb ownership through read_skb
86409bb4e1c9 ANDROID: virt: gunyah: Sync with latest Gunyah patches
705a9b5feb1b ANDROID: virt: gunyah: Sync with latest documentation and sample
60662882b7bd FROMLIST: usb: xhci-plat: add xhci_plat_priv_overwrite
6496f6cfbbd3 ANDROID: usb: host: export symbols for xhci hooks usage
90ab8e7f988d ANDROID: usb: host: add xhci hooks for USB offload

Change-Id: I895db08515a0bc14c4548bb28b61acb1414a94cd
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-06-18 12:24:35 +00:00
73185e2d4e ANDROID: Remove all but top-level OWNERS
Now that the branch is used to create production GKI
images, need to institute ACK DrNo for all commits.

The DrNo approvers are in the android-mainline branch
at /OWNERS_DrNo.

Bug: 287162457
Signed-off-by: Matthias Maennich <maennich@google.com>
Change-Id: Id5bb83d7add5f314df6816c1c51b4bf2d8018e79
2023-06-15 09:54:33 +01:00
705a9b5feb ANDROID: virt: gunyah: Sync with latest documentation and sample
Sync with latest documentation and sample code from v14 of Gunyah
patches:

https://lore.kernel.org/all/20230613172054.3959700-1-quic_eberman@quicinc.com/

Bug: 287037804
Change-Id: I8893922e6b8096fdd5dff1b22ebce96e72cdb7c3
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
2023-06-14 22:02:31 +00:00
ee4c9c95ff Merge 6.1.34 into android14-6.1-lts
Changes in 6.1.34
	scsi: megaraid_sas: Add flexible array member for SGLs
	net: sfp: fix state loss when updating state_hw_mask
	spi: mt65xx: make sure operations completed before unloading
	platform/surface: aggregator: Allow completion work-items to be executed in parallel
	platform/surface: aggregator_tabletsw: Add support for book mode in KIP subsystem
	spi: qup: Request DMA before enabling clocks
	afs: Fix setting of mtime when creating a file/dir/symlink
	wifi: mt76: mt7615: fix possible race in mt7615_mac_sta_poll
	bpf, sockmap: Avoid potential NULL dereference in sk_psock_verdict_data_ready()
	neighbour: fix unaligned access to pneigh_entry
	net: dsa: lan9303: allow vid != 0 in port_fdb_{add|del} methods
	net/ipv4: ping_group_range: allow GID from 2147483648 to 4294967294
	bpf: Fix UAF in task local storage
	bpf: Fix elem_size not being set for inner maps
	net/ipv6: fix bool/int mismatch for skip_notify_on_dev_down
	net/smc: Avoid to access invalid RMBs' MRs in SMCRv1 ADD LINK CONT
	net: enetc: correct the statistics of rx bytes
	net: enetc: correct rx_bytes statistics of XDP
	net/sched: fq_pie: ensure reasonable TCA_FQ_PIE_QUANTUM values
	drm/i915: Explain the magic numbers for AUX SYNC/precharge length
	drm/i915: Use 18 fast wake AUX sync len
	Bluetooth: hci_sync: add lock to protect HCI_UNREGISTER
	Bluetooth: Fix l2cap_disconnect_req deadlock
	Bluetooth: ISO: don't try to remove CIG if there are bound CIS left
	Bluetooth: L2CAP: Add missing checks for invalid DCID
	wifi: mac80211: use correct iftype HE cap
	wifi: cfg80211: reject bad AP MLD address
	wifi: mac80211: mlme: fix non-inheritence element
	wifi: mac80211: don't translate beacon/presp addrs
	qed/qede: Fix scheduling while atomic
	wifi: cfg80211: fix locking in sched scan stop work
	selftests/bpf: Verify optval=NULL case
	selftests/bpf: Fix sockopt_sk selftest
	netfilter: nft_bitwise: fix register tracking
	netfilter: conntrack: fix NULL pointer dereference in nf_confirm_cthelper
	netfilter: ipset: Add schedule point in call_ad().
	netfilter: nf_tables: out-of-bound check in chain blob
	ipv6: rpl: Fix Route of Death.
	tcp: gso: really support BIG TCP
	rfs: annotate lockless accesses to sk->sk_rxhash
	rfs: annotate lockless accesses to RFS sock flow table
	net: sched: add rcu annotations around qdisc->qdisc_sleeping
	drm/i915/selftests: Stop using kthread_stop()
	drm/i915/selftests: Add some missing error propagation
	net: sched: move rtm_tca_policy declaration to include file
	net: sched: act_police: fix sparse errors in tcf_police_dump()
	net: sched: fix possible refcount leak in tc_chain_tmplt_add()
	bpf: Add extra path pointer check to d_path helper
	drm/amdgpu: fix Null pointer dereference error in amdgpu_device_recover_vram
	lib: cpu_rmap: Fix potential use-after-free in irq_cpu_rmap_release()
	net: bcmgenet: Fix EEE implementation
	bnxt_en: Don't issue AP reset during ethtool's reset operation
	bnxt_en: Query default VLAN before VNIC setup on a VF
	bnxt_en: Skip firmware fatal error recovery if chip is not accessible
	bnxt_en: Prevent kernel panic when receiving unexpected PHC_UPDATE event
	bnxt_en: Implement .set_port / .unset_port UDP tunnel callbacks
	batman-adv: Broken sync while rescheduling delayed work
	Input: xpad - delete a Razer DeathAdder mouse VID/PID entry
	Input: psmouse - fix OOB access in Elantech protocol
	Input: fix open count when closing inhibited device
	ALSA: hda: Fix kctl->id initialization
	ALSA: ymfpci: Fix kctl->id initialization
	ALSA: gus: Fix kctl->id initialization
	ALSA: cmipci: Fix kctl->id initialization
	ALSA: hda/realtek: Add quirk for Clevo NS50AU
	ALSA: ice1712,ice1724: fix the kcontrol->id initialization
	ALSA: hda/realtek: Add a quirk for HP Slim Desktop S01
	ALSA: hda/realtek: Add Lenovo P3 Tower platform
	ALSA: hda/realtek: Add quirks for Asus ROG 2024 laptops using CS35L41
	drm/i915/gt: Use the correct error value when kernel_context() fails
	drm/amd/pm: conditionally disable pcie lane switching for some sienna_cichlid SKUs
	drm/amdgpu: fix xclk freq on CHIP_STONEY
	drm/amdgpu: change reserved vram info print
	drm/amd/pm: Fix power context allocation in SMU13
	drm/amd/display: Reduce sdp bw after urgent to 90%
	wifi: iwlwifi: mvm: Fix -Warray-bounds bug in iwl_mvm_wait_d3_notif()
	can: j1939: j1939_sk_send_loop_abort(): improved error queue handling in J1939 Socket
	can: j1939: change j1939_netdev_lock type to mutex
	can: j1939: avoid possible use-after-free when j1939_can_rx_register fails
	mptcp: only send RM_ADDR in nl_cmd_remove
	mptcp: add address into userspace pm list
	mptcp: update userspace pm infos
	selftests: mptcp: update userspace pm addr tests
	selftests: mptcp: update userspace pm subflow tests
	ceph: fix use-after-free bug for inodes when flushing capsnaps
	s390/dasd: Use correct lock while counting channel queue length
	Bluetooth: Fix use-after-free in hci_remove_ltk/hci_remove_irk
	Bluetooth: fix debugfs registration
	Bluetooth: hci_qca: fix debugfs registration
	tee: amdtee: Add return_origin to 'struct tee_cmd_load_ta'
	rbd: move RBD_OBJ_FLAG_COPYUP_ENABLED flag setting
	rbd: get snapshot context after exclusive lock is ensured to be held
	virtio_net: use control_buf for coalesce params
	soc: qcom: icc-bwmon: fix incorrect error code passed to dev_err_probe()
	pinctrl: meson-axg: add missing GPIOA_18 gpio group
	usb: usbfs: Enforce page requirements for mmap
	usb: usbfs: Use consistent mmap functions
	mm: page_table_check: Make it dependent on EXCLUSIVE_SYSTEM_RAM
	mm: page_table_check: Ensure user pages are not slab pages
	arm64: dts: qcom: sc8280xp: Flush RSC sleep & wake votes
	ARM: at91: pm: fix imbalanced reference counter for ethernet devices
	ARM: dts: at91: sama7g5ek: fix debounce delay property for shdwc
	ASoC: codecs: wsa883x: do not set can_multi_write flag
	ASoC: codecs: wsa881x: do not set can_multi_write flag
	arm64: dts: qcom: sc7180-lite: Fix SDRAM freq for misidentified sc7180-lite boards
	arm64: dts: imx8qm-mek: correct GPIOs for USDHC2 CD and WP signals
	arm64: dts: imx8-ss-dma: assign default clock rate for lpuarts
	ASoC: mediatek: mt8195-afe-pcm: Convert to platform remove callback returning void
	ASoC: mediatek: mt8195: fix use-after-free in driver remove path
	ASoC: simple-card-utils: fix PCM constraint error check
	blk-mq: fix blk_mq_hw_ctx active request accounting
	arm64: dts: imx8mn-beacon: Fix SPI CS pinmux
	i2c: mv64xxx: Fix reading invalid status value in atomic mode
	firmware: arm_ffa: Set handle field to zero in memory descriptor
	gpio: sim: fix memory corruption when adding named lines and unnamed hogs
	i2c: sprd: Delete i2c adapter in .remove's error path
	riscv: mm: Ensure prot of VM_WRITE and VM_EXEC must be readable
	eeprom: at24: also select REGMAP
	soundwire: stream: Add missing clear of alloc_slave_rt
	riscv: fix kprobe __user string arg print fault issue
	vduse: avoid empty string for dev name
	vhost: support PACKED when setting-getting vring_base
	vhost_vdpa: support PACKED when setting-getting vring_base
	ksmbd: fix out-of-bound read in deassemble_neg_contexts()
	ksmbd: fix out-of-bound read in parse_lease_state()
	ksmbd: check the validation of pdu_size in ksmbd_conn_handler_loop
	Revert "ext4: don't clear SB_RDONLY when remounting r/w until quota is re-enabled"
	ext4: only check dquot_initialize_needed() when debugging
	wifi: rtw89: correct PS calculation for SUPPORTS_DYNAMIC_PS
	wifi: rtw88: correct PS calculation for SUPPORTS_DYNAMIC_PS
	Revert "staging: rtl8192e: Replace macro RTL_PCI_DEVICE with PCI_DEVICE"
	Linux 6.1.34

Note, commit 898c9a0ee715 ("bpf, sockmap: Avoid potential NULL
dereference in sk_psock_verdict_data_ready()") is merged away in this
merge, due to missing dependencies, it will come back in later.

Change-Id: I8e57d0914e6114822a8941a4663525d85377ca8a
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-06-14 19:49:28 +00:00
2a77668d45 This is the 6.1.33 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmSC5VIACgkQONu9yGCS
 aT5RPhAAiVFNzTuQT4DtPzXUzl9hpNtdtZPVa/z28+SbOZyf2YgyDGXLHvnGbJ/2
 8DWDV9uSsxdX2InNqzD/IbRSiHjXprpDssthq3Qr5aPH7FO76uICWndrCk0dhZsK
 kI/+J7BqS1vgtaxsZeo/IHmMQJ5oEzx/JzvcyK5po0rykNDCxWNnh8cK4YtFOVtk
 eRD8cPWXvJGn88pdPPlQuS75MKBGcAUZLodN//tP+x2bcWzocaTZUCEHL36eLcVc
 0CxPykCpFOcLFLIJWQ+pY2/HR2ynTBxYoaXsTpscR+FKbS+Lz9B6PUoXCvqaV2/e
 lriLjg22lbqxBbBhEk5NLBVozajtU/gNq6pptp/EnZahwjjyavuToZviWf8NWfs0
 2u+zQlolinCKnm+8o18dRn24kI7LbUSD2w+V8FydSQNHMikvu/xHgDdLgzmj2XAf
 ZIAkHdGjRzKL2euDPrp28D5vPfCqDjqT2wUE2vUsc+Ax4k6ewFCPs3cweWD8hoFS
 fAjTC3Q/oNp6eEbWuWJPxl+DW/tD3ezRGeqrRCXQwubcgwB5iaS5ItdCCfG/lfiJ
 PNHf4kpg4FlyBf8aPD+R3QA6KOuS1owNNk3cx72zHs8zPusosHWj9hDrXeYVn06G
 gj1SIoC+jC/L5nbYH9WFLnKm9+EQ28lcp9j7f1PdlDhkcJmzBRY=
 =Qjnb
 -----END PGP SIGNATURE-----

Merge 6.1.33 into android14-6.1-lts

Changes in 6.1.33
	RDMA/bnxt_re: Fix the page_size used during the MR creation
	phy: amlogic: phy-meson-g12a-mipi-dphy-analog: fix CNTL2_DIF_TX_CTL0 value
	RDMA/efa: Fix unsupported page sizes in device
	RDMA/hns: Fix timeout attr in query qp for HIP08
	RDMA/hns: Fix base address table allocation
	RDMA/hns: Modify the value of long message loopback slice
	dmaengine: at_xdmac: fix potential Oops in at_xdmac_prep_interleaved()
	RDMA/bnxt_re: Fix a possible memory leak
	RDMA/bnxt_re: Fix return value of bnxt_re_process_raw_qp_pkt_rx
	iommu/rockchip: Fix unwind goto issue
	iommu/amd: Don't block updates to GATag if guest mode is on
	iommu/amd: Handle GALog overflows
	iommu/amd: Fix up merge conflict resolution
	nfsd: make a copy of struct iattr before calling notify_change
	dmaengine: pl330: rename _start to prevent build error
	riscv: Fix unused variable warning when BUILTIN_DTB is set
	net/mlx5: Drain health before unregistering devlink
	net/mlx5: SF, Drain health before removing device
	net/mlx5: fw_tracer, Fix event handling
	net/mlx5e: Don't attach netdev profile while handling internal error
	net: mellanox: mlxbf_gige: Fix skb_panic splat under memory pressure
	netrom: fix info-leak in nr_write_internal()
	af_packet: Fix data-races of pkt_sk(sk)->num.
	tls: improve lockless access safety of tls_err_abort()
	amd-xgbe: fix the false linkup in xgbe_phy_status
	perf ftrace latency: Remove unnecessary "--" from --use-nsec option
	mtd: rawnand: ingenic: fix empty stub helper definitions
	RDMA/irdma: Prevent QP use after free
	RDMA/irdma: Fix Local Invalidate fencing
	af_packet: do not use READ_ONCE() in packet_bind()
	tcp: deny tcp_disconnect() when threads are waiting
	tcp: Return user_mss for TCP_MAXSEG in CLOSE/LISTEN state if user_mss set
	net/smc: Scan from current RMB list when no position specified
	net/smc: Don't use RMBs not mapped to new link in SMCRv2 ADD LINK
	net/sched: sch_ingress: Only create under TC_H_INGRESS
	net/sched: sch_clsact: Only create under TC_H_CLSACT
	net/sched: Reserve TC_H_INGRESS (TC_H_CLSACT) for ingress (clsact) Qdiscs
	net/sched: Prohibit regrafting ingress or clsact Qdiscs
	net: sched: fix NULL pointer dereference in mq_attach
	net/netlink: fix NETLINK_LIST_MEMBERSHIPS length report
	udp6: Fix race condition in udp6_sendmsg & connect
	nfsd: fix double fget() bug in __write_ports_addfd()
	nvme: fix the name of Zone Append for verbose logging
	net/mlx5e: Fix error handling in mlx5e_refresh_tirs
	net/mlx5: Read embedded cpu after init bit cleared
	iommu/mediatek: Flush IOTLB completely only if domain has been attached
	net/sched: flower: fix possible OOB write in fl_set_geneve_opt()
	tcp: fix mishandling when the sack compression is deferred.
	net: dsa: mv88e6xxx: Increase wait after reset deactivation
	mtd: rawnand: marvell: ensure timing values are written
	mtd: rawnand: marvell: don't set the NAND frequency select
	rtnetlink: call validate_linkmsg in rtnl_create_link
	mptcp: avoid unneeded __mptcp_nmpc_socket() usage
	mptcp: add annotations around msk->subflow accesses
	mptcp: avoid unneeded address copy
	mptcp: simplify subflow_syn_recv_sock()
	mptcp: consolidate passive msk socket initialization
	mptcp: fix data race around msk->first access
	mptcp: add annotations around sk->sk_shutdown accesses
	drm/amdgpu: release gpu full access after "amdgpu_device_ip_late_init"
	watchdog: menz069_wdt: fix watchdog initialisation
	ALSA: hda: Glenfly: add HD Audio PCI IDs and HDMI Codec Vendor IDs.
	ASoC: Intel: soc-acpi-cht: Add quirk for Nextbook Ares 8A tablet
	drm/amdgpu: Use the default reset when loading or reloading the driver
	mailbox: mailbox-test: Fix potential double-free in mbox_test_message_write()
	drm/ast: Fix ARM compatibility
	btrfs: abort transaction when sibling keys check fails for leaves
	ARM: 9295/1: unwind:fix unwind abort for uleb128 case
	hwmon: (k10temp) Add PCI ID for family 19, model 78h
	media: rcar-vin: Select correct interrupt mode for V4L2_FIELD_ALTERNATE
	platform/x86: intel_scu_pcidrv: Add back PCI ID for Medfield
	platform/mellanox: fix potential race in mlxbf-tmfifo driver
	gfs2: Don't deref jdesc in evict
	drm/amdgpu: set gfx9 onwards APU atomics support to be true
	fbdev: imsttfb: Fix use after free bug in imsttfb_probe
	fbdev: modedb: Add 1920x1080 at 60 Hz video mode
	fbdev: stifb: Fix info entry in sti_struct on error path
	nbd: Fix debugfs_create_dir error checking
	block/rnbd: replace REQ_OP_FLUSH with REQ_OP_WRITE
	nvme-pci: add NVME_QUIRK_BOGUS_NID for HS-SSD-FUTURE 2048G
	nvme-pci: add quirk for missing secondary temperature thresholds
	ASoC: amd: yc: Add DMI entry to support System76 Pangolin 12
	ASoC: dwc: limit the number of overrun messages
	um: harddog: fix modular build
	xfrm: Check if_id in inbound policy/secpath match
	ASoC: dt-bindings: Adjust #sound-dai-cells on TI's single-DAI codecs
	ALSA: hda/realtek: Add quirks for ASUS GU604V and GU603V
	ASoC: ssm2602: Add workaround for playback distortions
	media: dvb_demux: fix a bug for the continuity counter
	media: dvb-usb: az6027: fix three null-ptr-deref in az6027_i2c_xfer()
	media: dvb-usb-v2: ec168: fix null-ptr-deref in ec168_i2c_xfer()
	media: dvb-usb-v2: ce6230: fix null-ptr-deref in ce6230_i2c_master_xfer()
	media: dvb-usb-v2: rtl28xxu: fix null-ptr-deref in rtl28xxu_i2c_xfer
	media: dvb-usb: digitv: fix null-ptr-deref in digitv_i2c_xfer()
	media: dvb-usb: dw2102: fix uninit-value in su3000_read_mac_address
	media: netup_unidvb: fix irq init by register it at the end of probe
	media: dvb_ca_en50221: fix a size write bug
	media: ttusb-dec: fix memory leak in ttusb_dec_exit_dvb()
	media: mn88443x: fix !CONFIG_OF error by drop of_match_ptr from ID table
	media: dvb-core: Fix use-after-free due on race condition at dvb_net
	media: dvb-core: Fix use-after-free due to race at dvb_register_device()
	media: dvb-core: Fix kernel WARNING for blocking operation in wait_event*()
	media: dvb-core: Fix use-after-free due to race condition at dvb_ca_en50221
	ASoC: SOF: debug: conditionally bump runtime_pm counter on exceptions
	ASoC: SOF: pcm: fix pm_runtime imbalance in error handling
	ASoC: SOF: sof-client-probes: fix pm_runtime imbalance in error handling
	ASoC: SOF: pm: save io region state in case of errors in resume
	s390/pkey: zeroize key blobs
	s390/topology: honour nr_cpu_ids when adding CPUs
	ACPI: resource: Add IRQ override quirk for LG UltraPC 17U70P
	wifi: rtl8xxxu: fix authentication timeout due to incorrect RCR value
	ARM: dts: stm32: add pin map for CAN controller on stm32f7
	arm64/mm: mark private VM_FAULT_X defines as vm_fault_t
	arm64: vdso: Pass (void *) to virt_to_page()
	wifi: mac80211: simplify chanctx allocation
	wifi: mac80211: consider reserved chanctx for mindef
	wifi: mac80211: recalc chanctx mindef before assigning
	wifi: iwlwifi: mvm: Add locking to the rate read flow
	scsi: core: Decrease scsi_device's iorequest_cnt if dispatch failed
	wifi: b43: fix incorrect __packed annotation
	net: wwan: t7xx: Ensure init is completed before system sleep
	netfilter: conntrack: define variables exp_nat_nla_policy and any_addr with CONFIG_NF_NAT
	nvme-multipath: don't call blk_mark_disk_dead in nvme_mpath_remove_disk
	nvme: do not let the user delete a ctrl before a complete initialization
	ALSA: oss: avoid missing-prototype warnings
	drm/msm: Be more shouty if per-process pgtables aren't working
	atm: hide unused procfs functions
	ceph: silence smatch warning in reconnect_caps_cb()
	drm/amdgpu: skip disabling fence driver src_irqs when device is unplugged
	ublk: fix AB-BA lockdep warning
	nvme-pci: Add quirk for Teamgroup MP33 SSD
	block: Deny writable memory mapping if block is read-only
	KVM: arm64: vgic: Fix a circular locking issue
	KVM: arm64: vgic: Wrap vgic_its_create() with config_lock
	KVM: arm64: vgic: Fix locking comment
	media: mediatek: vcodec: Only apply 4K frame sizes on decoder formats
	mailbox: mailbox-test: fix a locking issue in mbox_test_message_write()
	drivers: base: cacheinfo: Fix shared_cpu_map changes in event of CPU hotplug
	media: uvcvideo: Don't expose unsupported formats to userspace
	iio: accel: st_accel: Fix invalid mount_matrix on devices without ACPI _ONT method
	iio: adc: mxs-lradc: fix the order of two cleanup operations
	HID: google: add jewel USB id
	HID: wacom: avoid integer overflow in wacom_intuos_inout()
	iio: imu: inv_icm42600: fix timestamp reset
	dt-bindings: iio: adc: renesas,rcar-gyroadc: Fix adi,ad7476 compatible value
	iio: light: vcnl4035: fixed chip ID check
	iio: adc: stm32-adc: skip adc-channels setup if none is present
	iio: adc: ad_sigma_delta: Fix IRQ issue by setting IRQ_DISABLE_UNLAZY flag
	iio: dac: mcp4725: Fix i2c_master_send() return value handling
	iio: addac: ad74413: fix resistance input processing
	iio: adc: ad7192: Change "shorted" channels to differential
	iio: adc: stm32-adc: skip adc-diff-channels setup if none is present
	iio: dac: build ad5758 driver when AD5758 is selected
	net: usb: qmi_wwan: Set DTR quirk for BroadMobi BM818
	dt-bindings: usb: snps,dwc3: Fix "snps,hsphy_interface" type
	usb: cdns3: fix NCM gadget RX speed 20x slow than expection at iMX8QM
	usb: gadget: f_fs: Add unbind event before functionfs_unbind
	md/raid5: fix miscalculation of 'end_sector' in raid5_read_one_chunk()
	misc: fastrpc: return -EPIPE to invocations on device removal
	misc: fastrpc: reject new invocations during device removal
	scsi: stex: Fix gcc 13 warnings
	ata: libata-scsi: Use correct device no in ata_find_dev()
	drm/amdgpu: enable tmz by default for GC 11.0.1
	drm/amd/pm: reverse mclk and fclk clocks levels for SMU v13.0.4
	drm/amd/pm: reverse mclk and fclk clocks levels for vangogh
	drm/amd/pm: resolve reboot exception for si oland
	drm/amd/pm: reverse mclk clocks levels for SMU v13.0.5
	drm/amd/pm: reverse mclk and fclk clocks levels for yellow carp
	drm/amd/pm: reverse mclk and fclk clocks levels for renoir
	x86/mtrr: Revert 90b926e68f50 ("x86/pat: Fix pat_x_mtrr_type() for MTRR disabled case")
	mmc: vub300: fix invalid response handling
	mmc: pwrseq: sd8787: Fix WILC CHIP_EN and RESETN toggling order
	tty: serial: fsl_lpuart: use UARTCTRL_TXINV to send break instead of UARTCTRL_SBK
	btrfs: fix csum_tree_block page iteration to avoid tripping on -Werror=array-bounds
	phy: qcom-qmp-combo: fix init-count imbalance
	phy: qcom-qmp-pcie-msm8996: fix init-count imbalance
	block: fix revalidate performance regression
	powerpc/iommu: Limit number of TCEs to 512 for H_STUFF_TCE hcall
	iommu/amd: Fix domain flush size when syncing iotlb
	tpm, tpm_tis: correct tpm_tis_flags enumeration values
	riscv: perf: Fix callchain parse error with kernel tracepoint events
	io_uring: undeprecate epoll_ctl support
	selinux: don't use make's grouped targets feature yet
	mtdchar: mark bits of ioctl handler noinline
	tracing/timerlat: Always wakeup the timerlat thread
	tracing/histograms: Allow variables to have some modifiers
	tracing/probe: trace_probe_primary_from_call(): checked list_first_entry
	selftests: mptcp: connect: skip if MPTCP is not supported
	selftests: mptcp: pm nl: skip if MPTCP is not supported
	selftests: mptcp: join: skip if MPTCP is not supported
	selftests: mptcp: sockopt: skip if MPTCP is not supported
	selftests: mptcp: userspace pm: skip if MPTCP is not supported
	mptcp: fix connect timeout handling
	mptcp: fix active subflow finalization
	ext4: add EA_INODE checking to ext4_iget()
	ext4: set lockdep subclass for the ea_inode in ext4_xattr_inode_cache_find()
	ext4: disallow ea_inodes with extended attributes
	ext4: add lockdep annotations for i_data_sem for ea_inode's
	fbcon: Fix null-ptr-deref in soft_cursor
	serial: 8250_tegra: Fix an error handling path in tegra_uart_probe()
	serial: cpm_uart: Fix a COMPILE_TEST dependency
	powerpc/xmon: Use KSYM_NAME_LEN in array size
	test_firmware: fix a memory leak with reqs buffer
	test_firmware: fix the memory leak of the allocated firmware buffer
	KVM: arm64: Populate fault info for watchpoint
	KVM: x86: Account fastpath-only VM-Exits in vCPU stats
	ksmbd: fix credit count leakage
	ksmbd: fix UAF issue from opinfo->conn
	ksmbd: fix incorrect AllocationSize set in smb2_get_info
	ksmbd: fix slab-out-of-bounds read in smb2_handle_negotiate
	ksmbd: fix multiple out-of-bounds read during context decoding
	KEYS: asymmetric: Copy sig and digest in public_key_verify_signature()
	fs/ntfs3: Validate MFT flags before replaying logs
	regmap: Account for register length when chunking
	tpm, tpm_tis: Request threaded interrupt handler
	iommu/amd/pgtbl_v2: Fix domain max address
	drm/amd/display: Have Payload Properly Created After Resume
	xfs: verify buffer contents when we skip log replay
	tls: rx: strp: don't use GFP_KERNEL in softirq context
	arm64: efi: Use SMBIOS processor version to key off Ampere quirk
	selftests: mptcp: diag: skip if MPTCP is not supported
	selftests: mptcp: simult flows: skip if MPTCP is not supported
	selftests: mptcp: join: avoid using 'cmp --bytes'
	ext4: enable the lazy init thread when remounting read/write
	Linux 6.1.33

Note, the following commits were reverted from this merge, due to
conflicts with other KVM patches.  If they are needed later, they can be
brought back in a way that enables them to actually build properly:
	bafe94ac9950 ("KVM: arm64: vgic: Fix locking comment")
	150a5f74a597 ("KVM: arm64: vgic: Wrap vgic_its_create() with config_lock")
	4129d71e5bda ("KVM: arm64: vgic: Fix a circular locking issue")

Change-Id: I3c4183fbe22b22914ee8985bd6add545abded9d0
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-06-14 19:17:01 +00:00
c5df11c964 Merge branch 'android14-6.1' into branch 'android14-6.1-lts'
This catches the -lts branch up with all of the recent changes that have
gone into the non-lts branch, INCLUDING the ABI update which we want
here to ensure that we do NOT break any newly added dependent symbols
(and to bring back in the reverts that were required before the ABI
break).

This includes the following commits:

88959a53f49e ANDROID: 6/16/2023 KMI update
21bc72f339eb UPSTREAM: binder: fix UAF of alloc->vma in race with munmap()
62c6dbdccda0 UPSTREAM: binder: add lockless binder_alloc_(set|get)_vma()
3cac17468229 UPSTREAM: Revert "android: binder: stop saving a pointer to the VMA"
dadb40b436c6 UPSTREAM: Revert "binder_alloc: add missing mmap_lock calls when using the VMA"
fcdbf469c5dd UPSTREAM: tipc: check the bearer min mtu properly when setting it by netlink
e48a801737e4 UPSTREAM: tipc: do not update mtu if msg_max is too small in mtu negotiation
461038ba5c89 UPSTREAM: tipc: add tipc_bearer_min_mtu to calculate min mtu
d0be9e79ee00 UPSTREAM: Revert "usb: gadget: udc: core: Invoke usb_gadget_connect only when started"
66a5c034049f UPSTREAM: ASoC: fsl_micfil: Fix error handler with pm_runtime_enable
6e721f991fb6 UPSTREAM: platform: Provide a remove callback that returns no value
07a8c091375c UPSTREAM: firmware: arm_sdei: Fix sleep from invalid context BUG
b065972b7b99 UPSTREAM: uapi/linux/const.h: prefer ISO-friendly __typeof__
aaf6ccb6f3b2 UPSTREAM: posix-cpu-timers: Implement the missing timer_wait_running callback
f3b712fcb576 ANDROID: GKI: reserve extra arm64 cpucaps for ABI preservation
d1c7974b1f71 ANDROID: arm64: errata: Add WORKAROUND_NXP_ERR050104 cpucaps
b489c5300127 ANDROID: KVM: arm64: Allow setting {P,U}XN in stage-2 PTEs
b7aff5c60342 ANDROID: KVM: arm64: Restrict host-to-hyp MMIO donations
f5f8c19f6c7b ANDROID: KVM: arm64: Allow state changes of MMIO pages
4ddb4ed818b1 ANDROID: KVM: arm64: Allow MMIO perm changes from modules
5d0225cdf0a0 ANDROID: KVM: arm64: Don't allocate from handle_host_mem_abort
5136a28ab69a ANDROID: KVM: arm64: Donate IOMMU regions to pKVM
23b62ec342ea ANDROID: KVM: arm64: Map MMIO donation as device at EL2
adc78128b342 ANDROID: KVM: arm64: Don't recycle pages from host mem abort
452ef5ae7b72 ANDROID: KVM: arm64: Pin host stage-2 tables
a8bba661e3da ANDROID: KVM: arm64: Move kvm_pte_follow() to header
04ddc7eec03f ANDROID: KVM: arm64: Pre-populate host stage2
0b6736459a92 ANDROID: KVM: arm64: Fix the host ownership later
cf2d193d9b79 ANDROID: KVM: arm64: Don't recycle non-default PTEs
a701418f2fc3 ANDROID: KVM: arm64: Introduce kvm_pgtable_stage2_reclaim_leaves
5224fbb5b866 ANDROID: GKI: enable CONFIG_BLK_CGROUP_IOCOST
fe1095430921 BACKPORT: FROMGIT: usb: core: add sysfs entry for usb device state
251efd658745 ANDROID: GKI: Update symbols to symbol list
71761b36c37a ANDROID: HID; Over-ride default maximum buffer size when using UHID
c3f3dc31f989 UPSTREAM: maple_tree: make maple state reusable after mas_empty_area()
d31ddcdbb880 Revert "Revert "mm/mmap: regression fix for unmapped_area{_topdown}""
6852d5ccb972 FROMLIST: scsi: ufs: ufs-mediatek: Set UFSHCD_QUIRK_MCQ_BROKEN_RTC quirk
274d5965b84c FROMLIST: scsi: ufs: ufs-mediatek: Set UFSHCD_QUIRK_MCQ_BROKEN_INTR quirk
0171df935980 FROMLIST: scsi: ufs: core: Add host quirk UFSHCD_QUIRK_MCQ_BROKEN_RTC
27b569b56887 FROMLIST: scsi: ufs: core: Add host quirk UFSHCD_QUIRK_MCQ_BROKEN_INTR
46554e08b325 ANDROID: GKI: Add symbols and update symbol list for Unisoc
e59544b857eb UPSTREAM: mailbox: mailbox-test: fix a locking issue in mbox_test_message_write()
749386a02e0b UPSTREAM: mailbox: mailbox-test: Fix potential double-free in mbox_test_message_write()
9c6866c99b8a ANDROID: dma-buf: support users to change dma_buf.name
09e0f8509684 ANDROID: set CONFIG_IKHEADERS=m for gki_defconfig.
7641ff0a300a ANDROID: mm: Avoid merging cma with others
9b16d612bf4f ANDROID: cpufreq: times: record fast switch frequency transitions
d645236cfd5e ANDROID: fix kernelci build failure in vmscan.c
8a609c5eb4ec ANDROID: ABI: Update symbol list for Exynos SoC
25058fea519a ANDROID: gki_defconfig: enable NVME
e8f6ddbd4ca9 ANDROID: ABI: Update symbols to unisoc whitelist for the scheduler
82a015300e00 UPSTREAM: usb: gadget: uvc: queue empty isoc requests if no video buffer is available
855f25e32cf9 ANDROID: GKI: Update symbol list for xiaomi
87f8c8265192 ANDROID: vendor_hooks:vendor hook for madvise_cold_or_pageout_pte_range.
f73aafc29bee ANDROID: ABI: Update pixel symbol list
a0d46c1dd14c ANDROID: KVM: arm64: iommu: Erase pvmfw from EL1 if possible

Change-Id: I76a89d70290eb13ac671ccfdab80d80dad3030eb
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-06-14 17:25:44 +00:00
fe10954309 BACKPORT: FROMGIT: usb: core: add sysfs entry for usb device state
Expose usb device state to userland as the information is useful in
detecting non-compliant setups and diagnosing enumeration failures.
For example:
- End-to-end signal integrity issues: the device would fail port reset
  repeatedly and thus be stuck in POWERED state.
- Charge-only cables (missing D+/D- lines): the device would never enter
  POWERED state as the HC would not see any pullup.

What's the status quo?
We do have error logs such as "Cannot enable. Maybe the USB cable is bad?"
to flag potential setup issues, but there's no good way to expose them to
userspace.

Why add a sysfs entry in struct usb_port instead of struct usb_device?
The struct usb_device is not device_add() to the system until it's in
ADDRESS state hence we would miss the first two states. The struct
usb_port is a better place to keep the information because its life
cycle is longer than the struct usb_device that is attached to the port.

Reported-by: kernel test robot <oliver.sang@intel.com>
Closes: https://lore.kernel.org/oe-lkp/202306042228.e532af6e-oliver.sang@intel.com
Reviewed-by: Alan Stern <stern@rowland.harvard.edu>
Change-Id: Ib78d4c7b4b1db402828c92dc792838a1015f0f2c
Signed-off-by: Roy Luo <royluo@google.com>
Message-ID: <20230608015913.1679984-1-royluo@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

(Backport conflicts: the adjacent sysfs entry is different in
ABI documentation)

Bug: 285199434
(cherry picked from commit 83cb2604f641cecadc275ca18adbba4bf262320f
https: //git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/ usb-testing)
Change-Id: I1a0da6686e57be05ef10ae98892599eb37074014
Signed-off-by: Roy Luo <royluo@google.com>
2023-06-14 13:51:57 +00:00
08378f0314 mm: page_table_check: Make it dependent on EXCLUSIVE_SYSTEM_RAM
commit 81a31a860bb61d54eb688af2568d9332ed9b8942 upstream.

Without EXCLUSIVE_SYSTEM_RAM, users are allowed to map arbitrary
physical memory regions into the userspace via /dev/mem. At the same
time, pages may change their properties (e.g., from anonymous pages to
named pages) while they are still being mapped in the userspace, leading
to "corruption" detected by the page table check.

To avoid these false positives, this patch makes PAGE_TABLE_CHECK
depends on EXCLUSIVE_SYSTEM_RAM. This dependency is understandable
because PAGE_TABLE_CHECK is a hardening technique but /dev/mem without
STRICT_DEVMEM (i.e., !EXCLUSIVE_SYSTEM_RAM) is itself a security
problem.

Even with EXCLUSIVE_SYSTEM_RAM, I/O pages may be still allowed to be
mapped via /dev/mem. However, these pages are always considered as named
pages, so they won't break the logic used in the page table check.

Cc: <stable@vger.kernel.org> # 5.17
Signed-off-by: Ruihan Li <lrh2000@pku.edu.cn>
Acked-by: David Hildenbrand <david@redhat.com>
Acked-by: Pasha Tatashin <pasha.tatashin@soleen.com>
Link: https://lore.kernel.org/r/20230515130958.32471-4-lrh2000@pku.edu.cn
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-06-14 11:15:29 +02:00
9166225c3b net/ipv4: ping_group_range: allow GID from 2147483648 to 4294967294
[ Upstream commit e209fee4118fe9a449d4d805361eb2de6796be39 ]

With this commit, all the GIDs ("0 4294967294") can be written to the
"net.ipv4.ping_group_range" sysctl.

Note that 4294967295 (0xffffffff) is an invalid GID (see gid_valid() in
include/linux/uidgid.h), and an attempt to register this number will cause
-EINVAL.

Prior to this commit, only up to GID 2147483647 could be covered.
Documentation/networking/ip-sysctl.rst had "0 4294967295" as an example
value, but this example was wrong and causing -EINVAL.

Fixes: c319b4d76b9e ("net: ipv4: add IPPROTO_ICMP socket kind")
Co-developed-by: Kuniyuki Iwashima <kuniyu@amazon.com>
Signed-off-by: Kuniyuki Iwashima <kuniyu@amazon.com>
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-06-14 11:15:16 +02:00
03c3264a15 Merge 6.1.31 into android14-6.1-lts
Changes in 6.1.31
	usb: dwc3: fix gadget mode suspend interrupt handler issue
	tpm, tpm_tis: Avoid cache incoherency in test for interrupts
	tpm, tpm_tis: Only handle supported interrupts
	tpm_tis: Use tpm_chip_{start,stop} decoration inside tpm_tis_resume
	tpm, tpm_tis: startup chip before testing for interrupts
	tpm: Re-enable TPM chip boostrapping non-tpm_tis TPM drivers
	tpm: Prevent hwrng from activating during resume
	watchdog: sp5100_tco: Immediately trigger upon starting.
	drm/amd/amdgpu: update mes11 api def
	drm/amdgpu/mes11: enable reg active poll
	skbuff: Proactively round up to kmalloc bucket size
	platform/x86: hp-wmi: Fix cast to smaller integer type warning
	net: dsa: mv88e6xxx: Add RGMII delay to 88E6320
	drm/amd/display: hpd rx irq not working with eDP interface
	ocfs2: Switch to security_inode_init_security()
	arm64: Also reset KASAN tag if page is not PG_mte_tagged
	x86/mm: Avoid incomplete Global INVLPG flushes
	platform/x86/intel/ifs: Annotate work queue on stack so object debug does not complain
	ALSA: hda/ca0132: add quirk for EVGA X299 DARK
	ALSA: hda: Fix unhandled register update during auto-suspend period
	ALSA: hda/realtek: Enable headset onLenovo M70/M90
	SUNRPC: Don't change task->tk_status after the call to rpc_exit_task
	mmc: sdhci-esdhc-imx: make "no-mmc-hs400" works
	mmc: block: ensure error propagation for non-blk
	power: supply: axp288_fuel_gauge: Fix external_power_changed race
	power: supply: bq25890: Fix external_power_changed race
	ASoC: rt5682: Disable jack detection interrupt during suspend
	net: cdc_ncm: Deal with too low values of dwNtbOutMaxSize
	m68k: Move signal frame following exception on 68020/030
	xtensa: fix signal delivery to FDPIC process
	xtensa: add __bswap{si,di}2 helpers
	parisc: Use num_present_cpus() in alternative patching code
	parisc: Handle kgdb breakpoints only in kernel context
	parisc: Fix flush_dcache_page() for usage from irq context
	parisc: Allow to reboot machine after system halt
	parisc: Enable LOCKDEP support
	parisc: Handle kprobes breakpoints only in kernel context
	gpio: mockup: Fix mode of debugfs files
	btrfs: use nofs when cleaning up aborted transactions
	dt-binding: cdns,usb3: Fix cdns,on-chip-buff-size type
	drm/mgag200: Fix gamma lut not initialized.
	drm/radeon: reintroduce radeon_dp_work_func content
	drm/amd/pm: add missing NotifyPowerSource message mapping for SMU13.0.7
	drm/amd/pm: Fix output of pp_od_clk_voltage
	Revert "binder_alloc: add missing mmap_lock calls when using the VMA"
	Revert "android: binder: stop saving a pointer to the VMA"
	binder: add lockless binder_alloc_(set|get)_vma()
	binder: fix UAF caused by faulty buffer cleanup
	binder: fix UAF of alloc->vma in race with munmap()
	selftests/memfd: Fix unknown type name build failure
	drm/amd/amdgpu: limit one queue per gang
	perf/x86/uncore: Correct the number of CHAs on SPR
	x86/topology: Fix erroneous smp_num_siblings on Intel Hybrid platforms
	irqchip/mips-gic: Don't touch vl_map if a local interrupt is not routable
	irqchip/mips-gic: Use raw spinlock for gic_lock
	debugobjects: Don't wake up kswapd from fill_pool()
	fbdev: udlfb: Fix endpoint check
	net: fix stack overflow when LRO is disabled for virtual interfaces
	udplite: Fix NULL pointer dereference in __sk_mem_raise_allocated().
	USB: core: Add routines for endpoint checks in old drivers
	USB: sisusbvga: Add endpoint checks
	media: radio-shark: Add endpoint checks
	ASoC: lpass: Fix for KASAN use_after_free out of bounds
	net: fix skb leak in __skb_tstamp_tx()
	drm: fix drmm_mutex_init()
	selftests: fib_tests: mute cleanup error message
	octeontx2-pf: Fix TSOv6 offload
	bpf: Fix mask generation for 32-bit narrow loads of 64-bit fields
	bpf: fix a memory leak in the LRU and LRU_PERCPU hash maps
	lan966x: Fix unloading/loading of the driver
	ipv6: Fix out-of-bounds access in ipv6_find_tlv()
	cifs: mapchars mount option ignored
	power: supply: leds: Fix blink to LED on transition
	power: supply: mt6360: add a check of devm_work_autocancel in mt6360_charger_probe
	power: supply: bq27xxx: Fix bq27xxx_battery_update() race condition
	power: supply: bq27xxx: Fix I2C IRQ race on remove
	power: supply: bq27xxx: Fix poll_interval handling and races on remove
	power: supply: bq27xxx: Add cache parameter to bq27xxx_battery_current_and_status()
	power: supply: bq27xxx: Move bq27xxx_battery_update() down
	power: supply: bq27xxx: Ensure power_supply_changed() is called on current sign changes
	power: supply: bq27xxx: After charger plug in/out wait 0.5s for things to stabilize
	power: supply: bq25890: Call power_supply_changed() after updating input current or voltage
	power: supply: bq24190: Call power_supply_changed() after updating input current
	power: supply: sbs-charger: Fix INHIBITED bit for Status reg
	optee: fix uninited async notif value
	firmware: arm_ffa: Check if ffa_driver remove is present before executing
	firmware: arm_ffa: Fix FFA device names for logical partitions
	fs: fix undefined behavior in bit shift for SB_NOUSER
	regulator: pca9450: Fix BUCK2 enable_mask
	platform/x86: ISST: Remove 8 socket limit
	coresight: Fix signedness bug in tmc_etr_buf_insert_barrier_packet()
	ARM: dts: imx6qdl-mba6: Add missing pvcie-supply regulator
	x86/pci/xen: populate MSI sysfs entries
	xen/pvcalls-back: fix double frees with pvcalls_new_active_socket()
	x86/show_trace_log_lvl: Ensure stack pointer is aligned, again
	ASoC: Intel: Skylake: Fix declaration of enum skl_ch_cfg
	ASoC: Intel: avs: Fix declaration of enum avs_channel_config
	ASoC: Intel: avs: Access path components under lock
	cxl: Wait Memory_Info_Valid before access memory related info
	sctp: fix an issue that plpmtu can never go to complete state
	forcedeth: Fix an error handling path in nv_probe()
	platform/mellanox: mlxbf-pmc: fix sscanf() error checking
	net/mlx5e: Fix SQ wake logic in ptp napi_poll context
	net/mlx5e: Fix deadlock in tc route query code
	net/mlx5e: Use correct encap attribute during invalidation
	net/mlx5e: do as little as possible in napi poll when budget is 0
	net/mlx5: DR, Fix crc32 calculation to work on big-endian (BE) CPUs
	net/mlx5: Handle pairing of E-switch via uplink un/load APIs
	net/mlx5: DR, Check force-loopback RC QP capability independently from RoCE
	net/mlx5: Fix error message when failing to allocate device memory
	net/mlx5: Collect command failures data only for known commands
	net/mlx5: Devcom, fix error flow in mlx5_devcom_register_device
	net/mlx5: Devcom, serialize devcom registration
	arm64: dts: imx8mn-var-som: fix PHY detection bug by adding deassert delay
	firmware: arm_ffa: Set reserved/MBZ fields to zero in the memory descriptors
	regulator: mt6359: add read check for PMIC MT6359
	net/smc: Reset connection when trying to use SMCRv2 fails.
	3c589_cs: Fix an error handling path in tc589_probe()
	net: phy: mscc: add VSC8502 to MODULE_DEVICE_TABLE
	Linux 6.1.31

Change-Id: I1043b7dd190672829baaf093f690e70a07c7a6dd
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-06-13 20:43:51 +00:00