Commit Graph

5724 Commits

Author SHA1 Message Date
Mostafa Saleh 3eff75f14f ANDROID: iommu/arm-smmu-v3-kvm: Fix SID validation
At allocation time for L2 pointers SID should be checked.

Also, there is a missing equal for the SID checks.

Bug: 443053939
Change-Id: I63aaf0438640c0cb173f12405b9c67b3a9656c61
Signed-off-by: Mostafa Saleh <smostafa@google.com>
(cherry picked from commit 0668e45a43398a07c3aa2ae08903097657efd87e)
Signed-off-by: Lee Jones <joneslee@google.com>
2025-09-17 06:52:11 -07:00
Mostafa Saleh 02ac8f6d19 ANDROID: iommu/arm-smmu-v3-kvm: Don't leak SMMU ref in error path
During attach, if error happens after taking the ref of the SMMUv3, it
must be put back.

Also, add an assertion during free domain that there are no dangling
SMMU refs.

Bug: 357781595
Change-Id: Ic717c5b2a958e58e00e188b68dda754c38014b76
Signed-off-by: Mostafa Saleh <smostafa@google.com>
2025-08-08 00:34:46 -07:00
Mostafa Saleh c8f99e425b ANDROID: iommu/arm-smmu-v3-kvm: Put SMMU ref on detach
The driver takes a reference on the smmu for each attached device,
we should do the same at detach, which is ignored at the moment for
pasids.

Bug: 357781595
Change-Id: I93380fad288c7fe06c462d7568dc1f4f53ecb640
Signed-off-by: Mostafa Saleh <smostafa@google.com>
2025-08-08 00:34:46 -07:00
Mostafa Saleh c60bcaaf93 ANDROID: iommu/arm-smmu-v3-kvm: Don't detach pasid if doesn't exist
Check before clearing CD entries as they might not be attached.

Bug: 357781595
Change-Id: I54d26657d38ae4447038adbbdc386c9c4e4f32f4
Signed-off-by: Mostafa Saleh <smostafa@google.com>
2025-08-08 00:34:46 -07:00
Greg Kroah-Hartman 9222a6a6c0 Merge 6.12.37 into android16-6.12-lts
GKI (arm64) relevant 35 out of 230 changes, affecting 67 files +612/-427
  ec9be081c5 Revert "mmc: sdhci: Disable SD card clock before changing parameters" [1 file, +2/-7]
  0698a2eb7d Bluetooth: HCI: Set extended advertising data synchronously [2 files, +130/-113]
  3672fe9d1e Bluetooth: hci_sync: revert some mesh modifications [1 file, +4/-12]
  44bb1e13b4 Bluetooth: MGMT: set_mesh: update LE scan interval and window [1 file, +22/-0]
  a99f80c88a Bluetooth: MGMT: mesh_send: check instances prior disabling advertising [1 file, +2/-1]
  5581e694d3 usb: typec: altmodes/displayport: do not index invalid pin_assignments [2 files, +2/-1]
  b1abc5ab47 scsi: sd: Fix VPD page 0xb7 length check [1 file, +1/-1]
  381c1c1219 Bluetooth: Prevent unintended pause by checking if advertising is active [1 file, +4/-0]
  f0fee863a7 nvme: Fix incorrect cdw15 value in passthru error logging [1 file, +1/-1]
  50c86c0945 netfs: Fix i_size updating [2 files, +8/-2]
  a553afd91f net/sched: Always pass notifications when child class becomes empty [1 file, +5/-14]
  d78f79a2c1 spinlock: extend guard with spinlock_bh variants [1 file, +13/-0]
  0cc4721a71 sched/fair: Rename h_nr_running into h_nr_queued [5 files, +53/-53]
  a2562bdd35 sched/fair: Fixup wake_up_sync() vs DELAYED_DEQUEUE [1 file, +11/-2]
  5833026221 f2fs: decrease spare area for pinned files for zoned devices [3 files, +5/-2]
  8912b139a8 f2fs: zone: fix to calculate first_zoned_segno correctly [4 files, +69/-20]
  c5474a7b04 bpf: use common instruction history across all states [2 files, +63/-63]
  4265682c29 bpf: Do not include stack ptr register in precision backtracking bookkeeping [2 files, +24/-6]
  e0fefe9bc0 netfs: Fix oops in write-retry from mis-resetting the subreq iterator [1 file, +3/-2]
  acf9ab15ec selinux: change security_compute_sid to return the ssid or tsid on match [1 file, +11/-5]
  42c5a4b47d rcu: Return early if callback is not specified [1 file, +4/-0]
  e036efbe58 add a string-to-qstr constructor [10 files, +13/-23]
  f94c422157 fs: export anon_inode_make_secure_inode() and fix secretmem LSM bypass [3 files, +21/-13]
  8caccd2eac usb: xhci: Skip xhci_reset in xhci_resume if xhci is being removed [1 file, +4/-1]
  9f75893189 Revert "usb: xhci: Implement xhci_handshake_check_state() helper" [3 files, +3/-30]
  fbebc2254a usb: xhci: quirk for data loss in ISOC transfers [3 files, +30/-0]
  195597e0be xhci: Disable stream for xHC controller with XHCI_BROKEN_STREAMS [1 file, +2/-1]
  dbdd2a2320 Input: xpad - support Acer NGR 200 Controller [1 file, +2/-0]
  3b1407caac usb: dwc3: Abort suspend on soft disconnect failure [2 files, +16/-15]
  7cb8750160 usb: acpi: fix device link removal [3 files, +8/-1]
  c745744a82 dma-buf: fix timeout handling in dma_resv_wait_timeout v2 [1 file, +7/-5]
  ccdc472b4d Logitech C-270 even more broken [1 file, +2/-1]
  c782f98eef usb: typec: displayport: Fix potential deadlock [1 file, +1/-2]
  ead91de35d mm/vmalloc: fix data race in show_numa_info() [1 file, +35/-28]
  4c443046d8 mm: userfaultfd: fix race of userfaultfd_move and swap cache [1 file, +31/-2]

Changes in 6.12.37
        rtc: pcf2127: add missing semicolon after statement
        rtc: pcf2127: fix SPI command byte for PCF2131
        rtc: cmos: use spin_lock_irqsave in cmos_interrupt
        virtio-net: xsk: rx: fix the frame's length check
        virtio-net: ensure the received length does not exceed allocated size
        s390/pci: Fix stale function handles in error handling
        s390/pci: Do not try re-enabling load/store if device is disabled
        net: txgbe: request MISC IRQ in ndo_open
        vsock/vmci: Clear the vmci transport packet properly when initializing it
        net: libwx: fix the incorrect display of the queue number
        mmc: sdhci: Add a helper function for dump register in dynamic debug mode
        Revert "mmc: sdhci: Disable SD card clock before changing parameters"
        mmc: core: sd: Apply BROKEN_SD_DISCARD quirk earlier
        Bluetooth: HCI: Set extended advertising data synchronously
        Bluetooth: hci_sync: revert some mesh modifications
        Bluetooth: MGMT: set_mesh: update LE scan interval and window
        Bluetooth: MGMT: mesh_send: check instances prior disabling advertising
        iommufd/selftest: Fix iommufd_dirty_tracking with large hugepage sizes
        regulator: gpio: Fix the out-of-bounds access to drvdata::gpiods
        Input: cs40l50-vibra - fix potential NULL dereference in cs40l50_upload_owt()
        usb: typec: altmodes/displayport: do not index invalid pin_assignments
        mtk-sd: Fix a pagefault in dma_unmap_sg() for not prepared data
        mtk-sd: Prevent memory corruption from DMA map failure
        mtk-sd: reset host->mrq on prepare_data() error
        drm/v3d: Disable interrupts before resetting the GPU
        firmware: arm_ffa: Fix memory leak by freeing notifier callback node
        firmware: arm_ffa: Move memory allocation outside the mutex locking
        firmware: arm_ffa: Replace mutex with rwlock to avoid sleep in atomic context
        arm64: dts: apple: t8103: Fix PCIe BCM4377 nodename
        platform/mellanox: mlxbf-tmfifo: fix vring_desc.len assignment
        RDMA/mlx5: Fix unsafe xarray access in implicit ODP handling
        RDMA/mlx5: Initialize obj_event->obj_sub_list before xa_insert
        nfs: Clean up /proc/net/rpc/nfs when nfs_fs_proc_net_init() fails.
        NFSv4/pNFS: Fix a race to wake on NFS_LAYOUT_DRAIN
        scsi: qla2xxx: Fix DMA mapping test in qla24xx_get_port_database()
        scsi: qla4xxx: Fix missing DMA mapping error in qla4xxx_alloc_pdu()
        scsi: sd: Fix VPD page 0xb7 length check
        scsi: ufs: core: Fix spelling of a sysfs attribute name
        RDMA/mlx5: Fix HW counters query for non-representor devices
        RDMA/mlx5: Fix CC counters query for MPV
        RDMA/mlx5: Fix vport loopback for MPV device
        platform/mellanox: mlxbf-pmc: Fix duplicate event ID for CACHE_DATA1
        platform/mellanox: nvsw-sn2201: Fix bus number in adapter error message
        Bluetooth: Prevent unintended pause by checking if advertising is active
        btrfs: fix missing error handling when searching for inode refs during log replay
        btrfs: fix iteration of extrefs during log replay
        btrfs: return a btrfs_inode from btrfs_iget_logging()
        btrfs: return a btrfs_inode from read_one_inode()
        btrfs: fix invalid inode pointer dereferences during log replay
        btrfs: fix inode lookup error handling during log replay
        btrfs: record new subvolume in parent dir earlier to avoid dir logging races
        btrfs: propagate last_unlink_trans earlier when doing a rmdir
        btrfs: use btrfs_record_snapshot_destroy() during rmdir
        ethernet: atl1: Add missing DMA mapping error checks and count errors
        dpaa2-eth: fix xdp_rxq_info leak
        drm/exynos: fimd: Guard display clock control with runtime PM calls
        spi: spi-fsl-dspi: Clear completion counter before initiating transfer
        drm/i915/selftests: Change mock_request() to return error pointers
        nvme: Fix incorrect cdw15 value in passthru error logging
        nvmet: fix memory leak of bio integrity
        platform/x86: dell-wmi-sysman: Fix WMI data block retrieval in sysfs callbacks
        platform/x86: hp-bioscfg: Directly use firmware_attributes_class
        platform/x86: hp-bioscfg: Fix class device unregistration
        platform/x86: firmware_attributes_class: Move include linux/device/class.h
        platform/x86: firmware_attributes_class: Simplify API
        platform/x86: think-lmi: Directly use firmware_attributes_class
        platform/x86: think-lmi: Fix class device unregistration
        platform/x86: dell-sysman: Directly use firmware_attributes_class
        platform/x86: dell-wmi-sysman: Fix class device unregistration
        platform/mellanox: mlxreg-lc: Fix logic error in power state check
        drm/bridge: aux-hpd-bridge: fix assignment of the of_node
        smb: client: fix warning when reconnecting channel
        net: usb: lan78xx: fix WARN in __netif_napi_del_locked on disconnect
        drm/i915/gt: Fix timeline left held on VMA alloc error
        drm/i915/gsc: mei interrupt top half should be in irq disabled context
        idpf: return 0 size for RSS key if not supported
        idpf: convert control queue mutex to a spinlock
        igc: disable L1.2 PCI-E link substate to avoid performance issue
        smb: client: set missing retry flag in smb2_writev_callback()
        smb: client: set missing retry flag in cifs_readv_callback()
        smb: client: set missing retry flag in cifs_writev_callback()
        netfs: Fix i_size updating
        lib: test_objagg: Set error message in check_expect_hints_stats()
        amd-xgbe: align CL37 AN sequence as per databook
        enic: fix incorrect MTU comparison in enic_change_mtu()
        rose: fix dangling neighbour pointers in rose_rt_device_down()
        nui: Fix dma_mapping_error() check
        net/sched: Always pass notifications when child class becomes empty
        amd-xgbe: do not double read link status
        smb: client: fix race condition in negotiate timeout by using more precise timing
        arm64: dts: rockchip: fix internal USB hub instability on RK3399 Puma
        crypto: iaa - Remove dst_null support
        crypto: iaa - Do not clobber req->base.data
        spinlock: extend guard with spinlock_bh variants
        crypto: zynqmp-sha - Add locking
        kunit: qemu_configs: sparc: use Zilog console
        kunit: qemu_configs: sparc: Explicitly enable CONFIG_SPARC32=y
        kunit: qemu_configs: Disable faulting tests on 32-bit SPARC
        gfs2: Initialize gl_no_formal_ino earlier
        gfs2: Rename GIF_{DEFERRED -> DEFER}_DELETE
        gfs2: Rename dinode_demise to evict_behavior
        gfs2: Prevent inode creation race
        gfs2: Decode missing glock flags in tracepoints
        gfs2: Add GLF_PENDING_REPLY flag
        gfs2: Replace GIF_DEFER_DELETE with GLF_DEFER_DELETE
        gfs2: Move gfs2_dinode_dealloc
        gfs2: Move GIF_ALLOC_FAILED check out of gfs2_ea_dealloc
        gfs2: deallocate inodes in gfs2_create_inode
        btrfs: prepare btrfs_page_mkwrite() for large folios
        btrfs: fix wrong start offset for delalloc space release during mmap write
        sched/fair: Rename h_nr_running into h_nr_queued
        sched/fair: Add new cfs_rq.h_nr_runnable
        sched/fair: Fixup wake_up_sync() vs DELAYED_DEQUEUE
        gfs2: Move gfs2_trans_add_databufs
        gfs2: Don't start unnecessary transactions during log flush
        ASoC: tas2764: Extend driver to SN012776
        ASoC: tas2764: Reinit cache on part reset
        ACPI: thermal: Fix stale comment regarding trip points
        ACPI: thermal: Execute _SCP before reading trip points
        bonding: Mark active offloaded xfrm_states
        wifi: ath12k: fix skb_ext_desc leak in ath12k_dp_tx() error path
        wifi: ath12k: Handle error cases during extended skb allocation
        wifi: ath12k: fix wrong handling of CCMP256 and GCMP ciphers
        RDMA/rxe: Fix "trying to register non-static key in rxe_qp_do_cleanup" bug
        iommu: ipmmu-vmsa: avoid Wformat-security warning
        f2fs: decrease spare area for pinned files for zoned devices
        f2fs: zone: introduce first_zoned_segno in f2fs_sb_info
        f2fs: zone: fix to calculate first_zoned_segno correctly
        scsi: lpfc: Remove NLP_RELEASE_RPI flag from nodelist structure
        scsi: lpfc: Change lpfc_nodelist nlp_flag member into a bitmask
        scsi: lpfc: Avoid potential ndlp use-after-free in dev_loss_tmo_callbk
        hisi_acc_vfio_pci: bugfix cache write-back issue
        hisi_acc_vfio_pci: bugfix the problem of uninstalling driver
        bpf: use common instruction history across all states
        bpf: Do not include stack ptr register in precision backtracking bookkeeping
        arm64: dts: qcom: sm8650: change labels to lower-case
        arm64: dts: qcom: sm8650: Fix domain-idle-state for CPU2
        arm64: dts: renesas: Use interrupts-extended for Ethernet PHYs
        arm64: dts: renesas: Factor out White Hawk Single board support
        arm64: dts: renesas: white-hawk-single: Improve Ethernet TSN description
        arm64: dts: qcom: sm8650: add the missing l2 cache node
        ubsan: integer-overflow: depend on BROKEN to keep this out of CI
        remoteproc: k3: Call of_node_put(rmem_np) only once in three functions
        remoteproc: k3-r5: Add devm action to release reserved memory
        remoteproc: k3-r5: Use devm_kcalloc() helper
        remoteproc: k3-r5: Use devm_ioremap_wc() helper
        remoteproc: k3-r5: Use devm_rproc_add() helper
        remoteproc: k3-r5: Refactor sequential core power up/down operations
        netfs: Fix oops in write-retry from mis-resetting the subreq iterator
        mfd: exynos-lpass: Fix another error handling path in exynos_lpass_probe()
        drm/xe: Fix DSB buffer coherency
        drm/xe: Move DSB l2 flush to a more sensible place
        drm/xe: add interface to request physical alignment for buffer objects
        drm/xe: Allow bo mapping on multiple ggtts
        drm/xe: move DPT l2 flush to a more sensible place
        drm/xe: Replace double space with single space after comma
        drm/xe/guc: Dead CT helper
        drm/xe/guc: Explicitly exit CT safe mode on unwind
        selinux: change security_compute_sid to return the ssid or tsid on match
        drm/simpledrm: Do not upcast in release helpers
        drm/amdgpu: VCN v5_0_1 to prevent FW checking RB during DPG pause
        drm/i915/dp_mst: Work around Thunderbolt sink disconnect after SINK_COUNT_ESI read
        drm/amdgpu: add kicker fws loading for gfx11/smu13/psp13
        drm/amd/display: Add more checks for DSC / HUBP ONO guarantees
        arm64: dts: qcom: x1e80100-crd: mark l12b and l15b always-on
        drm/amdgpu/mes: add missing locking in helper functions
        sched_ext: Make scx_group_set_weight() always update tg->scx.weight
        scsi: lpfc: Restore clearing of NLP_UNREG_INP in ndlp->nlp_flag
        drm/msm: Fix a fence leak in submit error path
        drm/msm: Fix another leak in the submit error path
        ALSA: sb: Don't allow changing the DMA mode during operations
        ALSA: sb: Force to disable DMAs once when DMA mode is changed
        ata: libata-acpi: Do not assume 40 wire cable if no devices are enabled
        ata: pata_cs5536: fix build on 32-bit UML
        ASoC: amd: yc: Add quirk for MSI Bravo 17 D7VF internal mic
        platform/x86/amd/pmc: Add PCSpecialist Lafite Pro V 14M to 8042 quirks list
        genirq/irq_sim: Initialize work context pointers properly
        powerpc: Fix struct termio related ioctl macros
        ASoC: amd: yc: update quirk data for HP Victus
        regulator: fan53555: add enable_time support and soft-start times
        scsi: target: Fix NULL pointer dereference in core_scsi3_decode_spec_i_port()
        aoe: defer rexmit timer downdev work to workqueue
        wifi: mac80211: drop invalid source address OCB frames
        wifi: ath6kl: remove WARN on bad firmware input
        ACPICA: Refuse to evaluate a method if arguments are missing
        mtd: spinand: fix memory leak of ECC engine conf
        rcu: Return early if callback is not specified
        add a string-to-qstr constructor
        module: Provide EXPORT_SYMBOL_GPL_FOR_MODULES() helper
        fs: export anon_inode_make_secure_inode() and fix secretmem LSM bypass
        RDMA/mlx5: Fix cache entry update on dereg error
        IB/mlx5: Fix potential deadlock in MR deregistration
        drm/xe/bmg: Update Wa_22019338487
        drm/xe: Allow dropping kunit dependency as built-in
        NFSv4/flexfiles: Fix handling of NFS level errors in I/O
        usb: xhci: Skip xhci_reset in xhci_resume if xhci is being removed
        Revert "usb: xhci: Implement xhci_handshake_check_state() helper"
        usb: xhci: quirk for data loss in ISOC transfers
        xhci: dbctty: disable ECHO flag by default
        xhci: dbc: Flush queued requests before stopping dbc
        xhci: Disable stream for xHC controller with XHCI_BROKEN_STREAMS
        Input: xpad - support Acer NGR 200 Controller
        Input: iqs7222 - explicitly define number of external channels
        usb: cdnsp: do not disable slot for disabled slot
        usb: cdnsp: Fix issue with CV Bad Descriptor test
        usb: dwc3: Abort suspend on soft disconnect failure
        usb: chipidea: udc: disconnect/reconnect from host when do suspend/resume
        usb: acpi: fix device link removal
        smb: client: fix readdir returning wrong type with POSIX extensions
        cifs: all initializations for tcon should happen in tcon_info_alloc
        dma-buf: fix timeout handling in dma_resv_wait_timeout v2
        i2c/designware: Fix an initialization issue
        Logitech C-270 even more broken
        optee: ffa: fix sleep in atomic context
        iommu/rockchip: prevent iommus dead loop when two masters share one IOMMU
        powercap: intel_rapl: Do not change CLAMPING bit if ENABLE bit cannot be changed
        riscv: cpu_ops_sbi: Use static array for boot_data
        platform/x86: think-lmi: Create ksets consecutively
        platform/x86: think-lmi: Fix kobject cleanup
        platform/x86: think-lmi: Fix sysfs group cleanup
        usb: typec: displayport: Fix potential deadlock
        powerpc/kernel: Fix ppc_save_regs inclusion in build
        mm/vmalloc: fix data race in show_numa_info()
        mm: userfaultfd: fix race of userfaultfd_move and swap cache
        x86/bugs: Rename MDS machinery to something more generic
        x86/bugs: Add a Transient Scheduler Attacks mitigation
        KVM: SVM: Advertise TSA CPUID bits to guests
        x86/microcode/AMD: Add TSA microcode SHAs
        x86/process: Move the buffer clearing before MONITOR
        Linux 6.12.37

Change-Id: If1d8d0f83e11df1540bebaf0fb136fe340f25dcb
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-07-13 12:24:55 +00:00
Greg Kroah-Hartman 1741b1e583 Merge android16-6.12 into android16-6.12-lts
This merges the android16-6.12 branch into the -lts branch, catching
it up with the latest changes in there.

It contains the following commits:

* 21ed84930c UPSTREAM: Revert "usb: xhci: Implement xhci_handshake_check_state() helper"
* 5b3ae3bcbe BACKPORT: usb: xhci: Skip xhci_reset in xhci_resume if xhci is being removed
* 5c72e9faba ANDROID: rust_binder: adjust errors from death notifications
* 9e02edea7f ANDROID: rust_binder: use u64 for death cookie
* 4317f0aeff ANDROID: f2fs: fixup ABI break due to reserved_pin_section
* 25bdb4a624 Revert "ANDROID: ABI: update symbol list for honor"
* a76eb2b67b ANDROID: GKI: Update oplus symbol list
* 6222007a04 ANDROID: mm/readahead: add for bypass high order allocation
* 659d7bb454 ANDROID: ABI: Update symbol list for exynos
* 26937a37f5 ANDROID: MODVERSIONS: hide type definition in drivers/usb/core/driver.c
* 8760b6e4f5 ANDROID: usb: Add vendor hook for usb suspend and resume
* da662aecc8 FROMLIST: KVM: Avoid synchronize_srcu() in kvm_io_bus_register_dev()
* 4be05c6524 FROMLIST: KVM: arm64: vgic: Explicitly implement vgic_dist::ready ordering
* d6045efc66 FROMLIST: KVM: arm64: vgic-init: Remove vgic_ready() macro
* f06dd0cd35 ANDROID: rust_binder: release threads before refs
* 5bbd30a60b ANDROID: ABI: Update pixel symbol list
* bafbebf2ab ANDROID: GKI: Update symbol list for xiaomi
* b7b130b7cc ANDROID: export folio_deactivate() for GKI purpose.
* 41f730f9c4 ANDROID: GKI: update exynos symbol list
* 766ecae19f UPSTREAM: xhci: dbctty: disable ECHO flag by default
* 8ea40f5243 ANDROID: GKI: Update xiaomi symbol list.
* 5594b4731d ANDROID: vendor_hooks: export tracepoint symbols
* 0d4cc1daff ANDROID: KVM: arm64: Don't update IOMMU under memory pressure
* 672185e575 ANDROID: iommu/iommu: Handle multi-page deferred sg mappings
* 740d42d181 ANDROID: vendor_hooks: Add vendor_hook in futex to fix the OEM scheduling priority bug
* 6eb6f346ac ANDROID: ABI: Update symbol list for mtk
* c302079179 ANDROID: vendor_hooks: Add vendor hook for GenieZone demand paging
* 5c1cddc983 ANDROID: vendor_hooks: Add vendor hook for GenieZone para-virtualization
* d893caf112 ANDROID: ashmem_rust: Add support for retrieving an ashmem area's vmfile
* 0be74214c0 ANDROID: ashmem_rust: Add support for querying the size of an ashmem region
* eb50f663c4 ANDROID: ashmem_rust: Add support for providing an ashmem region's name
* 6bdbae6ea9 ANDROID: ashmem_rust: Add is_ashmem_file()
* 0d890f867e ANDROID: ABI: update symbol list for honor
* 12727f8a4b FROMGIT: f2fs: introduce reserved_pin_section sysfs entry
* 286cd9d628 ANDROID: GKI: Update RTK STB KMI symbol list
* 7b4f7682b5 ANDROID: GKI: Update symbol list for Amlogic
* 862ce4b2c4 ANDROID: KVM: arm64: iommu: Fix power tracking
* 61184996a8 ANDROID: drivers/iommu: Fix return value in iommu_map_sg
* acad0cd51d ANDROID: ABI: update symbol list for galaxy
* 393dbad32c ANDROID: vendor_hook: add condition to call for freezing fail
* b62fe47ba2 ANDROID: fix ashmem_rust return EINVAL bug in ashmem_rust.rs
* a7e1300b95 ANDROID: Revert "cpufreq: Avoid using inconsistent policy->min and policy->max"
* 15d2fe0544 ANDROID: qcom: Update the ABI symbol list
* f6ca783ba2 UPSTREAM: scsi: ufs: qcom: Check gear against max gear in vop freq_to_gear()
* 237708e9d3 ANDROID: GKI: Update symbols list file for honor White list the vm_normal_folio_pmd
* f18e354aa9 ANDROID: mm: export vm_normal_folio_pmd to allow vendors to implement simplified smaps
* c181c478b0 ANDROID: vendor_hooks: add hook to record slab free
* d2e452e197 ANDROID: Build fixups with PROXY_EXEC v18 + !CONFIG_SMP
* 4f9e4406e4 ANDROID: Update proxy-exec logic from v14 to v18
* 3fa8dabe1a ANDROID: GKI: update asr symbols list
* 94310b3f77 ANDROID: Add the dma header to aarch64 allowlist
* 880d6538c5 UPSTREAM: usb: gadget: u_serial: Fix race condition in TTY wakeup
* b115bf2302 ANDROID: ABI: Update symbol list for mtk
* e87018c5f9 FROMGIT: sched/deadline: Fix dl_server runtime calculation formula
* e2bf362ee2 FROMGIT: sched/core: Fix migrate_swap() vs. hotplug
* 06ca12d7d2 ANDROID: GKI: update the ABI symbol list
* 55972ed83a ANDROID: Fixup init_user_ns CRC change
* 4e873ad607 ANDROID: user: Add vendor hook to user for GKI purpose
* a097cd9c30 ANDROID: export find_user() for GKI purpose.
* 85b8233f7e ANDROID: rust_binder: use euid from the task
* 969c904869 ANDROID: ashmem: rename VmAreaNew->VmaNew
* 2ab3e5f283 ANDROID: rust_binder: rename VmAreaNew->VmaNew
* 2ef75ab83a ANDROID: rust_binder: use tgid_nr_ns for getting pid
* 6a2be11026 UPSTREAM: task: rust: rework how current is accessed
* 602e2300de UPSTREAM: rust: add PidNamespace
* 12dfc1d9cb UPSTREAM: rust: miscdevice: add mmap support
* 8e67cb756f UPSTREAM: mm: rust: add VmaNew for f_ops->mmap()
* bd140ddf75 UPSTREAM: mm: rust: add mmput_async support
* 0c50773076 UPSTREAM: mm: rust: add lock_vma_under_rcu
* 0b5465bb31 UPSTREAM: mm: rust: add vm_insert_page
* d7f52612c5 UPSTREAM: mm: rust: add vm_area_struct methods that require read access
* f03d4f7490 UPSTREAM: mm: rust: add abstraction for struct mm_struct
* 2ef6dbc73e BACKPORT: rust: miscdevice: change how f_ops vtable is constructed
* 1acd3b312f Revert "FROMLIST: mm: rust: add abstraction for struct mm_struct"
* a012c15566 Revert "FROMLIST: mm: rust: add vm_area_struct methods that require read access"
* 3be00a9bf8 Revert "FROMLIST: mm: rust: add vm_insert_page"
* 3aed88205e Revert "FROMLIST: mm: rust: add lock_vma_under_rcu"
* a121b6e72f Revert "FROMLIST: mm: rust: add mmput_async support"
* 9248564a81 Revert "FROMLIST: mm: rust: add VmAreaNew for f_ops->mmap()"
* 6de3ace5b5 Revert "FROMLIST: rust: miscdevice: add mmap support"
* b7f54dd23b Revert "BACKPORT: FROMLIST: task: rust: rework how current is accessed"
* 5913c80b22 ANDROID: iommu/arm-smmu-v3-kvm: Fix idmap free_leaf
* c40c54e669 UPSTREAM: erofs: impersonate the opener's credentials when accessing backing file
* 4d0200d0a9 BACKPORT: erofs: add 'fsoffset' mount option to specify filesystem offset
* 399deda7b5 ANDROID: scsi: ufs: add UFSHCD_ANDROID_QUIRK_NO_IS_READ_ON_H8
* f6b1ab83f6 ANDROID: rust_binder: remove binder_logs/procs/pid immediately
* dd35623c83 ANDROID: ABI: update symbol list for mtktv
* 58beebb30f FROMLIST: fuse: give wakeup hints to the scheduler
* 0f917e4066 ANDROID: virt: gunyah: Replace arm_smccc_1_1_smc with arm_smccc_1_1_invoke
* 33429dd323 UPSTREAM: posix-cpu-timers: fix race between handle_posix_cpu_timers() and posix_cpu_timer_del()
* 6483832947 ANDROID: GKI: Update symbol list file for xiaomi
* 668635cd34 UPSTREAM: usb: gadget: uvc: dont call usb_composite_setup_continue when not streaming

Change-Id: I64074144d1a6da9fdd3b4dd5f8314ccea4f9d9e8
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-07-13 12:17:44 +00:00
Greg Kroah-Hartman 8cb2595f93 Merge 6.12.35 into android16-6.12-lts
GKI (arm64) relevant 87 out of 414 changes, affecting 112 files +738/-352
  bdb71ee651 configfs: Do not override creating attribute file failure in populate_attrs() [1 file, +1/-1]
  ba789be63d io_uring: account drain memory to cgroup [1 file, +1/-1]
  c58b577cf7 io_uring/kbuf: account ring io_buffer_list memory [1 file, +1/-1]
  f78b38af35 jbd2: fix data-race and null-ptr-deref in jbd2_journal_dirty_metadata() [1 file, +3/-2]
  2429bb9fad media: v4l2-dev: fix error handling in __video_register_device() [1 file, +7/-7]
  5d8b057ed7 media: videobuf2: use sgtable-based scatterlist wrappers [1 file, +2/-2]
  b52dc88361 media: uvcvideo: Return the number of processed controls [1 file, +10/-1]
  6d2b12e7c5 media: uvcvideo: Send control events for partial succeeds [1 file, +9/-3]
  aac91ae06c media: uvcvideo: Fix deferred probing error [1 file, +19/-8]
  86d9837e46 arm64/mm: Close theoretical race where stale TLB entry remains valid [1 file, +5/-4]
  5538af3843 block: use plug request list tail for one-shot backmerge attempt [1 file, +13/-13]
  943801c380 block: Clear BIO_EMULATES_ZONE_APPEND flag on BIO completion [1 file, +1/-0]
  1c71f3cf5f cgroup,freezer: fix incomplete freezing when attaching tasks [1 file, +1/-2]
  a0890b7805 bus: firewall: Fix missing static inline annotations for stubs [1 file, +9/-6]
  5766da2237 ext4: inline: fix len overflow in ext4_prepare_inline_data [1 file, +1/-1]
  796632e6f8 ext4: fix calculation of credits for extent tree modification [1 file, +6/-5]
  4b36399711 ext4: ensure i_size is smaller than maxbytes [1 file, +2/-1]
  be5f3061a6 ext4: only dirty folios when data journaling regular files [1 file, +6/-1]
  a0b1c91ada Input: gpio-keys - fix possible concurrent access in gpio_keys_irq_timer() [1 file, +2/-0]
  fed611bd8c f2fs: fix to do sanity check on ino and xnid [1 file, +6/-0]
  aaa644e7ff f2fs: prevent kernel warning due to negative i_nlink from corrupted image [1 file, +9/-0]
  ee1b421c46 f2fs: fix to do sanity check on sit_bitmap_size [1 file, +8/-0]
  f16a797dce watchdog: fix watchdog may detect false positive of softlockup [1 file, +27/-14]
  02137179ff mm: fix ratelimit_pages update error in dirty_ratio_handler() [1 file, +1/-1]
  462eee6d42 firmware: arm_scmi: Ensure that the message-id supports fastchannel [2 files, +45/-33]
  e3cf1ef571 dm-verity: fix a memory leak if some arguments are specified multiple times [3 files, +24/-5]
  f2986bccf2 dm: lock limits when reading them [1 file, +7/-1]
  ec5f0b4412 ovl: Fix nested backing file paths [1 file, +2/-2]
  92776ca0cc remoteproc: core: Cleanup acquired resources when rproc_handle_resources() fails in rproc_attach() [1 file, +2/-3]
  f4ef928ca5 remoteproc: core: Release rproc->clean_table after rproc_attach() fails [1 file, +1/-0]
  68e58f5791 PCI: dwc: ep: Correct PBA offset in .set_msix() callback [1 file, +3/-2]
  b20701d594 PCI: Add ACS quirk for Loongson PCIe [1 file, +23/-0]
  be0cf75cbd PCI: Fix lock symmetry in pci_slot_unlock() [1 file, +2/-1]
  7b45d2401d clocksource: Fix the CPUs' choice in the watchdog per CPU verification [1 file, +1/-1]
  c05aba32a9 ACPICA: Avoid sequence overread in call to strncmp() [1 file, +1/-1]
  66613b13cd ACPI: Add missing prototype for non CONFIG_SUSPEND/CONFIG_X86 case [1 file, +8/-1]
  33cd650d38 pmdomain: core: Reset genpd->states to avoid freeing invalid data [1 file, +3/-1]
  f34e0c1556 platform-msi: Add msi_remove_device_irq_domain() in platform_device_msi_free_irqs_all() [1 file, +1/-0]
  c519f81e9c gpiolib: of: Add polarity quirk for s5m8767 [1 file, +9/-0]
  1f152ae557 PM: runtime: fix denying of auto suspend in pm_suspend_timer_fn() [1 file, +1/-1]
  6c1151d53c tipc: use kfree_sensitive() for aead cleanup [1 file, +1/-1]
  b0e647442c f2fs: use vmalloc instead of kvmalloc in .init_{,de}compress_ctx [2 files, +15/-13]
  2d834477bb bpf: Check rcu_read_lock_trace_held() in bpf_map_lookup_percpu_elem() [1 file, +2/-1]
  77ff6aec7c cpufreq: scmi: Skip SCMI devices that aren't used by the CPUs [1 file, +35/-1]
  0a8446058c tcp: always seek for minimal rtt in tcp_rcv_rtt_update() [1 file, +8/-14]
  f97085d365 tcp: remove zero TCP TS samples for autotuning [1 file, +5/-5]
  89b20c406e tcp: fix initial tp->rcvq_space.space value for passive TS enabled flows [1 file, +3/-3]
  84c156a351 tcp: add receive queue awareness in tcp_rcv_space_adjust() [2 files, +5/-3]
  3a9e74d158 ipv4/route: Use this_cpu_inc() for stats on PREEMPT_RT [1 file, +4/-0]
  5eb9c50e0c net: page_pool: Don't recycle into cache on PREEMPT_RT [1 file, +4/-0]
  8b0741b167 xfrm: validate assignment of maximal possible SEQ number [1 file, +42/-10]
  8fdf2f79eb bpf: Pass the same orig_call value to trampoline functions [1 file, +1/-1]
  f0023d7a2a f2fs: fix to bail out in get_new_segment() [2 files, +6/-1]
  448dc45eea bpf: Use proper type to calculate bpf_raw_tp_null_args.mask index [1 file, +2/-2]
  78f768e36c net: bridge: mcast: re-implement br_multicast_{enable, disable}_port functions [1 file, +69/-8]
  4b3383110b software node: Correct a OOB check in software_node_get_reference_args() [1 file, +1/-1]
  b7129ef57d sock: Correct error checking condition for (assign|release)_proto_idx() [1 file, +2/-2]
  a58f0a0e99 f2fs: fix to set atomic write status more clear [3 files, +12/-2]
  b8b4b8bb34 bpf, sockmap: Fix data lost during EAGAIN retries [1 file, +2/-1]
  7c41f73b64 fs/xattr.c: fix simple_xattr_list() [1 file, +1/-0]
  2e10dc9c2a io_uring/kbuf: don't truncate end buffer for multiple buffer peeks [1 file, +4/-1]
  1a4254ab06 io_uring: fix task leak issue in io_wq_create() [1 file, +3/-1]
  4220cc0b98 nvme: always punt polled uring_cmd end_io work to task_work [1 file, +7/-14]
  f9b97d466e net_sched: sch_sfq: reject invalid perturb period [1 file, +8/-2]
  2a3ad42a57 net: clear the dst when changing skb protocol [1 file, +13/-6]
  510a29d776 mm: close theoretical race where stale TLB entries could linger [1 file, +2/-0]
  57ec081869 sched_ext, sched/core: Don't call scx_group_set_weight() prematurely from sched_create_group() [3 files, +9/-2]
  3d828519bd atm: Revert atm_account_tx() if copy_from_iter_full() fails. [3 files, +8/-1]
  47f34289d1 arm64: Restrict pagetable teardown to avoid false warning [1 file, +2/-1]
  9cf5b2a3b7 mm/hugetlb: unshare page tables during VMA split, not before [5 files, +57/-16]
  dc5f0aef9e net: Fix checksum update for ILA adj-transport [4 files, +7/-7]
  2516299184 bpf: Fix L4 csum update on IPv6 in CHECKSUM_COMPLETE [3 files, +7/-2]
  50189d9c5e erofs: remove unused trace event erofs_destroy_inode [1 file, +0/-18]
  348e541fef ipv6: remove leftover ip6 cookie initializer [1 file, +0/-2]
  3c44ebad5a ipv6: replace ipcm6_init calls with ipcm6_init_sk [4 files, +3/-29]
  6b358b3adf io_uring/sqpoll: don't put task_struct on tctx setup failure [1 file, +1/-4]
  8873080b88 workqueue: Initialize wq_isolated_cpumask in workqueue_init_early() [1 file, +2/-1]
  ac462a75fd net: netmem: fix skb_ensure_writable with unreadable skbs [1 file, +0/-3]
  61b39e189d ptp: allow reading of currently dialed frequency to succeed on free-running clocks [1 file, +2/-1]
  397c1faf8f tcp: fix tcp_packet_delayed() for tcp_is_non_sack_preventing_reopen() behavior [1 file, +25/-12]
  0d3d91c350 tipc: fix null-ptr-deref when acquiring remote ip of ethernet bearer [1 file, +2/-2]
  31d50dfe9c tcp: fix passive TFO socket having invalid NAPI ID [1 file, +3/-0]
  0f8df5d6f2 ublk: santizize the arguments from userspace when adding a device [1 file, +3/-0]
  456019adaa perf: Fix sample vs do_exit() [2 files, +16/-8]
  7335c33d62 perf: Fix cgroup state vs ERROR [1 file, +30/-21]
  fd199366bf perf/core: Fix WARN in perf_cgroup_switch() [1 file, +20/-2]
  22f935bc86 arm64/ptrace: Fix stack-out-of-bounds read in regs_get_kernel_stack_nth() [1 file, +1/-1]

Changes in 6.12.35
	configfs: Do not override creating attribute file failure in populate_attrs()
	crypto: marvell/cesa - Do not chain submitted requests
	gfs2: move msleep to sleepable context
	crypto: qat - add shutdown handler to qat_c3xxx
	crypto: qat - add shutdown handler to qat_420xx
	crypto: qat - add shutdown handler to qat_4xxx
	crypto: qat - add shutdown handler to qat_c62x
	crypto: qat - add shutdown handler to qat_dh895xcc
	ASoC: qcom: sdm845: Add error handling in sdm845_slim_snd_hw_params()
	ASoC: meson: meson-card-utils: use of_property_present() for DT parsing
	ASoC: amd: sof_amd_sdw: Fix unlikely uninitialized variable use in create_sdw_dailinks()
	io_uring: account drain memory to cgroup
	io_uring/kbuf: account ring io_buffer_list memory
	powerpc/pseries/msi: Avoid reading PCI device registers in reduced power states
	s390/pci: Remove redundant bus removal and disable from zpci_release_device()
	s390/pci: Prevent self deletion in disable_slot()
	s390/pci: Allow re-add of a reserved but not yet removed device
	s390/pci: Serialize device addition and removal
	regulator: max20086: Fix MAX200086 chip id
	regulator: max20086: Change enable gpio to optional
	net/mlx5_core: Add error handling inmlx5_query_nic_vport_qkey_viol_cntr()
	net/mlx5: Add error handling in mlx5_query_nic_vport_node_guid()
	wifi: p54: prevent buffer-overflow in p54_rx_eeprom_readback()
	wifi: mt76: mt7925: fix host interrupt register initialization
	wifi: ath11k: fix rx completion meta data corruption
	wifi: rtw88: usb: Upload the firmware in bigger chunks
	wifi: ath11k: fix ring-buffer corruption
	NFSD: unregister filesystem in case genl_register_family() fails
	NFSD: fix race between nfsd registration and exports_proc
	NFSD: Implement FATTR4_CLONE_BLKSIZE attribute
	nfsd: nfsd4_spo_must_allow() must check this is a v4 compound request
	nfsd: Initialize ssc before laundromat_work to prevent NULL dereference
	SUNRPC: Prevent hang on NFS mount with xprtsec=[m]tls
	NFSv4: Don't check for OPEN feature support in v4.1
	fs/nfs/read: fix double-unlock bug in nfs_return_empty_folio()
	wifi: ath12k: fix ring-buffer corruption
	jbd2: fix data-race and null-ptr-deref in jbd2_journal_dirty_metadata()
	svcrdma: Unregister the device if svc_rdma_accept() fails
	wifi: rtw88: usb: Reduce control message timeout to 500 ms
	wifi: rtlwifi: disable ASPM for RTL8723BE with subsystem ID 11ad:1723
	media: ov8856: suppress probe deferral errors
	media: ov5675: suppress probe deferral errors
	media: imx335: Use correct register width for HNUM
	media: nxp: imx8-isi: better handle the m2m usage_count
	media: i2c: ds90ub913: Fix returned fmt from .set_fmt()
	media: ccs-pll: Start VT pre-PLL multiplier search from correct value
	media: ov2740: Move pm-runtime cleanup on probe-errors to proper place
	media: ccs-pll: Start OP pre-PLL multiplier search from correct value
	media: ccs-pll: Correct the upper limit of maximum op_pre_pll_clk_div
	media: ccs-pll: Check for too high VT PLL multiplier in dual PLL case
	media: cxusb: no longer judge rbuf when the write fails
	media: davinci: vpif: Fix memory leak in probe error path
	media: gspca: Add error handling for stv06xx_read_sensor()
	media: i2c: imx335: Fix frame size enumeration
	media: imagination: fix a potential memory leak in e5010_probe()
	media: intel/ipu6: Fix dma mask for non-secure mode
	media: ipu6: Remove workaround for Meteor Lake ES2
	media: mediatek: vcodec: Correct vsi_core framebuffer size
	media: omap3isp: use sgtable-based scatterlist wrappers
	media: v4l2-dev: fix error handling in __video_register_device()
	media: venus: Fix probe error handling
	media: videobuf2: use sgtable-based scatterlist wrappers
	media: vidtv: Terminating the subsequent process of initialization failure
	media: vivid: Change the siize of the composing
	media: imx-jpeg: Drop the first error frames
	media: imx-jpeg: Move mxc_jpeg_free_slot_data() ahead
	media: imx-jpeg: Reset slot data pointers when freed
	media: imx-jpeg: Cleanup after an allocation error
	media: uvcvideo: Return the number of processed controls
	media: uvcvideo: Send control events for partial succeeds
	media: uvcvideo: Fix deferred probing error
	arm64/mm: Close theoretical race where stale TLB entry remains valid
	ARM: 9447/1: arm/memremap: fix arch_memremap_can_ram_remap()
	ARM: omap: pmic-cpcap: do not mess around without CPCAP or OMAP4
	ASoC: codecs: wcd9375: Fix double free of regulator supplies
	ASoC: codecs: wcd937x: Drop unused buck_supply
	block: use plug request list tail for one-shot backmerge attempt
	block: Clear BIO_EMULATES_ZONE_APPEND flag on BIO completion
	bus: mhi: ep: Update read pointer only after buffer is written
	bus: mhi: host: Fix conflict between power_up and SYSERR
	can: kvaser_pciefd: refine error prone echo_skb_max handling logic
	can: tcan4x5x: fix power regulator retrieval during probe
	ceph: avoid kernel BUG for encrypted inode with unaligned file size
	ceph: set superblock s_magic for IMA fsmagic matching
	cgroup,freezer: fix incomplete freezing when attaching tasks
	bus: firewall: Fix missing static inline annotations for stubs
	ata: pata_via: Force PIO for ATAPI devices on VT6415/VT6330
	ata: ahci: Disallow LPM for ASUSPRO-D840SA motherboard
	ata: ahci: Disallow LPM for Asus B550-F motherboard
	bus: fsl-mc: do not add a device-link for the UAPI used DPMCP device
	bus: fsl-mc: fix GET/SET_TAILDROP command ids
	ext4: inline: fix len overflow in ext4_prepare_inline_data
	ext4: fix calculation of credits for extent tree modification
	ext4: factor out ext4_get_maxbytes()
	ext4: ensure i_size is smaller than maxbytes
	ext4: only dirty folios when data journaling regular files
	Input: ims-pcu - check record size in ims_pcu_flash_firmware()
	Input: gpio-keys - fix possible concurrent access in gpio_keys_irq_timer()
	f2fs: fix to do sanity check on ino and xnid
	f2fs: prevent kernel warning due to negative i_nlink from corrupted image
	f2fs: fix to do sanity check on sit_bitmap_size
	hwmon: (ftsteutates) Fix TOCTOU race in fts_read()
	NFC: nci: uart: Set tty->disc_data only in success path
	net/sched: fix use-after-free in taprio_dev_notifier
	net: ftgmac100: select FIXED_PHY
	iommu/vt-d: Restore context entry setup order for aliased devices
	fbdev: Fix do_register_framebuffer to prevent null-ptr-deref in fb_videomode_to_var
	EDAC/altera: Use correct write width with the INTTEST register
	fbdev: Fix fb_set_var to prevent null-ptr-deref in fb_videomode_to_var
	parisc/unaligned: Fix hex output to show 8 hex chars
	vgacon: Add check for vc_origin address range in vgacon_scroll()
	parisc: fix building with gcc-15
	clk: meson-g12a: add missing fclk_div2 to spicc
	ipc: fix to protect IPCS lookups using RCU
	watchdog: fix watchdog may detect false positive of softlockup
	RDMA/iwcm: Fix use-after-free of work objects after cm_id destruction
	mm: fix ratelimit_pages update error in dirty_ratio_handler()
	soc: qcom: pmic_glink_altmode: fix spurious DP hotplug events
	configfs-tsm-report: Fix NULL dereference of tsm_ops
	firmware: arm_scmi: Ensure that the message-id supports fastchannel
	mtd: rawnand: sunxi: Add randomizer configuration in sunxi_nfc_hw_ecc_write_chunk
	mtd: nand: sunxi: Add randomizer configuration before randomizer enable
	KVM: SVM: Clear current_vmcb during vCPU free for all *possible* CPUs
	KVM: VMX: Flush shadow VMCS on emergency reboot
	dm-mirror: fix a tiny race condition
	dm-verity: fix a memory leak if some arguments are specified multiple times
	mtd: rawnand: qcom: Fix read len for onfi param page
	ftrace: Fix UAF when lookup kallsym after ftrace disabled
	dm: lock limits when reading them
	phy: fsl-imx8mq-usb: fix phy_tx_vboost_level_from_property()
	net: ch9200: fix uninitialised access during mii_nway_restart
	KVM: s390: rename PROT_NONE to PROT_TYPE_DUMMY
	sysfb: Fix screen_info type check for VGA
	video: screen_info: Relocate framebuffers behind PCI bridges
	pwm: axi-pwmgen: fix missing separate external clock
	staging: iio: ad5933: Correct settling cycles encoding per datasheet
	mips: Add -std= flag specified in KBUILD_CFLAGS to vdso CFLAGS
	ovl: Fix nested backing file paths
	regulator: max14577: Add error check for max14577_read_reg()
	remoteproc: core: Cleanup acquired resources when rproc_handle_resources() fails in rproc_attach()
	remoteproc: core: Release rproc->clean_table after rproc_attach() fails
	remoteproc: k3-m4: Don't assert reset in detach routine
	cifs: reset connections for all channels when reconnect requested
	cifs: update dstaddr whenever channel iface is updated
	cifs: dns resolution is needed only for primary channel
	smb: client: add NULL check in automount_fullpath
	Drivers: hv: Allocate interrupt and monitor pages aligned to system page boundary
	uio_hv_generic: Use correct size for interrupt and monitor pages
	uio_hv_generic: Align ring size to system page
	PCI: cadence-ep: Correct PBA offset in .set_msix() callback
	PCI: dwc: ep: Correct PBA offset in .set_msix() callback
	PCI: Add ACS quirk for Loongson PCIe
	PCI: Fix lock symmetry in pci_slot_unlock()
	PCI: dw-rockchip: Remove PCIE_L0S_ENTRY check from rockchip_pcie_link_up()
	PCI: dw-rockchip: Fix PHY function call sequence in rockchip_pcie_phy_deinit()
	iio: accel: fxls8962af: Fix temperature scan element sign
	accel/ivpu: Improve buffer object logging
	accel/ivpu: Use firmware names from upstream repo
	accel/ivpu: Use dma_resv_lock() instead of a custom mutex
	accel/ivpu: Fix warning in ivpu_gem_bo_free()
	dummycon: Trigger redraw when switching consoles with deferred takeover
	mm/hugetlb: fix huge_pmd_unshare() vs GUP-fast race
	iio: imu: inv_icm42600: Fix temperature calculation
	iio: adc: ad7944: mask high bits on direct read
	iio: adc: ti-ads1298: Kconfig: add kfifo dependency to fix module build
	iio: adc: ad7606_spi: fix reg write value mask
	ACPICA: fix acpi operand cache leak in dswstate.c
	ASoC: amd: yc: Add quirk for Lenovo Yoga Pro 7 14ASP9
	clocksource: Fix the CPUs' choice in the watchdog per CPU verification
	power: supply: collie: Fix wakeup source leaks on device unbind
	mmc: Add quirk to disable DDR50 tuning
	ACPICA: Avoid sequence overread in call to strncmp()
	ASoC: tas2770: Power cycle amp on ISENSE/VSENSE change
	ASoC: intel/sdw_utils: Assign initial value in asoc_sdw_rt_amp_spk_rtd_init()
	ACPI: bus: Bail out if acpi_kobj registration fails
	ACPI: Add missing prototype for non CONFIG_SUSPEND/CONFIG_X86 case
	ACPICA: fix acpi parse and parseext cache leaks
	ACPICA: Apply pack(1) to union aml_resource
	ALSA: hda: cs35l41: Fix swapped l/r audio channels for Acer Helios laptops
	power: supply: bq27xxx: Retrieve again when busy
	pmdomain: core: Reset genpd->states to avoid freeing invalid data
	ACPICA: utilities: Fix overflow check in vsnprintf()
	platform-msi: Add msi_remove_device_irq_domain() in platform_device_msi_free_irqs_all()
	ASoC: tegra210_ahub: Add check to of_device_get_match_data()
	Make 'cc-option' work correctly for the -Wno-xyzzy pattern
	gpiolib: of: Add polarity quirk for s5m8767
	PM: runtime: fix denying of auto suspend in pm_suspend_timer_fn()
	power: supply: max17040: adjust thermal channel scaling
	ACPI: battery: negate current when discharging
	net: macb: Check return value of dma_set_mask_and_coherent()
	net: lan743x: Modify the EEPROM and OTP size for PCI1xxxx devices
	tipc: use kfree_sensitive() for aead cleanup
	f2fs: use vmalloc instead of kvmalloc in .init_{,de}compress_ctx
	bpf: Check rcu_read_lock_trace_held() in bpf_map_lookup_percpu_elem()
	Bluetooth: btusb: Add new VID/PID 13d3/3584 for MT7922
	i2c: designware: Invoke runtime suspend on quick slave re-registration
	wifi: mt76: mt7996: drop fragments with multicast or broadcast RA
	emulex/benet: correct command version selection in be_cmd_get_stats()
	Bluetooth: btusb: Add new VID/PID 13d3/3630 for MT7925
	wifi: mt76: mt76x2: Add support for LiteOn WN4516R,WN4519R
	wifi: mt76: mt7921: add 160 MHz AP for mt7922 device
	wifi: mt76: mt7925: introduce thermal protection
	wifi: mac80211: validate SCAN_FLAG_AP in scan request during MLO
	sctp: Do not wake readers in __sctp_write_space()
	libbpf/btf: Fix string handling to support multi-split BTF
	cpufreq: scmi: Skip SCMI devices that aren't used by the CPUs
	i2c: tegra: check msg length in SMBUS block read
	i2c: npcm: Add clock toggle recovery
	clk: qcom: gcc-x1e80100: Set FORCE MEM CORE for UFS clocks
	net: dlink: add synchronization for stats update
	wifi: ath12k: fix macro definition HAL_RX_MSDU_PKT_LENGTH_GET
	wifi: ath12k: fix a possible dead lock caused by ab->base_lock
	wifi: ath11k: Fix QMI memory reuse logic
	iommu/amd: Allow matching ACPI HID devices without matching UIDs
	wifi: rtw89: leave idle mode when setting WEP encryption for AP mode
	tcp: always seek for minimal rtt in tcp_rcv_rtt_update()
	tcp: remove zero TCP TS samples for autotuning
	tcp: fix initial tp->rcvq_space.space value for passive TS enabled flows
	tcp: add receive queue awareness in tcp_rcv_space_adjust()
	x86/sgx: Prevent attempts to reclaim poisoned pages
	ipv4/route: Use this_cpu_inc() for stats on PREEMPT_RT
	net: page_pool: Don't recycle into cache on PREEMPT_RT
	xfrm: validate assignment of maximal possible SEQ number
	net: atlantic: generate software timestamp just before the doorbell
	pinctrl: armada-37xx: propagate error from armada_37xx_pmx_set_by_name()
	pinctrl: armada-37xx: propagate error from armada_37xx_gpio_get_direction()
	bpf: Pass the same orig_call value to trampoline functions
	net: stmmac: generate software timestamp just before the doorbell
	pinctrl: armada-37xx: propagate error from armada_37xx_pmx_gpio_set_direction()
	libbpf: Check bpf_map_skeleton link for NULL
	pinctrl: armada-37xx: propagate error from armada_37xx_gpio_get()
	net: mlx4: add SOF_TIMESTAMPING_TX_SOFTWARE flag when getting ts info
	net: vertexcom: mse102x: Return code for mse102x_rx_pkt_spi
	wireless: purelifi: plfxlc: fix memory leak in plfxlc_usb_wreq_asyn()
	wifi: mac80211: do not offer a mesh path if forwarding is disabled
	clk: rockchip: rk3036: mark ddrphy as critical
	hid-asus: check ROG Ally MCU version and warn
	wifi: iwlwifi: mvm: fix beacon CCK flag
	f2fs: fix to bail out in get_new_segment()
	netfilter: nft_set_pipapo: clamp maximum map bucket size to INT_MAX
	libbpf: Add identical pointer detection to btf_dedup_is_equiv()
	scsi: lpfc: Fix lpfc_check_sli_ndlp() handling for GEN_REQUEST64 commands
	scsi: smartpqi: Add new PCI IDs
	iommu/amd: Ensure GA log notifier callbacks finish running before module unload
	wifi: iwlwifi: pcie: make sure to lock rxq->read
	wifi: rtw89: 8922a: fix TX fail with wrong VCO setting
	wifi: mac80211_hwsim: Prevent tsf from setting if beacon is disabled
	netdevsim: Mark NAPI ID on skb in nsim_rcv
	net/mlx5: HWS, Fix IP version decision
	bpf: Use proper type to calculate bpf_raw_tp_null_args.mask index
	wifi: mac80211: VLAN traffic in multicast path
	Revert "mac80211: Dynamically set CoDel parameters per station"
	wifi: iwlwifi: Add missing MODULE_FIRMWARE for Qu-c0-jf-b0
	net: bridge: mcast: update multicast contex when vlan state is changed
	net: bridge: mcast: re-implement br_multicast_{enable, disable}_port functions
	vxlan: Do not treat dst cache initialization errors as fatal
	bnxt_en: Remove unused field "ref_count" in struct bnxt_ulp
	wifi: ath12k: using msdu end descriptor to check for rx multicast packets
	net: ethernet: ti: am65-cpsw: handle -EPROBE_DEFER
	software node: Correct a OOB check in software_node_get_reference_args()
	isofs: fix Y2038 and Y2156 issues in Rock Ridge TF entry
	pinctrl: mcp23s08: Reset all pins to input at probe
	wifi: ath12k: fix failed to set mhi state error during reboot with hardware grouping
	scsi: lpfc: Use memcpy() for BIOS version
	sock: Correct error checking condition for (assign|release)_proto_idx()
	i40e: fix MMIO write access to an invalid page in i40e_clear_hw
	ixgbe: Fix unreachable retry logic in combined and byte I2C write functions
	RDMA/hns: initialize db in update_srq_db()
	ice: fix check for existing switch rule
	usbnet: asix AX88772: leave the carrier control to phylink
	f2fs: fix to set atomic write status more clear
	bpf, sockmap: Fix data lost during EAGAIN retries
	net: ethernet: cortina: Use TOE/TSO on all TCP
	octeontx2-pf: Add error log forcn10k_map_unmap_rq_policer()
	wifi: ath11k: determine PM policy based on machine model
	wifi: ath12k: fix link valid field initialization in the monitor Rx
	wifi: ath12k: fix incorrect CE addresses
	wifi: ath12k: Pass correct values of center freq1 and center freq2 for 160 MHz
	net/mlx5: HWS, Harden IP version definer checks
	fbcon: Make sure modelist not set on unregistered console
	watchdog: da9052_wdt: respect TWDMIN
	bus: fsl-mc: increase MC_CMD_COMPLETION_TIMEOUT_MS value
	ARM: OMAP2+: Fix l4ls clk domain handling in STANDBY
	tee: Prevent size calculation wraparound on 32-bit kernels
	Revert "bus: ti-sysc: Probe for l4_wkup and l4_cfg interconnect devices first"
	fs/xattr.c: fix simple_xattr_list()
	platform/x86/amd: pmc: Clear metrics table at start of cycle
	platform/x86/amd: pmf: Prevent amd_pmf_tee_deinit() from running twice
	platform/x86: dell_rbu: Fix list usage
	platform/x86: dell_rbu: Stop overwriting data buffer
	powerpc/vdso: Fix build of VDSO32 with pcrel
	powerpc/eeh: Fix missing PE bridge reconfiguration during VFIO EEH recovery
	io_uring/kbuf: don't truncate end buffer for multiple buffer peeks
	io_uring: fix task leak issue in io_wq_create()
	drivers/rapidio/rio_cm.c: prevent possible heap overwrite
	platform/loongarch: laptop: Get brightness setting from EC on probe
	platform/loongarch: laptop: Unregister generic_sub_drivers on exit
	platform/loongarch: laptop: Add backlight power control support
	LoongArch: vDSO: Correctly use asm parameters in syscall wrappers
	LoongArch: Avoid using $r0/$r1 as "mask" for csrxchg
	LoongArch: Fix panic caused by NULL-PMD in huge_pte_offset()
	jffs2: check that raw node were preallocated before writing summary
	jffs2: check jffs2_prealloc_raw_node_refs() result in few other places
	cifs: deal with the channel loading lag while picking channels
	cifs: serialize other channels when query server interfaces is pending
	cifs: do not disable interface polling on failure
	smb: improve directory cache reuse for readdir operations
	scsi: storvsc: Increase the timeouts to storvsc_timeout
	scsi: s390: zfcp: Ensure synchronous unit_add
	nvme: always punt polled uring_cmd end_io work to task_work
	net_sched: sch_sfq: reject invalid perturb period
	net: clear the dst when changing skb protocol
	mm: close theoretical race where stale TLB entries could linger
	udmabuf: use sgtable-based scatterlist wrappers
	x86/virt/tdx: Avoid indirect calls to TDX assembly functions
	selftests/x86: Add a test to detect infinite SIGTRAP handler loop
	ksmbd: fix null pointer dereference in destroy_previous_session
	platform/x86: ideapad-laptop: use usleep_range() for EC polling
	selinux: fix selinux_xfrm_alloc_user() to set correct ctx_len
	platform/x86/intel-uncore-freq: Fail module load when plat_info is NULL
	sched_ext, sched/core: Don't call scx_group_set_weight() prematurely from sched_create_group()
	atm: Revert atm_account_tx() if copy_from_iter_full() fails.
	wifi: rtw89: phy: add dummy C2H event handler for report of TAS power
	cpufreq/amd-pstate: Add missing NULL ptr check in amd_pstate_update
	Input: sparcspkr - avoid unannotated fall-through
	wifi: ath12k: Clear affinity hint before calling ath12k_pci_free_irq() in error path
	wifi: cfg80211: init wiphy_work before allocating rfkill fails
	arm64: Restrict pagetable teardown to avoid false warning
	ALSA: usb-audio: Rename ALSA kcontrol PCM and PCM1 for the KTMicro sound card
	ALSA: hda/intel: Add Thinkpad E15 to PM deny list
	ALSA: hda/realtek - Add mute LED support for HP Victus 16-s1xxx and HP Victus 15-fa1xxx
	ALSA: hda/realtek: enable headset mic on Latitude 5420 Rugged
	ALSA: hda/realtek: Fix built-in mic on ASUS VivoBook X513EA
	ALSA: hda/realtek: Add quirk for Asus GU605C
	iio: accel: fxls8962af: Fix temperature calculation
	mm/hugetlb: unshare page tables during VMA split, not before
	drm/amdgpu: read back register after written for VCN v4.0.5
	kbuild: rust: add rustc-min-version support function
	rust: compile libcore with edition 2024 for 1.87+
	net: Fix checksum update for ILA adj-transport
	bpf: Fix L4 csum update on IPv6 in CHECKSUM_COMPLETE
	erofs: remove unused trace event erofs_destroy_inode
	nfsd: use threads array as-is in netlink interface
	sunrpc: handle SVC_GARBAGE during svc auth processing as auth error
	drm/v3d: Avoid NULL pointer dereference in `v3d_job_update_stats()`
	Kunit to check the longest symbol length
	x86/tools: Drop duplicate unlikely() definition in insn_decoder_test.c
	ipv6: remove leftover ip6 cookie initializer
	ipv6: replace ipcm6_init calls with ipcm6_init_sk
	smb: fix secondary channel creation issue with kerberos by populating hostname when adding channels
	drm/msm/disp: Correct porch timing for SDM845
	drm/msm/dsi/dsi_phy_10nm: Fix missing initial VCO rate
	drm/msm: Fix CP_RESET_CONTEXT_STATE bitfield names
	drm/msm/a7xx: Call CP_RESET_CONTEXT_STATE
	drm/ssd130x: fix ssd132x_clear_screen() columns
	ionic: Prevent driver/fw getting out of sync on devcmd(s)
	drm/nouveau/bl: increase buffer size to avoid truncate warning
	drm/i915/pmu: Fix build error with GCOV and AutoFDO enabled
	hwmon: (occ) Rework attribute registration for stack usage
	hwmon: (occ) fix unaligned accesses
	hwmon: (ltc4282) avoid repeated register write
	pldmfw: Select CRC32 when PLDMFW is selected
	aoe: clean device rq_list in aoedev_downdev()
	io_uring/sqpoll: don't put task_struct on tctx setup failure
	net: ice: Perform accurate aRFS flow match
	ice: fix eswitch code memory leak in reset scenario
	e1000e: set fixed clock frequency indication for Nahum 11 and Nahum 13
	workqueue: Initialize wq_isolated_cpumask in workqueue_init_early()
	ksmbd: add free_transport ops in ksmbd connection
	net: netmem: fix skb_ensure_writable with unreadable skbs
	bnxt_en: Fix double invocation of bnxt_ulp_stop()/bnxt_ulp_start()
	eth: bnxt: fix out-of-range access of vnic_info array
	bnxt_en: Add a helper function to configure MRU and RSS
	bnxt_en: Update MRU and RSS table of RSS contexts on queue reset
	ptp: fix breakage after ptp_vclock_in_use() rework
	ptp: allow reading of currently dialed frequency to succeed on free-running clocks
	wifi: carl9170: do not ping device which has failed to load firmware
	mpls: Use rcu_dereference_rtnl() in mpls_route_input_rcu().
	atm: atmtcp: Free invalid length skb in atmtcp_c_send().
	tcp: fix tcp_packet_delayed() for tcp_is_non_sack_preventing_reopen() behavior
	tipc: fix null-ptr-deref when acquiring remote ip of ethernet bearer
	tcp: fix passive TFO socket having invalid NAPI ID
	eth: fbnic: avoid double free when failing to DMA-map FW msg
	net: lan743x: fix potential out-of-bounds write in lan743x_ptp_io_event_clock_get()
	ublk: santizize the arguments from userspace when adding a device
	drm/xe: Wire up device shutdown handler
	drm/xe/gt: Update handling of xe_force_wake_get return
	drm/xe/bmg: Update Wa_16023588340
	calipso: Fix null-ptr-deref in calipso_req_{set,del}attr().
	mlxbf_gige: return EPROBE_DEFER if PHY IRQ is not available
	net: atm: add lec_mutex
	net: atm: fix /proc/net/atm/lec handling
	EDAC/amd64: Correct number of UMCs for family 19h models 70h-7fh
	dt-bindings: i2c: nvidia,tegra20-i2c: Specify the required properties
	smb: Log an error when close_all_cached_dirs fails
	serial: sh-sci: Clean sci_ports[0] after at earlycon exit
	serial: sh-sci: Increment the runtime usage counter for the earlycon device
	smb: client: fix first command failure during re-negotiation
	smb: client: fix max_sge overflow in smb_extract_folioq_to_rdma()
	s390/pci: Fix __pcilg_mio_inuser() inline assembly
	perf: Fix sample vs do_exit()
	perf: Fix cgroup state vs ERROR
	perf/core: Fix WARN in perf_cgroup_switch()
	arm64/ptrace: Fix stack-out-of-bounds read in regs_get_kernel_stack_nth()
	scsi: elx: efct: Fix memory leak in efct_hw_parse_filter()
	RISC-V: KVM: Fix the size parameter check in SBI SFENCE calls
	RISC-V: KVM: Don't treat SBI HFENCE calls as NOPs
	gpio: pca953x: fix wrong error probe return value
	perf evsel: Missed close() when probing hybrid core PMUs
	perf test: Directory file descriptor leak
	gpio: mlxbf3: only get IRQ for device instance 0
	cifs: Remove duplicate fattr->cf_dtype assignment from wsl_to_fattr() function
	bpftool: Fix cgroup command to only show cgroup bpf programs
	Linux 6.12.35

Change-Id: Ida57d269272a624bedb979bfad0b3c5e7df7e846
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-07-10 16:01:38 +00:00
Simon Xue 53892dc686 iommu/rockchip: prevent iommus dead loop when two masters share one IOMMU
commit 62e062a29ad5133f67c20b333ba0a952a99161ae upstream.

When two masters share an IOMMU, calling ops->of_xlate during
the second master's driver init may overwrite iommu->domain set
by the first. This causes the check if (iommu->domain == domain)
in rk_iommu_attach_device() to fail, resulting in the same
iommu->node being added twice to &rk_domain->iommus, which can
lead to an infinite loop in subsequent &rk_domain->iommus operations.

Cc: <stable@vger.kernel.org>
Fixes: 25c2325575 ("iommu/rockchip: Add missing set_platform_dma_ops callback")
Signed-off-by: Simon Xue <xxm@rock-chips.com>
Reviewed-by: Robin Murphy <robin.murphy@arm.com>
Link: https://lore.kernel.org/r/20250623020018.584802-1-xxm@rock-chips.com
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-07-10 16:05:12 +02:00
Arnd Bergmann 81fdecac3f iommu: ipmmu-vmsa: avoid Wformat-security warning
[ Upstream commit 33647d0be323f9e2f27cd1e86de5cfd965cec654 ]

iommu_device_sysfs_add() requires a constant format string, otherwise
a W=1 build produces a warning:

drivers/iommu/ipmmu-vmsa.c:1093:62: error: format string is not a string literal (potentially insecure) [-Werror,-Wformat-security]
 1093 |         ret = iommu_device_sysfs_add(&mmu->iommu, &pdev->dev, NULL, dev_name(&pdev->dev));
      |                                                                     ^~~~~~~~~~~~~~~~~~~~
drivers/iommu/ipmmu-vmsa.c:1093:62: note: treat the string as an argument to avoid this
 1093 |         ret = iommu_device_sysfs_add(&mmu->iommu, &pdev->dev, NULL, dev_name(&pdev->dev));
      |                                                                     ^
      |                                                                     "%s",

This was an old bug but I saw it now because the code was changed as part
of commit d9d3cede4167 ("iommu/ipmmu-vmsa: Register in a sensible order").

Fixes: 7af9a5fdb9 ("iommu/ipmmu-vmsa: Use iommu_device_sysfs_add()/remove()")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Link: https://lore.kernel.org/r/20250423164006.2661372-1-arnd@kernel.org
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-07-10 16:04:59 +02:00
Ryan Huang 672185e575 ANDROID: iommu/iommu: Handle multi-page deferred sg mappings
The `__iommu_add_sg` function currently assumes that a scatter-gather
entry will always map to a single page size. However, a single
scatter-gather entry can span multiple IOMMU page sizes if there is
a larger page size mapping. This can lead to issues with deferred
scatter-gather mappings.

This patch modifies `__iommu_add_sg` to iteratively call
`ops->add_deferred_map_sg` for each IOMMU page-sized chunk within a
scatter-gather entry, ensuring that all parts of the entry are
correctly handled for deferred mappings.

Fixes: 1a608d2b0d ("BACKPORT: FROMLIST: drivers/iommu: Add deferred map_sg operations")
Change-Id: I2d2edbd5fa3d37c0b1e4a9976824b77a9ef39676
Signed-off-by: Ryan Huang <tzukui@google.com>
Signed-off-by: Mostafa Saleh <smostafa@google.com>
2025-07-10 02:38:29 -07:00
Daniel Mentz 61184996a8 ANDROID: drivers/iommu: Fix return value in iommu_map_sg
Probably due to a typo, iommu_map_sg() previously returned EINVAL
instead of -EINVAL under certain conditions.

Fixes: 1a608d2b0d ("BACKPORT: FROMLIST: drivers/iommu: Add deferred map_sg operations")
Change-Id: I1458104f6d9c570443014afffa115df98080d9d8
Signed-off-by: Daniel Mentz <danielmentz@google.com>
2025-07-09 00:41:12 -07:00
Greg Kroah-Hartman e5ead1ec40 Merge 48ca7139ab ("cifs: Fix validation of SMB1 query reparse point response") into android16-6.12-lts
Steps on the way to 6.12.34

Resolves merge conflicts in:
	kernel/sched/core.c
	net/netfilter/xt_mark.c

Change-Id: I6df5e27c2a5bfa8b077b1f2814ad98b2a3dc0877
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-07-04 07:05:22 +00:00
Mostafa Saleh 5913c80b22 ANDROID: iommu/arm-smmu-v3-kvm: Fix idmap free_leaf
As at the moment we don't support page table coalescing, it is possible
to call free_leaf while mapping a THP for a guest.
This should do nothing as the identity mapped page table doesn't
do any tracking of pages in the vmemmap.

Bug: 421734292
Change-Id: I436b9839643f8a4a76035bd2fa1e273d64456690
Signed-off-by: Mostafa Saleh <smostafa@google.com>
2025-07-02 04:08:01 -07:00
Greg Kroah-Hartman 5035b6dea6 Revert "genirq/msi: Store the IOMMU IOVA directly in msi_desc instead of iommu_cookie"
This reverts commit 53f42776e4 which is
commit 1f7df3a691740a7736bbc99dc4ed536120eb4746 upstream.

It breaks the Android kernel abi and can be brought back in the future
in an abi-safe way if it is really needed.

Bug: 161946584
Change-Id: I6cc1f1a93d322e461655a8ce36e090d235de7646
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-07-02 07:09:28 +00:00
Greg Kroah-Hartman fcc21a6112 Merge 11c7fa11fa ("net: stmmac: dwmac-loongson: Set correct {tx,rx}_fifo_size") into android16-6.12-lts
Steps on the way to 6.12.31

Resolves merge conflicts in:
	kernel/sched/fair.c

Change-Id: I545f90ce44822f1a0f940be224258533b6581077
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-07-02 07:08:57 +00:00
Greg Kroah-Hartman 05cc417ff3 Merge 0d508cefcd ("vdpa/mlx5: Fix mlx5_vdpa_get_config() endianness on big-endian machines") into android16-6.12-lts
Steps on the way to 6.12.31

Resolves merge conflicts in:
	drivers/media/usb/uvc/uvc_ctrl.c

Change-Id: I663a7a27e554e5a9d426532ff17f7dffc9619d22
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-07-02 07:03:57 +00:00
Greg Kroah-Hartman 108d81d25c Merge cd918ec241 ("orangefs: Do not truncate file size") into android16-6.12-lts
Steps on the way to 6.12.31

Change-Id: Ic4b1ed54cab9844c75f4824bb7ac3f28e37b3eb7
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-06-30 08:35:56 +00:00
Sean Christopherson 91ef6a1527 iommu/amd: Ensure GA log notifier callbacks finish running before module unload
[ Upstream commit 94c721ea03c7078163f41dbaa101ac721ddac329 ]

Synchronize RCU when unregistering KVM's GA log notifier to ensure all
in-flight interrupt handlers complete before KVM-the module is unloaded.

Signed-off-by: Sean Christopherson <seanjc@google.com>
Link: https://lore.kernel.org/r/20250315031048.2374109-1-seanjc@google.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-06-27 11:11:32 +01:00
Mario Limonciello 3cb5d934e0 iommu/amd: Allow matching ACPI HID devices without matching UIDs
[ Upstream commit 51c33f333bbf7bdb6aa2a327e3a3e4bbb2591511 ]

A BIOS upgrade has changed the IVRS DTE UID for a device that no
longer matches the UID in the SSDT. In this case there is only
one ACPI device on the system with that _HID but the _UID mismatch.

IVRS:
```
              Subtable Type : F0 [Device Entry: ACPI HID Named Device]
                  Device ID : 0060
Data Setting (decoded below) : 40
                 INITPass : 0
                 EIntPass : 0
                 NMIPass : 0
                 Reserved : 0
                 System MGMT : 0
                 LINT0 Pass : 1
                 LINT1 Pass : 0
                   ACPI HID : "MSFT0201"
                   ACPI CID : 0000000000000000
                 UID Format : 02
                 UID Length : 09
                        UID : "\_SB.MHSP"
```

SSDT:
```
Device (MHSP)
{
    Name (_ADR, Zero)  // _ADR: Address
    Name (_HID, "MSFT0201")  // _HID: Hardware ID
    Name (_UID, One)  // _UID: Unique ID
```

To handle this case; while enumerating ACPI devices in
get_acpihid_device_id() count the number of matching ACPI devices with
a matching _HID. If there is exactly one _HID match then accept it even
if the UID doesn't match. Other operating systems allow this, but the
current IVRS spec leaves some ambiguity whether to allow or disallow it.
This should be clarified in future revisions of the spec. Output
'Firmware Bug' for this case to encourage it to be solved in the BIOS.

Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Reviewed-by: Vasant Hegde <vasant.hegde@amd.com>
Link: https://lore.kernel.org/r/20250512173129.1274275-1-superm1@kernel.org
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-06-27 11:11:30 +01:00
Lu Baolu fb5873b779 iommu/vt-d: Restore context entry setup order for aliased devices
commit 320302baed05c6456164652541f23d2a96522c06 upstream.

Commit 2031c469f8 ("iommu/vt-d: Add support for static identity domain")
changed the context entry setup during domain attachment from a
set-and-check policy to a clear-and-reset approach. This inadvertently
introduced a regression affecting PCI aliased devices behind PCIe-to-PCI
bridges.

Specifically, keyboard and touchpad stopped working on several Apple
Macbooks with below messages:

 kernel: platform pxa2xx-spi.3: Adding to iommu group 20
 kernel: input: Apple SPI Keyboard as
 /devices/pci0000:00/0000:00:1e.3/pxa2xx-spi.3/spi_master/spi2/spi-APP000D:00/input/input0
 kernel: DMAR: DRHD: handling fault status reg 3
 kernel: DMAR: [DMA Read NO_PASID] Request device [00:1e.3] fault addr
 0xffffa000 [fault reason 0x06] PTE Read access is not set
 kernel: DMAR: DRHD: handling fault status reg 3
 kernel: DMAR: [DMA Read NO_PASID] Request device [00:1e.3] fault addr
 0xffffa000 [fault reason 0x06] PTE Read access is not set
 kernel: applespi spi-APP000D:00: Error writing to device: 01 0e 00 00
 kernel: DMAR: DRHD: handling fault status reg 3
 kernel: DMAR: [DMA Read NO_PASID] Request device [00:1e.3] fault addr
 0xffffa000 [fault reason 0x06] PTE Read access is not set
 kernel: DMAR: DRHD: handling fault status reg 3
 kernel: applespi spi-APP000D:00: Error writing to device: 01 0e 00 00

Fix this by restoring the previous context setup order.

Fixes: 2031c469f8 ("iommu/vt-d: Add support for static identity domain")
Closes: https://lore.kernel.org/all/4dada48a-c5dd-4c30-9c85-5b03b0aa01f0@bfh.ch/
Cc: stable@vger.kernel.org
Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Reviewed-by: Yi Liu <yi.l.liu@intel.com>
Link: https://lore.kernel.org/r/20250514060523.2862195-1-baolu.lu@linux.intel.com
Link: https://lore.kernel.org/r/20250520075849.755012-2-baolu.lu@linux.intel.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-06-27 11:11:21 +01:00
Greg Kroah-Hartman 5bf4b91e33 Merge tag 'android16-6.12.30_r00' into android16-6.12
This merges the android16-6.12.30_r00 tag into the android16-6.12 branch,
catching it up with the latest LTS releases.

It contains the following commits:

* 398edeaf7e Merge android16-6.12 into android16-6.12-lts
* 360b34f1a9 FROMGIT: mm: page_alloc: tighten up find_suitable_fallback()
* 4e89551038 UPSTREAM: mm/page_alloc: clarify should_claim_block() commentary
* 2505a76e67 UPSTREAM: mm/page_alloc: clarify terminology in migratetype fallback code
* 9407ed7ee3 BACKPORT: mm: page_alloc: group fallback functions together
* fc396aefad UPSTREAM: mm: page_alloc: remove remnants of unlocked migratetype updates
* f87e594933 UPSTREAM: mm/page_alloc: add some detailed comments in can_steal_fallback
* a3db058b64 Merge android16-6.12 into android16-6.12-lts
* 60eb68c4d8 Revert "virtio_ring: add a func argument 'recycle_done' to virtqueue_reset()"
* 81930ac28a Revert "virtio_net: ensure netdev_tx_reset_queue is called on bind xsk for tx"
*   dba4f359fc Merge 6.12.30 into android16-6.12-lts
|\
| * e0e2f78243 Linux 6.12.30
| * 25e07c8403 drm/amdgpu: fix pm notifier handling
| * 8e7583fb85 phy: tegra: xusb: remove a stray unlock
| * 5924b32446 usb: typec: ucsi: displayport: Fix deadlock
| * bca94cc345 drm/tiny: panel-mipi-dbi: Use drm_client_setup_with_fourcc()
| * 5ed066083f drm/panel-mipi-dbi: Run DRM default client setup
| * 25998ed87f drm/fbdev-dma: Support struct drm_driver.fbdev_probe
| * d22496de50 Bluetooth: btnxpuart: Fix kernel panic during FW release
| * 7ca84f6a22 iio: light: opt3001: fix deadlock due to concurrent flag access
| * 58517eae32 accel/ivpu: Fix fw log printing
| * 0923a7d55a accel/ivpu: Refactor functions in ivpu_fw_log.c
| * 1516c55872 accel/ivpu: Reset fw log on cold boot
| * 1c302f64ea accel/ivpu: Rename ivpu_log_level to fw_log_level
| * 74953f93f4 mm/page_alloc: fix race condition in unaccepted memory handling
| * 260ca2e961 drm/xe/gsc: do not flush the GSC worker from the reset path
| * 6b2d1fbd41 CIFS: New mount option for cifs.upcall namespace resolution
| * 23dc14c52d dmaengine: idxd: Refactor remove call with idxd_cleanup() helper
| * 017d4012dc dmaengine: idxd: fix memory leak in error handling path of idxd_pci_probe
| * 868dbce755 dmaengine: idxd: fix memory leak in error handling path of idxd_alloc
| * 21f9f5cd9a dmaengine: idxd: Add missing idxd cleanup to fix memory leak in remove call
| * e0ba67b10d dmaengine: idxd: Add missing cleanups in cleanup internals
| * 80b0260227 dmaengine: idxd: Add missing cleanup for early error out in idxd_setup_internals
| * 56e2f09083 dmaengine: idxd: fix memory leak in error handling path of idxd_setup_groups
| * 4958737c42 dmaengine: idxd: fix memory leak in error handling path of idxd_setup_engines
| * 5fcd392dae dmaengine: idxd: fix memory leak in error handling path of idxd_setup_wqs
| * 6b5d770e45 dmaengine: ti: k3-udma: Use cap_mask directly from dma_device structure instead of a local copy
| * 26e63b2fe3 dmaengine: ti: k3-udma: Add missing locking
| * fe0756daad mm: userfaultfd: correct dirty flags set for both present and swap pte
| * d005c81665 net: qede: Initialize qede_ll_ops with designated initializer
| * 20d6e621be ring-buffer: Fix persistent buffer when commit page is the reader page
| * 2b81e76db3 wifi: mt76: disable napi on driver removal
| * ec5d9a750e tpm: Mask TPM RC in tpm2_start_auth_session()
| * cac03fecbc spi: tegra114: Use value to check for invalid delays
| * d0df124437 smb: client: fix memory leak during error handling for POSIX mkdir
| * bffc3038a2 scsi: sd_zbc: block: Respect bio vector limits for REPORT ZONES buffer
| * c450f648d0 phy: renesas: rcar-gen3-usb2: Set timing registers only once
| * c78a5693bd phy: renesas: rcar-gen3-usb2: Fix role detection on unbind/bind
| * ed0e7d31d0 phy: Fix error handling in tegra_xusb_port_init
| * 1db527f0cb phy: tegra: xusb: Use a bitmask for UTMI pad power state tracking
| * ce14aa00dd tracing: samples: Initialize trace_array_printk() with the correct function
| * 589c9e66bd ftrace: Fix preemption accounting for stacktrace filter command
| * 7d353da580 ftrace: Fix preemption accounting for stacktrace trigger command
| * 511ceee899 kbuild: Disable -Wdefault-const-init-unsafe
| * 899e014e68 Drivers: hv: vmbus: Remove vmbus_sendpacket_pagebuffer()
| * 4400b05ffa Drivers: hv: Allow vmbus_sendpacket_mpb_desc() to create multiple ranges
| * 02a68f11ba arm64: dts: rockchip: Remove overdrive-mode OPPs from RK3588J SoC dtsi
| * 7f2e784f27 arm64: dts: amlogic: dreambox: fix missing clkc_audio node
| * b1d6694b39 hv_netvsc: Remove rmsg_pgcnt
| * 7a508c604c hv_netvsc: Preserve contiguous PFN grouping in the page buffer array
| * 24f05522c1 hv_netvsc: Use vmbus_sendpacket_mpb_desc() to send VMBus messages
| * fe1bebd0ed dma-buf: insert memory barrier before updating num_fences
| * 93152dac0b ALSA: usb-audio: Add sample rate quirk for Microdia JP001 USB Camera
| * c88f4ff535 ALSA: usb-audio: Add sample rate quirk for Audioengine D1
| * f8302100f4 ALSA: es1968: Add error handling for snd_pcm_hw_constraint_pow2()
| * 7f8d77f654 ACPI: PPTT: Fix processor subtable walk
| * a348ff3f5b gpio: pca953x: fix IRQ storm on system wake up
| * f0c0b8e6bc MAINTAINERS: Update Alexey Makhalov's email address
| * 64a33088ad drm/amd/display: Avoid flooding unnecessary info messages
| * 2d125a1f0d drm/amd/display: Correct the reply value when AUX write incomplete
| * 8d71c3231b drm/amdgpu: csa unmap use uninterruptible lock
| * e54f20c5a1 drm/amdgpu: fix incorrect MALL size for GFX1151
| * c75f3f9cbf Revert "drm/amd/display: Hardware cursor changes color when switched to software cursor"
| * 3ee6399854 btrfs: add back warning for mount option commit values exceeding 300
| * bf804f34ad btrfs: fix folio leak in submit_one_async_extent()
| * 6ea6cea17f btrfs: fix discard worker infinite loop after disabling discard
| * 12f69c4e30 LoongArch: uprobes: Remove redundant code about resume_era
| * 88650dde2e LoongArch: uprobes: Remove user_{en,dis}able_single_step()
| * c92b99c4c0 LoongArch: Fix MAX_REG_OFFSET calculation
| * 2135336574 LoongArch: Save and restore CSR.CNTC for hibernation
| * 66a309b4d5 LoongArch: Move __arch_cpu_idle() to .cpuidle.text section
| * 111e55db3c LoongArch: Prevent cond_resched() occurring within kernel-fpu
| * f8544be7e8 HID: bpf: abort dispatch if device destroyed
| * d32c1880b3 udf: Make sure i_lenExtents is uptodate on inode eviction
| * 0102989af4 sched_ext: bpf_iter_scx_dsq_new() should always initialize iterator
| * a0c2478218 dmaengine: Revert "dmaengine: dmatest: Fix dmatest waiting less when interrupted"
| * 1533677267 NFSv4/pnfs: Reset the layout state after a layoutreturn
| * 6dbf38159d tsnep: fix timestamping with a stacked DSA driver
| * a11b8c0be6 net/tls: fix kernel panic when alloc_page failed
| * abc43c1ffd mlxsw: spectrum_router: Fix use-after-free when deleting GRE net devices
| * 07c737d9ab wifi: mac80211: Set n_channels after allocating struct cfg80211_scan_request
| * 7db81acae0 octeontx2-pf: Do not reallocate all ntuple filters
| * 1977cec5be octeontx2-af: Fix CGX Receive counters
| * 256adb2da5 net: ethernet: mtk_eth_soc: fix typo for declaration MT7988 ESW capability
| * bf85a27605 octeontx2-pf: macsec: Fix incorrect max transmit size in TX secy
| * 38a2fdd3e9 netlink: specs: tc: all actions are indexed arrays
| * be64ab9c17 netlink: specs: tc: fix a couple of attribute names
| * 3f16340071 drm/xe: Save CTX_TIMESTAMP mmio value instead of LRC value
| * d2a9a92bb4 regulator: max20086: fix invalid memory access
| * 5451b834b3 qlcnic: fix memory leak in qlcnic_sriov_channel_cfg_cmd()
| * 1f80e6ff02 net/mlx5e: Disable MACsec offload for uplink representor profile
| * 462e224381 vsock/test: Fix occasional failure in SIOCOUTQ tests
| * 225e29465a net: dsa: b53: prevent standalone from trying to forward to other ports
| * bd99372178 ALSA: sh: SND_AICA should depend on SH_DMA_API
| * a3c147040b nvme-pci: acquire cq_poll_lock in nvme_poll_irqdisable
| * ddfa034da3 nvme-pci: make nvme_pci_npages_prp() __always_inline
| * 0251e13f3f net: dsa: sja1105: discard incoming frames in BR_STATE_LISTENING
| * 3e64d35475 net: cadence: macb: Fix a possible deadlock in macb_halt_tx.
| * 5ee626e473 ALSA: ump: Fix a typo of snd_ump_stream_msg_device_info
| * caac5761a6 ALSA: seq: Fix delivery of UMP events to group ports
| * 8ee6ec20dd net: mctp: Ensure keys maintain only one ref to corresponding dev
| * d308312acd tests/ncdevmem: Fix double-free of queue array
| * 38c937dbd4 selftests: ncdevmem: Switch to AF_INET6
| * 04db681f3c selftests: ncdevmem: Make client_ip optional
| * 0738648a7d selftests: ncdevmem: Unify error handling
| * eb15f4f380 selftests: ncdevmem: Separate out dmabuf provider
| * f3380d119f selftests: ncdevmem: Redirect all non-payload output to stderr
| * d4d1561d17 net: mctp: Don't access ifa_index when missing
| * 9e5efcff49 mctp: no longer rely on net->dev_index_head[]
| * 37050be74e tools/net/ynl: ethtool: fix crash when Hardware Clock info is missing
| * d1365ca80b net_sched: Flush gso_skb list too during ->change()
| * 28826a89fd Bluetooth: MGMT: Fix MGMT_OP_ADD_DEVICE invalid device flags
| * 10c7f1c647 RDMA/core: Fix "KASAN: slab-use-after-free Read in ib_register_device" problem
| * de7acdb462 spi: loopback-test: Do not split 1024-byte hexdumps
| * da824f1271 nfs: handle failure of nfs_get_lock_context in unlock path
| * 94e7272b63 HID: uclogic: Add NULL check in uclogic_input_configured()
| * a699995370 HID: thrustmaster: fix memory leak in thrustmaster_interrupts()
| * 336edd6b0f RDMA/rxe: Fix slab-use-after-free Read in rxe_queue_cleanup bug
| * c43b0a185f virtio_net: ensure netdev_tx_reset_queue is called on bind xsk for tx
| * 343a77562c virtio_ring: add a func argument 'recycle_done' to virtqueue_reset()
| * 1cf8bdd596 iio: chemical: sps30: use aligned_s64 for timestamp
| * 7b16d3c361 iio: adc: ad7768-1: Fix insufficient alignment of timestamp.
| * b9e0997f2e xhci: dbc: Avoid event polling busyloop if pending rx transfers are inactive.
| * 651eaaae6b xhci: dbc: Improve performance by removing delay in transfer event polling.
| * 5d9d62323e Revert "drm/amd: Stop evicting resources on APUs in suspend"
| * 4d45a5f1e2 drm/amd: Add Suspend/Hibernate notification callback support
| * ea0153e065 iio: pressure: mprls0025pa: use aligned_s64 for timestamp
| * 039681d656 iio: chemical: pms7003: use aligned_s64 for timestamp
| * b37c112ef2 iio: adc: ad7266: Fix potential timestamp alignment issue.
| * a065f78eba KVM: x86/mmu: Prevent installing hugepages when mem attributes are changing
| * 3d962ec543 KVM: Add member to struct kvm_gfn_range to indicate private/shared
| * 54401e29ab uio_hv_generic: Fix sysfs creation path for ring buffer
| * 7bf64cd0cc tpm: tis: Double the timeout B to 4s
| * 517c11fe4f tracing: probes: Fix a possible race in trace_probe_log APIs
| * f0d70d8dca cgroup/cpuset: Extend kthread_is_per_cpu() check to all PF_NO_SETAFFINITY tasks
| * 220444d209 arm64: dts: imx8mp-var-som: Fix LDO5 shutdown causing SD card timeout
| * 48fff1267e platform/x86: asus-wmi: Fix wlan_ctrl_by_user detection
| * 03e4ee3a9a platform/x86/amd/pmc: Declare quirk_spurious_8042 for MECHREVO Wujie 14XA (GX4HRXL)
| * bc4c54cbb4 binfmt_elf: Move brk for static PIE even if ASLR disabled
| * 97dd8c19f2 riscv: dts: sophgo: fix DMA data-width configuration for CV18xx
| * a0bde67526 drivers/platform/x86/amd: pmf: Check for invalid Smart PC Policies
| * 5022d7a392 drivers/platform/x86/amd: pmf: Check for invalid sideloaded Smart PC Policies
| * 10d1496f85 fs/xattr.c: fix simple_xattr_list to always include security.* xattrs
| * 61f489ca99 arm64: dts: rockchip: Assign RT5616 MCLK rate on rk3588-friendlyelec-cm3588
* | bdd44337d5 UPSTREAM: loop: don't require ->write_iter for writable files in loop_configure
* | 651f2e4fca Merge 6.12.29 into android16-6.12-lts
|\|
| * 5be5dbf91e Linux 6.12.29
| * 7e78061be7 x86/its: FineIBT-paranoid vs ITS
| * bb85c3abbf x86/its: Fix build errors when CONFIG_MODULES=n
| * 2a6194e124 selftest/x86/bugs: Add selftests for ITS
| * 88a817e60d x86/its: Use dynamic thunks for indirect branches
| * 15335117c5 x86/ibt: Keep IBT disabled during alternative patching
| * bd57853b86 x86/its: Align RETs in BHB clear sequence to avoid thunking
| * 9f132c0397 x86/its: Add support for RSB stuffing mitigation
| * 4dc1902fde x86/its: Add "vmexit" option to skip mitigation on some CPUs
| * 68d59e9ba3 x86/its: Enable Indirect Target Selection mitigation
| * 5100004723 x86/its: Add support for ITS-safe return thunk
| * 16a7d5b7a4 x86/its: Add support for ITS-safe indirect thunk
| * a6f2a436e9 x86/its: Enumerate Indirect Target Selection (ITS) bug
| * 76f847655b Documentation: x86/bugs/its: Add ITS documentation
| * f23d4f4aeb x86/speculation: Remove the extra #ifdef around CALL_NOSPEC
| * 9ebe6f1bd2 x86/speculation: Add a conditional CS prefix to CALL_NOSPEC
| * d2498bbb54 x86/speculation: Simplify and make CALL_NOSPEC consistent
| * 9d8295dcf2 x86/bhi: Do not set BHI_DIS_S in 32-bit mode
| * b86349f326 x86/bpf: Add IBHF call at end of classic BPF
| * 87a12b9b38 x86/bpf: Call branch history clearing sequence on exit
| * 2176530849 arm64: proton-pack: Add new CPUs 'k' values for branch mitigation
| * e5f5100f1c arm64: bpf: Only mitigate cBPF programs loaded by unprivileged users
| * 38c345fd54 arm64: bpf: Add BHB mitigation to the epilogue for cBPF programs
| * f2aebb8ec6 arm64: proton-pack: Expose whether the branchy loop k value
| * ec5bca57af arm64: proton-pack: Expose whether the platform is mitigated by firmware
| * 2a3915e861 arm64: insn: Add support for encoding DSB
| * 86b37810fa sched/eevdf: Fix se->slice being set to U64_MAX and resulting crash
| * 16bae58f73 mm: page_alloc: speed up fallbacks in rmqueue_bulk()
| * 564d25b1a6 mm: page_alloc: don't steal single pages from biggest buddy
| * 12abefb8c8 Bluetooth: btmtk: Remove the resetting step before downloading the fw
| * c7a9df4ef4 Bluetooth: btmtk: Remove resetting mt7921 before downloading the fw
| * 2482f7705b io_uring: always arm linked timeouts prior to issue
| * 6b0383a21d rust: clean Rust 1.88.0's `clippy::uninlined_format_args` lint
| * 1c25723831 rust: allow Rust 1.87.0's `clippy::ptr_eq` lint
| * 6aac2c5476 Revert "um: work around sched_yield not yielding in time-travel mode"
| * cd010271a9 do_umount(): add missing barrier before refcount checks in sync case
| * 3edac2949e io_uring/sqpoll: Increase task_work submission batch size
| * 944af45bb7 drm/xe/tests/mocs: Hold XE_FORCEWAKE_ALL for LNCF regs
| * 95a75ed2b0 drm/xe/tests/mocs: Update xe_force_wake_get() return handling
| * d6b013b44e riscv: misaligned: enable IRQs while handling misaligned accesses
| * 45a0697cee riscv: misaligned: factorize trap handling
| * 19fa2a4830 nvme: unblock ctrl state transition for firmware update
| * 7798edcc5b drm/panel: simple: Update timings for AUO G101EVN010
| * 184b147b9f loop: Add sanity check for read/write_iter
* | d2f3f294cf Merge a781ffe410 ("loop: factor out a loop_assign_backing_file helper") into android16-6.12-lts
|\|
| * a781ffe410 loop: factor out a loop_assign_backing_file helper
* | f6f856e093 Merge 5e1470b276 ("loop: refactor queue limits updates") into android16-6.12-lts
|\|
| * 5e1470b276 loop: refactor queue limits updates
* | b9315b0505 Merge 0558ce095b ("loop: Fix ABBA locking race") into android16-6.12-lts
|\|
| * 0558ce095b loop: Fix ABBA locking race
* | abbbbed768 Merge 722f6dece7 ("loop: Simplify discard granularity calc") into android16-6.12-lts
|\|
| * 722f6dece7 loop: Simplify discard granularity calc
* | f3c6606676 Merge 02a77b3020 ("loop: Use bdev limit helpers for configuring discard") into android16-6.12-lts
|\|
| * 02a77b3020 loop: Use bdev limit helpers for configuring discard
* | 6a0454f040 Merge 126be03494 ("riscv: misaligned: Add handling for ZCB instructions") into android16-6.12-lts
|\|
| * 126be03494 riscv: misaligned: Add handling for ZCB instructions
| * eaa30e1d0e MIPS: Fix MAX_REG_OFFSET
| * fb98c9e584 iio: adc: dln2: Use aligned_s64 for timestamp
| * ef5d6a4096 iio: accel: adxl355: Make timestamp 64-bit aligned using aligned_s64
| * afe8849597 types: Complement the aligned types with signed 64-bit one
| * 245e319019 iio: temp: maxim-thermocouple: Fix potential lack of DMA safe buffer.
| * e9bf391a9b iio: accel: adxl367: fix setting odr for activity time update
| * a2ad060643 usb: usbtmc: Fix erroneous generic_read ioctl return
| * 2073913776 usb: usbtmc: Fix erroneous wait_srq ioctl return
| * 29e1773746 usb: usbtmc: Fix erroneous get_stb ioctl error returns
| * 9d90c283ea USB: usbtmc: use interruptible sleep in usbtmc_read
| * 5ad298d6d4 usb: typec: ucsi: displayport: Fix NULL pointer access
| * 3366a19948 usb: typec: tcpm: delay SNK_TRY_WAIT_DEBOUNCE to SRC_TRYWAIT transition
| * 1c001b6dde usb: misc: onboard_usb_dev: fix support for Cypress HX3 hubs
| * 08eca452a6 usb: host: tegra: Prevent host controller crash when OTG port is used
| * d1c8fa4c6e usb: gadget: Use get_status callback to set remote wakeup capability
| * 43ae91f561 usb: gadget: tegra-xudc: ACK ST_RC after clearing CTRL_RUN
| * 75f23e49ad usb: gadget: f_ecm: Add get_status callback
| * fae7f44601 usb: cdnsp: fix L1 resume issue for RTL_REVISION_NEW_LPM version
| * 88d92cffc9 usb: cdnsp: Fix issue with resuming from L1
| * f6fdbe4d54 usb: dwc3: gadget: Make gadget_wakeup asynchronous
* | 23a88a6ad8 Merge d133023c9a ("ocfs2: stop quota recovery before disabling quotas") into android16-6.12-lts
|\|
| * d133023c9a ocfs2: stop quota recovery before disabling quotas
| * fe3d752a7a ocfs2: implement handshaking with ocfs2 recovery thread
| * f96041a959 ocfs2: switch osb->disable_recovery to enum
| * 1b3b915852 ocfs2: fix the issue with discontiguous allocation in the global_bitmap
| * b76eaef983 x86/microcode: Consolidate the loader enablement checking
| * d63851049f module: ensure that kobject_put() is safe for module type kobjects
| * d66a22f6a4 memblock: Accept allocated memory before use in memblock_double_array()
| * ed45af6841 clocksource/i8253: Use raw_spinlock_irqsave() in clockevent_i8253_disable()
| * abbc99e898 arm64: cpufeature: Move arm64_use_ng_mappings to the .data section to prevent wrong idmap generation
| * 55701e992b accel/ivpu: Increase state dump msg timeout
| * 8e9c8a0393 xenbus: Use kref to track req lifetime
| * 54dd5d6af7 xen: swiotlb: Use swiotlb bouncing if kmalloc allocation demands it
| * 571dcf3d27 smb: client: Avoid race in open_cached_dir with lease breaks
| * a9f28dbfdd usb: uhci-platform: Make the clock really optional
| * 92d0a28afb drm/amdgpu/hdp7: use memcfg register to post the write for HDP flush
| * df04418262 drm/amdgpu/hdp6: use memcfg register to post the write for HDP flush
| * 0a776c3054 drm/amdgpu/hdp5: use memcfg register to post the write for HDP flush
| * b6f0f3e6c7 drm/amdgpu/hdp5.2: use memcfg register to post the write for HDP flush
| * 4872de413e drm/amdgpu/hdp4: use memcfg register to post the write for HDP flush
| * a13f9ac569 drm/amd/display: Copy AUX read reply data whenever length > 0
| * 2d63e66f7b drm/amd/display: Fix wrong handling for AUX_DEFER case
| * 0e225bdba3 drm/amd/display: Remove incorrect checking in dmub aux handler
| * fc7ac4ad1d drm/amd/display: Fix the checking condition in dmub aux handling
| * 468034a06a drm/amd/display: more liberal vmin/vmax update for freesync
| * d8c4afe783 drm/amd/display: Fix invalid context error in dml helper
| * 19323f414b drm/amdgpu/vcn: using separate VCN1_AON_SOC offset
| * 206569cbf7 drm/xe: Add page queue multiplier
| * a5f162727b drm/v3d: Add job to pending list if the reset was skipped
| * dadf911610 iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_tagged_fifo
| * a1cad8a3bc iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_fifo
| * 82f6334a0b iio: imu: inv_mpu6050: align buffer for timestamp
| * c4dfff960b iio: adis16201: Correct inclinometer channel resolution
| * 4cbd37a12a iio: adc: rockchip: Fix clock initialization sequence
| * c9f8413b78 iio: adc: ad7606: fix serial register access
| * 7f37e31483 io_uring: ensure deferred completions are flushed for multishot
| * 4d41b9e4c9 drm/amd/display: Shift DMUB AUX reply command if necessary
| * d362b21fef KVM: SVM: Forcibly leave SMM mode on SHUTDOWN interception
| * 5156f7c484 selftests/mm: fix a build failure on powerpc
| * b21ec0726a selftests/mm: compaction_test: support platform with huge mount of memory
| * b543a5a73b mm/userfaultfd: fix uninitialized output field for -EAGAIN race
| * 6166c3cf40 mm/huge_memory: fix dereferencing invalid pmd migration entry
* | 8c70afee5a Revert "mm: vmalloc: support more granular vrealloc() sizing"
* | f6204ce2cd Merge 2910019b04 ("mm: vmalloc: support more granular vrealloc() sizing") into android16-6.12-lts
|\|
| * 2910019b04 mm: vmalloc: support more granular vrealloc() sizing
* | 9649374a04 Merge efb5973459 ("mm: fix folio_pte_batch() on XEN PV") into android16-6.12-lts
|\|
| * efb5973459 mm: fix folio_pte_batch() on XEN PV
| * d87392094f x86/mm: Eliminate window where TLB flushes may be inadvertently skipped
| * e8b1d65f0a staging: axis-fifo: Correct handling of tx_fifo_depth for size validation
| * 38a8982ca0 staging: axis-fifo: Remove hardware resets for user errors
| * 06753f4933 staging: bcm2835-camera: Initialise dev in v4l2_dev
| * 215e42e2f1 staging: iio: adc: ad7816: Correct conditional logic for store mode
| * 5bb112f160 rust: clean Rust 1.88.0's warning about `clippy::disallowed_macros` configuration
| * a85d8aed0c objtool/rust: add one more `noreturn` Rust function for Rust 1.87.0
| * 376b73292a rust: clean Rust 1.88.0's `unnecessary_transmutes` lint
| * 2943297acf Input: synaptics - enable InterTouch on TUXEDO InfinityBook Pro 14 v5
| * a82f4f5563 Input: synaptics - enable SMBus for HP Elitebook 850 G1
| * bbb5081015 Input: synaptics - enable InterTouch on Dell Precision M3800
| * bc4556bba1 Input: synaptics - enable InterTouch on Dynabook Portege X30L-G
| * 9d9074af50 Input: synaptics - enable InterTouch on Dynabook Portege X30-D
| * 38bb0170d6 Input: xpad - fix two controller table values
| * bf239d3835 Input: xpad - add support for 8BitDo Ultimate 2 Wireless Controller
| * 302a0cd0bb Input: xpad - fix Share button on Xbox One controllers
| * 619c05fb17 Input: mtk-pmic-keys - fix possible null pointer dereference
| * f36230dacd Input: cyttsp5 - fix power control issue on wakeup
| * ee25256789 Input: cyttsp5 - ensure minimum reset pulse width
* | 75d972f987 ANDROID: GKI: add netdev_stat_queue_sum to the virtual symbol list
* | 388a174371 Merge de02eb727f ("virtio-net: fix total qstat values") into android16-6.12-lts
|\|
| * de02eb727f virtio-net: fix total qstat values
* | ccbcf35213 Merge bb8f86f40e ("net: export a helper for adding up queue stats") into android16-6.12-lts
|\|
| * bb8f86f40e net: export a helper for adding up queue stats
| * 7eea40818e fbnic: Do not allow mailbox to toggle to ready outside fbnic_mbx_poll_tx_ready
| * 650e283b4c fbnic: Pull fbnic_fw_xmit_cap_msg use out of interrupt context
| * 9d9010879d fbnic: Improve responsiveness of fbnic_mbx_poll_tx_ready
| * 612a05c9f2 fbnic: Actually flush_tx instead of stalling out
| * fea860a2a6 fbnic: Gate AXI read/write enabling on FW mailbox
| * cd25fc4c56 fbnic: Fix initialization of mailbox descriptor rings
| * ce97489864 net: dsa: b53: do not set learning and unicast/multicast on up
| * e5b40f4a2b net: dsa: b53: fix learning on VLAN unaware bridges
| * ce1a289bf2 net: dsa: b53: fix toggling vlan_filtering
| * 2407c98a1b net: dsa: b53: do not program vlans when vlan filtering is off
| * 7dac025829 net: dsa: b53: do not allow to configure VLAN 0
| * 11c427a869 net: dsa: b53: always rejoin default untagged VLAN on bridge leave
| * 90b65bc357 net: dsa: b53: fix VLAN ID for untagged vlan on bridge leave
| * 42ab1f2b6f net: dsa: b53: fix flushing old pvid VLAN on pvid change
| * 4ed7e60313 net: dsa: b53: fix clearing PVID of a port
| * 46de8f2aa3 net: dsa: b53: keep CPU port always tagged again
| * 11dbd4e0a8 net: dsa: b53: allow leaky reserved multicast
| * b37e54259c bpf: Scrub packet on bpf_redirect_peer
| * e2ab67672b netfilter: ipset: fix region locking in hash types
| * 0160ac84fb ipvs: fix uninit-value for saddr in do_output_route4
| * 64385c0d02 erofs: ensure the extra temporary copy is valid for shortened bvecs
* | bca3c97937 Merge 574686c807 ("ice: use DSN instead of PCI BDF for ice_adapter index") into android16-6.12-lts
|\|
| * 574686c807 ice: use DSN instead of PCI BDF for ice_adapter index
| * 62946989e6 ice: Initial support for E825C hardware in ice_adapter
| * 4555c4a13a wifi: mac80211: fix the type of status_code for negotiated TID to Link Mapping
| * c33927f385 can: gw: fix RCU/BH usage in cgw_create_job()
| * 8f24cc6a72 can: mcp251xfd: fix TDC setting for low data bit rates
| * 2ecce25ea2 can: m_can: m_can_class_allocate_dev(): initialize spin lock on device probe
| * 79a6945e3d net: ethernet: mtk_eth_soc: do not reset PSE when setting FE
| * aac9d5fa53 net: ethernet: mtk_eth_soc: reset all TX queues on DMA free
| * 35be4c0cdf gre: Fix again IPv6 link-local address generation.
| * 94a6f6c204 virtio-net: free xsk_buffs on error in virtnet_xsk_pool_enable()
| * edd53ee790 virtio_net: xsk: bind/unbind xsk for tx
| * 98cd7ed927 sch_htb: make htb_deactivate() idempotent
| * 5c3b8f0575 s390/entry: Fix last breaking event handling in case of stack corruption
| * 2148d34371 ksmbd: fix memory leak in parse_lease_state()
| * ec334aaab7 openvswitch: Fix unsafe attribute parsing in output_userspace()
| * 9e9841e232 ksmbd: Fix UAF in __close_file_table_ids
| * d62ba16563 ksmbd: prevent out-of-bounds stream writes by validating *pos
| * c57301e332 ksmbd: prevent rename with empty string
| * 1b7b1cbc6e can: rockchip_canfd: rkcanfd_remove(): fix order of unregistration calls
| * 12ef60f1b9 can: mcp251xfd: mcp251xfd_remove(): fix order of unregistration calls
| * c488f8b53e s390/pci: Fix duplicate pci_dev_put() in disable_slot() when PF has child VFs
| * afa5cdce06 vfio/pci: Align huge faults to order
| * 9423f6da82 wifi: cfg80211: fix out-of-bounds access during multi-link element defragmentation
| * be54b750c3 s390/pci: Fix missing check for zpci_create_device() error return
| * e0a8e3ca07 can: mcan: m_can_class_unregister(): fix order of unregistration calls
| * 14ee85b748 firmware: arm_scmi: Fix timeout checks on polling path
| * fe3da1bfd8 arm64: dts: imx8mm-verdin: Link reg_usdhc2_vqmmc to usdhc2
| * ff7d691921 Revert "btrfs: canonicalize the device path before adding it"
| * 61e0fc3312 fs/erofs/fileio: call erofs_onlinefolio_split() after bio_add_folio()
| * b32411f045 dm: add missing unlock on in dm_keyslot_evict()
* | 26bd1ac1ad Merge android16-6.12 into android16-6.12-lts
* | ad2b007ef4 Revert "cpufreq: Fix setting policy limits when frequency tables are used"
* | 834bfca137 Revert "xsk: Fix race condition in AF_XDP generic RX path"
* | 62cd1edf4d Merge 6.12.28 into android16-6.12-lts
|\|
| * f08cdc6cc9 Linux 6.12.28
| * db62809197 dm: fix copying after src array boundaries
| * dd329f04dd drm/amd/display: Fix slab-use-after-free in hdcp
| * 75096780a4 drm/amd/display: Add scoped mutexes for amdgpu_dm_dhcp
| * e1eea69858 drivers: base: handle module_kobject creation
| * 69113bf740 kernel: globalize lookup_or_create_module_kobject()
| * 3b41b5efae kernel: param: rename locate_module_kobject
| * 7509810606 Revert "drm/meson: vclk: fix calculation of 59.94 fractional rates"
| * e993398cbd arm64: dts: st: Use 128kB size for aliased GIC400 register access on stm32mp25 SoCs
| * aa4ea53554 arm64: dts: st: Adjust interrupt-controller for stm32mp25 SoCs
| * 7ac0df4f35 ARM: dts: opos6ul: add ksz8081 phy properties
| * a3ab5c9443 arm64: dts: imx95: Correct the range of PCIe app-reg region
| * cc67657f63 firmware: arm_ffa: Skip Rx buffer ownership release if not acquired
| * 969d8beaa2 firmware: arm_scmi: Balance device refcount when destroying devices
| * 752600f1ac drm/xe: Ensure fixed_slice_mode gets set after ccs_mode change
| * 0e6325c183 sch_ets: make est_qlen_notify() idempotent
| * 15fa905db2 sch_qfq: make qfq_qlen_notify() idempotent
| * d06476714d sch_hfsc: make hfsc_qlen_notify() idempotent
| * 353add4cad sch_drr: make drr_qlen_notify() idempotent
| * 0a188c0e19 sch_htb: make htb_qlen_notify() idempotent
| * bccc7df3ce accel/ivpu: Add handling of VPU_JSM_STATUS_MVNCI_CONTEXT_VIOLATION_HW
| * 079d2622f8 accel/ivpu: Fix locking order in ivpu_job_submit
| * 3e3062be7d accel/ivpu: Abort all jobs after command queue unregister
| * a39b5b6a6e accel/ivpu: Update VPU FW API headers
| * 1ebbfee889 accel/ivpu: Fix a typo
| * a735c9205d accel/ivpu: Use xa_alloc_cyclic() instead of custom function
| * aaba59961d accel/ivpu: Make DB_ID and JOB_ID allocations incremental
| * f4ae68eae9 net: Fix the devmem sock opts and msgs for parisc
| * 6b6cd38910 bcachefs: Remove incorrect __counted_by annotation
| * dab2a13059 mm, slab: clean up slab->obj_exts always
| * e10ec6e32b blk-mq: create correct map for fallback case
| * 1e15804c04 net: vertexcom: mse102x: Fix RX error handling
| * 2e5b8eb6b4 net: vertexcom: mse102x: Add range check for CMD_RTS
| * 98abf83672 net: vertexcom: mse102x: Fix LEN_MASK
| * 6abbffa736 net: vertexcom: mse102x: Fix possible stuck of SPI interrupt
| * 7f9c3e2213 net: hns3: defer calling ptp_clock_register()
| * 6a6d547a7f net: hns3: fixed debugfs tm_qset size
| * ee2642bbae net: hns3: fix an interrupt residual problem
| * d4cd766731 net: hns3: store rx VLAN tag offload state for VF
| * c8d788f800 octeon_ep: Fix host hang issue during device reboot
| * bcb9d6a222 net: fec: ERR007885 Workaround for conventional TX
| * 189b05f189 net: lan743x: Fix memleak issue when GSO enabled
| * 8a543d825e ptp: ocp: Fix NULL dereference in Adva board SMA sysfs operations
| * c0dba059b1 net: use sock_gen_put() when sk_state is TCP_TIME_WAIT
| * a90146b73c bnxt_en: fix module unload sequence
| * b41a49d543 ASoC: simple-card-utils: Fix pointer check in graph_util_parse_link_direction
| * 9b552c84cd nvmet-tcp: select CONFIG_TLS from CONFIG_NVME_TARGET_TCP_TLS
| * 15ea0b6164 nvme-tcp: select CONFIG_TLS from CONFIG_NVME_TCP_TLS
| * 60331309e7 nvme-tcp: fix premature queue removal and I/O failover
| * 2da8fe5a10 bnxt_en: Fix ethtool -d byte order for 32-bit values
| * 44807af79e bnxt_en: Fix out-of-bound memcpy() during ethtool -w
| * 454a4450b0 bnxt_en: Fix coredump logic to free allocated buffer
| * 626af9b8e8 bnxt_en: call pci_alloc_irq_vectors() after bnxt_reserve_rings()
| * aa15f389fc bnxt_en: Add missing skb_mark_for_recycle() in bnxt_rx_vlan()
| * 808a7304b5 bnxt_en: Fix ethtool selftest output in one of the failure cases
| * e039b00ddb bnxt_en: Fix error handling path in bnxt_init_chip()
| * 9bc347854d ALSA: hda/realtek: Fix built-mic regression on other ASUS models
| * 6effe1c0fa net: ipv6: fix UDPv6 GSO segmentation with NAT
| * dcb5a2b961 net: dsa: felix: fix broken taprio gate states after clock jump
| * 317013d1ad net: ethernet: mtk_eth_soc: fix SER panic with 4GB+ RAM
| * 56b958a5b5 igc: fix lock order in igc_ptp_reset
| * df1ff481fa idpf: protect shutdown from reset
| * bf0ec3aac1 idpf: fix potential memory leak on kcalloc() failure
| * d206ea7681 net: mdio: mux-meson-gxl: set reversed bit when using internal phy
| * e9b65c9561 net: dlink: Correct endianness handling of led_mode
| * 7fc2c784dd drm/mipi-dbi: Fix blanking for non-16 bit formats
| * d0d7c93b4b drm/tests: shmem: Fix memleak
| * 5ad0b1b554 nvme-pci: fix queue unquiesce check on slot_reset
| * 226beac560 ALSA: ump: Fix buffer overflow at UMP SysEx message conversion
| * 6b1355860d scsi: ufs: core: Remove redundant query_complete trace
| * d14f88bd0f idpf: fix offloads support for encapsulated packets
| * 073791e9cf ice: Check VF VSI Pointer Value in ice_vc_add_fdir_fltr()
| * 53bc0b5517 net_sched: qfq: Fix double list add in class with netem as child qdisc
| * 1f01e9f961 net_sched: ets: Fix double list add in class with netem as child qdisc
| * 2e7093c7a8 net_sched: hfsc: Fix a UAF vulnerability in class with netem as child qdisc
| * 26e75716b9 net_sched: drr: Fix double list add in class with netem as child qdisc
| * c649b9653e pds_core: remove write-after-free of client_id
| * f41e27b746 pds_core: specify auxiliary_device to be created
| * 1d69ab8503 pds_core: make pdsc_auxbus_dev_del() void
| * aea3ca60fa net: ethernet: mtk_eth_soc: sync mtk_clks_source_name array
| * 5257a0f1ec net: ethernet: mtk-star-emac: rearm interrupts in rx_poll only when advised
| * 8d40bf73fa net: ethernet: mtk-star-emac: fix spinlock recursion issues on rx/tx poll
| * 950832771e rtase: Modify the condition used to detect overflow in rtase_calc_time_mitigation
| * 4911412efd bnxt_en: improve TX timestamping FIFO configuration
| * ddc1e64c29 octeon_ep_vf: Resolve netdevice usage count issue
| * 6e6325d487 net: mscc: ocelot: delete PVID VLAN when readding it as non-PVID
| * 432572d536 Bluetooth: L2CAP: copy RX timestamp to new fragments
| * cfe006c8a6 Bluetooth: btintel_pcie: Add additional to checks to clear TX/RX paths
| * b70b41591e Bluetooth: btusb: avoid NULL pointer dereference in skb_dequeue()
| * c7bd5c9ba1 Bluetooth: btintel_pcie: Avoid redundant buffer allocation
| * 620810ac1f Bluetooth: hci_conn: Fix not setting timeout for BIG Create Sync
| * eb8b860e87 Bluetooth: hci_conn: Fix not setting conn_timeout for Broadcast Receiver
| * fe81c26d2d Bluetooth: hci_conn: Remove alloc from critical section
| * 3104b7d559 ASoC: amd: acp: Fix NULL pointer deref in acp_i2s_set_tdm_slot
| * 92d812df3b accel/ivpu: Correct DCT interrupt handling
| * 174161d6f0 net/mlx5: E-switch, Fix error handling for enabling roce
| * 488ab6d41f net/mlx5e: Fix lock order in mlx5e_tx_reporter_ptpsq_unhealthy_recover
| * c022830c2a net/mlx5e: TC, Continue the attr process even if encap entry is invalid
| * 51599d07c7 net/mlx5: E-Switch, Initialize MAC Address for Default GID
| * b67fee5837 net/mlx5e: Use custom tunnel header for vxlan gbp
| * 65d3c57061 xsk: Fix race condition in AF_XDP generic RX path
| * 5cb9e07f84 vxlan: vnifilter: Fix unlocked deletion of default FDB entry
| * ec1643d1ba powerpc/boot: Fix dash warning
| * 791a2d9e87 wifi: plfxlc: Remove erroneous assert in plfxlc_mac_release
| * 50d1982dba wifi: iwlwifi: fix the check for the SCRATCH register upon resume
| * 33bf992088 wifi: iwlwifi: don't warn if the NIC is gone in resume
| * bb0d602899 drm/i915/pxp: fix undefined reference to `intel_pxp_gsccs_is_ready_for_sessions'
| * f7dc50604c ALSA: hda/realtek - Enable speaker for HP platform
| * 7867992c3e ASoC: Intel: sof_sdw: Add NULL check in asoc_sdw_rt_dmic_rtd_init()
| * ae462ead89 powerpc/boot: Check for ld-option support
| * fcf36f6ed4 pinctrl: imx: Return NULL if no group is matched and found
| * 7f5476d80f book3s64/radix : Align section vmemmap start address to PAGE_SIZE
| * 29a4a29112 ASoC: soc-pcm: Fix hw_params() and DAPM widget sequence
| * 2029a38b6c ASoC: cs-amp-lib-test: Don't select SND_SOC_CS_AMP_LIB
| * 220395054c ASoC: soc-core: Stop using of_property_read_bool() for non-boolean properties
| * b93e1cad05 drm/amd/display: Default IPS to RCG_IN_ACTIVE_IPS2_IN_OFF
| * 1f27a3e93b tracing: Fix oob write in trace_seq_to_buffer()
| * 962d88304c cpufreq: Fix setting policy limits when frequency tables are used
| * 573b047229 cpufreq: Avoid using inconsistent policy->min and policy->max
| * 553d723e1a smb: client: fix zero length for mkdir POSIX create context
| * d5ec1d7950 ksmbd: fix use-after-free in session logoff
| * e18c616718 ksmbd: fix use-after-free in kerberos authentication
| * 8fb3b6c85b ksmbd: fix use-after-free in ksmbd_session_rpc_open
| * d211757918 platform/x86/intel-uncore-freq: Fix missing uncore sysfs during CPU hotplug
| * 2fcb183768 platform/x86/amd: pmc: Require at least 2.5 seconds between HW sleep cycles
| * 2e303d0107 iommu: Fix two issues in iommu_copy_struct_from_user()
| * 677714d779 iommu/vt-d: Apply quirk_iommu_igfx for 8086:0044 (QM57/QS57)
| * ccc50fcba3 iommu/arm-smmu-v3: Fix pgsize_bit for sva domains
| * 98e634aa4b iommu/arm-smmu-v3: Fix iommu_device_probe bug due to duplicated stream ids
| * 10d901a95f iommu/amd: Fix potential buffer overflow in parse_ivrs_acpihid
| * 43eb647e84 drm: Select DRM_KMS_HELPER from DRM_DEBUG_DP_MST_TOPOLOGY_REFS
| * 989f9c6a61 drm/amdgpu: Fix offset for HDP remap in nbio v7.11
| * 510aea4ef0 dm: always update the array size in realloc_argv on success
| * af2a88817f dm-integrity: fix a warning on invalid table line
| * f451082572 dm-bufio: don't schedule in atomic context
| * efebca5970 x86/boot/sev: Support memory acceptance in the EFI stub under SVSM
| * bdb435ef98 wifi: brcm80211: fmac: Add error handling for brcmf_usb_dl_writeimage()
| * 0988dd0263 tracing: Do not take trace_event_sem in print_event_fields()
| * da77a7594f spi: tegra114: Don't fail set_cs_timing when delays are zero
| * 20a28e0ece mmc: renesas_sdhi: Fix error handling in renesas_sdhi_probe
| * 9c4ddea497 mm/memblock: repeat setting reserved region nid if array is doubled
| * eb9b72e4fe mm/memblock: pass size instead of end to memblock_set_node()
| * f102342360 irqchip/qcom-mpm: Prevent crash when trying to handle non-wake GPIOs
| * 6569501c70 amd-xgbe: Fix to ensure dependent features are toggled with RX checksum offload
| * 44ee0afc9d perf/x86/intel: KVM: Mask PEBS_ENABLE loaded for guest with vCPU's value.
| * 6dcf83f504 perf/x86/intel: Only check the group flag for X86 leader
| * cf21e890f5 parisc: Fix double SIGFPE crash
| * 090c8714ef arm64: errata: Add missing sentinels to Spectre-BHB MIDR arrays
| * 4f4388a550 i2c: imx-lpi2c: Fix clock count when probe defers
| * 833ef30f01 EDAC/altera: Set DDR and SDMMC interrupt mask before registration
| * 349dac4052 EDAC/altera: Test the correct error reg offset
| * b771b20172 drm/nouveau: Fix WARN_ON in nouveau_fence_context_kill()
| * f1dfc94584 drm/fdinfo: Protect against driver unbind
| * d31806f14c cpufreq: intel_pstate: Unchecked MSR aceess in legacy mode
| * f46fd2f024 btrfs: fix COW handling in run_delalloc_nocow()
| * b80db09b61 btrfs: adjust subpage bit start based on sectorsize
| * 38d9ca7405 binder: fix offset calculation in debug log
| * fdf0ae5e9e ALSA: usb-audio: Add second USB ID for Jabra Evolve 65 headset
| * 0aaae77be5 ALSA: usb-audio: Add retry on -EPROTO from usb_set_interface()
| * 222b6685ef Revert "rndis_host: Flag RNDIS modems as WWAN devices"
| * 351378ae7b Bluetooth: btusb: Add 13 USB device IDs for Qualcomm WCN785x
| * 78945de256 Bluetooth: btusb: Add new VID/PID for WCN785x
| * 5ab19c342f Bluetooth: btusb: Add ID 0x2c7c:0x0130 for Qualcomm WCN785x
| * c6e1913e76 Bluetooth: btusb: Add one more ID 0x13d3:0x3623 for Qualcomm WCN785x
| * 8ee592df65 Bluetooth: btusb: Add one more ID 0x0489:0xe0f3 for Qualcomm WCN785x
| * a9bfc823d0 Bluetooth: btusb: add Foxconn 0xe0fc for Qualcomm WCN785x
* | 7ef2a3c257 Merge 6.12.27 into android16-6.12-lts
|\|
| * b801eaa96a Linux 6.12.27
| * 92c6f8c577 bpf: Fix BPF_INTERNAL namespace import
* | 4268a279b0 Merge branch 'android16-6.12' into android16-6.12-lts
* | 2348274c38 ANDROID: GKI: fix up new enum ABI break for PERR_REMOTE
* | 54ab26576b ANDROID: GKI: fix up CRC issue with msi.c
* | edd5c4a4db ANDROID: GKI: fix up crc issue in crypto_get_default_null_skcipher()
* | 5562e5e9bc Revert "usb: typec: class: Fix NULL pointer access"
* | 9bc73ad3e8 Revert "usb: typec: class: Invalidate USB device pointers on partner unregistration"
* | f382226159 Revert "usb: typec: class: Unlocked on error in typec_register_partner()"
* | d21d9b7966 Revert "xhci: Handle spurious events on Etron host isoc enpoints"
* | afca077cf3 Revert "usb: xhci: Fix Short Packet handling rework ignoring errors"
* | 51b29671f8 Revert "block: remove the write_hint field from struct request"
* | 69db030430 Revert "block: remove the ioprio field from struct request"
* | 0051f90803 Revert "block: make sure ->nr_integrity_segments is cloned in blk_rq_prep_clone"
* | c03fd6f483 Revert "module: sign with sha512 instead of sha1 by default"
* | 452a0ec59d ANDROID: GKI: Remove CONFIG_UBSAN_SIGNED_WRAP from gki_defconfig
* | db596bb60e Merge 6.12.26 into android16-6.12-lts
|\|
| * c72e4daa7a Linux 6.12.26
| * 6b9ebcbd31 mq-deadline: don't call req_get_ioprio from the I/O completion handler
| * ccc4e973fd arm64: dts: ti: k3-j784s4-j742s2-main-common: Correct the GICD size
| * 4b814a1c0c crypto: Kconfig - Select LIB generic option
| * ab5281d21e usb: typec: class: Unlocked on error in typec_register_partner()
| * ff4226252c objtool: Silence more KCOV warnings, part 2
| * 4dc5c03fbd objtool: Ignore end-of-section jumps for KCOV/GCOV
| * 1b7647efad usb: xhci: Fix Short Packet handling rework ignoring errors
| * 1042d22942 nvme: fixup scan failure for non-ANA multipath controllers
| * 8bfe4f02b6 MIPS: cm: Fix warning if MIPS_CM is disabled
| * 62bf68561d media: i2c: imx214: Fix uninitialized variable in imx214_set_ctrl()
| * 67727c5764 crypto: lib/Kconfig - Hide arch options from user
| * 4833d0a92b iommu: Handle race with default domain setup
| * 49d628cb24 net: dsa: mv88e6xxx: enable STU methods for 6320 family
| * ff83998b6f net: dsa: mv88e6xxx: enable .port_set_policy() for 6320 family
| * 7dd0c1b86e net: dsa: mv88e6xxx: enable PVT for 6321 switch
| * f4106753ae net: dsa: mv88e6xxx: fix atu_move_port_mask for 6341 family
| * 324fd0ba93 Revert "net: dsa: mv88e6xxx: fix internal PHYs for 6320 family"
| * 40966fc993 usb: typec: class: Invalidate USB device pointers on partner unregistration
| * 45314999f9 ext4: goto right label 'out_mmap_sem' in ext4_setattr()
| * 9f609f04c2 comedi: jr3_pci: Fix synchronous deletion of timer
| * 33e131a104 vmxnet3: Fix malformed packet sizing in vmxnet3_process_xdp
| * de7c24febd usb: typec: class: Fix NULL pointer access
| * 543e0f8765 selftests/bpf: Adjust data size to have ETH_HLEN
| * a9b0b9421e selftests/bpf: check program redirect in xdp_cpumap_attach
| * b84e7bc488 selftests/bpf: make xdp_cpumap_attach keep redirect prog attached
| * f8ed4bfb03 selftests/bpf: fix bpf_map_redirect call for cpu map test
| * 94d9c3366e xfs: flush inodegc before swapon
| * d6989af0cb xfs: rename xfs_iomap_swapfile_activate to xfs_vm_swap_activate
| * 8185e3ba71 xfs: Do not allow norecovery mount with quotacheck
| * 94c5584f36 xfs: do not check NEEDSREPAIR if ro,norecovery mount.
| * 2b344e779d driver core: fix potential NULL pointer dereference in dev_uevent()
| * 4f43c1bf2b driver core: introduce device_set_driver() helper
| * bfc66c4c28 Revert "drivers: core: synchronize really_probe() and dev_uevent()"
| * 185d376875 spi: spi-imx: Add check for spi_imx_setupxfer()
| * 54cbce4fe0 drm/amdgpu: Use the right function for hdp flush
| * 0fd149c262 drm/amdgpu: use a dummy owner for sysfs triggered cleaner shaders v4
| * 387461fba3 md/raid1: Add check for missing source disk in process_checks()
| * cd0d49958c x86/cpu: Add CPU model number for Bartlett Lake CPUs with Raptor Cove cores
| * 3027e5d811 ubsan: Fix panic from test_ubsan_out_of_bounds
| * 33903ad627 spi: tegra210-quad: add rate limiting and simplify timeout error message
| * 1b4cf6873a spi: tegra210-quad: use WARN_ON_ONCE instead of WARN_ON for timeouts
| * 8f805b3746 ksmbd: fix WARNING "do not call blocking ops when !TASK_RUNNING"
| * c9ffbc0792 riscv: Provide all alternative macros all the time
| * d53b2d49a8 iomap: skip unnecessary ifs_block_is_uptodate check
| * 2ef6eea2ef netfs: Only create /proc/fs/netfs with CONFIG_PROC_FS
| * 2d097dc242 x86/i8253: Call clockevent_i8253_disable() with interrupts disabled
| * 40216dc239 ASoC: fsl_asrc_dma: get codec or cpu dai from backend
| * 0f9802f174 scsi: pm80xx: Set phy_attached to zero when device is gone
| * acf1610d8b scsi: ufs: exynos: gs101: Put UFS device in reset on .suspend()
| * b7a05edb28 scsi: ufs: exynos: Move phy calls to .exit() callback
| * c0724ac138 scsi: ufs: exynos: Enable PRDT pre-fetching with UFSHCD_CAP_CRYPTO
| * 09c7a06928 scsi: ufs: exynos: Ensure pre_link() executes before exynos_ufs_phy_init()
| * 731047980d scsi: hisi_sas: Fix I/O errors caused by hardware port ID changes
| * b626bc3c1d ext4: make block validity check resistent to sb bh corruption
| * b14d986413 iommu: Clear iommu-dma ops on cleanup
| * 71c3d43c8f cifs: Fix querying of WSL CHR and BLK reparse points over SMB1
| * 9f8eeac3a6 timekeeping: Add a lockdep override in tick_freeze()
| * 1776d6d019 cifs: Fix encoding of SMB1 Session Setup Kerberos Request in non-UNICODE mode
| * f4cb2c042a nvmet-fc: put ref when assoc->del_work is already scheduled
| * 9635d486b6 nvmet-fc: take tgtport reference only once
| * bb4b487bbd x86/bugs: Don't fill RSB on context switch with eIBRS
| * 3b4fc0785a x86/bugs: Don't fill RSB on VMEXIT with eIBRS+retpoline
| * 5c41b7913f x86/bugs: Use SBPB in write_ibpb() if applicable
| * 6f3e9b2566 selftests/mincore: Allow read-ahead pages to reach the end of the file
| * f1e28d46a0 x86/xen: disable CPU idle and frequency drivers for PVH dom0
| * 5e58b93a12 gpiolib: of: Move Atmel HSMCI quirk up out of the regulator comment
| * fecf44d473 objtool: Stop UNRET validation on UD2
| * ee5521176a nvme: multipath: fix return value of nvme_available_path
| * b9c89c97d7 nvme: re-read ANA log page after ns scan completes
| * 5f3f3087a2 drm/xe/xe3lpg: Apply Wa_14022293748, Wa_22019794406
| * bbf2d06052 drm/amdgpu: Increase KIQ invalidate_tlbs timeout
| * bd12979c19 ACPI PPTT: Fix coding mistakes in a couple of sizeof() calls
| * bff38d184b ACPI: EC: Set ec_no_wakeup for Lenovo Go S
| * 24ede35eb2 nvme: requeue namespace scan on missed AENs
| * 781c870bdc xen: Change xen-acpi-processor dom0 dependency
| * 90dc6c1e3b perf/core: Fix WARN_ON(!ctx) in __free_event() for partial init
| * d6b66c20d5 selftests: ublk: fix test_stripe_04
| * a4e99cd415 cgroup/cpuset: Don't allow creation of local partition over a remote one
| * daed646d3c KVM: s390: Don't use %pK through debug printing
| * 5e7c90294e KVM: s390: Don't use %pK through tracepoints
| * c6c8afdcf8 sched/isolation: Make CONFIG_CPU_ISOLATION depend on CONFIG_SMP
| * e5902d7ec7 kbuild: add dependency from vmlinux to sorttable
| * 3568fd9e44 io_uring: always do atomic put from iowq
| * 2dc0e5ceb3 rtc: pcf85063: do a SW reset if POR failed
| * 18296b5951 9p/trans_fd: mark concurrent read and writes to p9_conn->err
| * c548f95688 9p/net: fix improper handling of bogus negative read/write replies
| * a3b8d8cf51 ntb_hw_amd: Add NTB PCI ID for new gen CPU
| * b5f8b03af5 ntb: reduce stack usage in idt_scan_mws
| * 47ab2caba4 qibfs: fix _another_ leak
| * 69578c7d02 objtool, lkdtm: Obfuscate the do_nothing() pointer
| * 03bb66ede7 objtool, regulator: rk808: Remove potential undefined behavior in rk806_set_mode_dcdc()
| * 777e6735fe objtool, ASoC: codecs: wcd934x: Remove potential undefined behavior in wcd934x_slim_irq_handler()
| * 0485bdf88f objtool, panic: Disable SMAP in __stack_chk_fail()
| * 8b4f2b6389 objtool: Silence more KCOV warnings
| * da780c4a07 um: work around sched_yield not yielding in time-travel mode
| * 0a205fdbb3 thunderbolt: Scan retimers after device router has been enumerated
| * 7fb9a9d2e3 usb: host: xhci-plat: mvebu: use ->quirks instead of ->init_quirk() func
| * 052fb65335 usb: gadget: aspeed: Add NULL pointer check in ast_vhub_init_dev()
| * 2c97354037 phy: rockchip: usbdp: Avoid call hpd_event_trigger in dp_phy_init
| * 9ff59cb815 usb: xhci: Avoid Stop Endpoint retry loop if the endpoint seems Running
| * 2ef4b0e911 dmaengine: dmatest: Fix dmatest waiting less when interrupted
| * 69bb5d420d i3c: master: svc: Add support for Nuvoton npcm845 i3c
| * 635be13606 xhci: Handle spurious events on Etron host isoc enpoints
| * 16a7a8e6c4 usb: xhci: Fix isochronous Ring Underrun/Overrun event handling
| * cbfa55bda1 usb: xhci: Complete 'error mid TD' transfers when handling Missed Service
| * 66046b586c sound/virtio: Fix cancel_sync warnings on uninitialized work_structs
| * f045fd7d46 usb: dwc3: gadget: Avoid using reserved endpoints on Intel Merrifield
| * 2ecae00138 usb: dwc3: gadget: Refactor loop to avoid NULL endpoints
| * 8a5e1d32c6 fs/ntfs3: Fix WARNING in ntfs_extend_initialized_size
| * 8db49e89a7 fs/ntfs3: Keep write operations atomic
| * 523bcab993 usb: host: max3421-hcd: Add missing spi_device_id table
| * 8b7b088925 mailbox: pcc: Always clear the platform ack interrupt first
| * a32ebfa7d8 mailbox: pcc: Fix the possible race in updation of chan_in_use flag
| * b817d2bfd6 bpf: Reject attaching fexit/fmod_ret to __noreturn functions
| * 4131411f42 bpf: Only fails the busy counter check in bpf_cgrp_storage_get if it creates storage
| * 46df1fe944 bpf: bpftool: Setting error code in do_loader()
| * ab57877603 s390/tty: Fix a potential memory leak bug
| * 3b3aa72636 s390/sclp: Add check for get_zeroed_page()
| * 6e026e6050 parisc: PDT: Fix missing prototype warning
| * 4139072087 clk: check for disabled clock-provider in of_clk_get_hw_from_clkspec()
| * c5c833f637 bpf: Fix deadlock between rcu_tasks_trace and event_mutex.
| * 7758e308ae bpf: Fix kmemleak warning for percpu hashmap
| * 0486de3c1b crypto: null - Use spin lock instead of mutex
| * 0195abab4a crypto: lib/Kconfig - Fix lib built-in failure when arch is modular
| * fbea0efa8a crypto: ccp - Add support for PCI device 0x1134
| * eea7d57c4a MIPS: cm: Detect CM quirks from device tree
| * 3da0371494 pinctrl: mcp23s08: Get rid of spurious level interrupts
| * d00d598027 pinctrl: renesas: rza2: Fix potential NULL pointer dereference
| * 1badc279b4 selftests/bpf: Fix stdout race condition in traffic monitor
| * caa559d3f7 USB: wdm: add annotation
| * b8bf49f3f6 USB: wdm: wdm_wwan_port_tx_complete mutex in atomic context
| * 52ae15c665 USB: wdm: close race between wdm_open and wdm_wwan_port_stop
| * eb4973cf6b USB: wdm: handle IO errors in wdm_wwan_port_start
| * 3e52ae347e USB: VLI disk crashes if LPM is used
| * d85b7af3bd usb: quirks: Add delay init quirk for SanDisk 3.2Gen1 Flash Drive
| * 9924ee1bcd usb: quirks: add DELAY_INIT quirk for Silicon Motion Flash Drive
| * 694fdc6a9c usb: dwc3: xilinx: Prevent spike in reset signal
| * 52a7c9d930 usb: dwc3: gadget: check that event count does not exceed event buffer length
| * 17c3984a44 USB: OHCI: Add quirk for LS7A OHCI controller (rev 0x02)
| * 7fb632a131 usb: chipidea: ci_hdrc_imx: implement usb_phy_init() error handling
| * c99ace5965 usb: chipidea: ci_hdrc_imx: fix call balance of regulator routines
| * 887902ca73 usb: chipidea: ci_hdrc_imx: fix usbmisc handling
| * 74cd6e408a usb: cdns3: Fix deadlock when using NCM gadget
| * bce3055b08 usb: xhci: Fix invalid pointer dereference in Etron workaround
| * 1777714865 xhci: Limit time spent with xHC interrupts disabled during bus resume
| * 54c66c7030 USB: serial: simple: add OWON HDS200 series oscilloscope support
| * 2eff976819 USB: serial: option: add Sierra Wireless EM9291
| * ea0d806b94 USB: serial: ftdi_sio: add support for Abacus Electrics Optical Probe
| * 5d29f884fe serial: sifive: lock port in startup()/shutdown() callbacks
| * f6ae572683 serial: msm: Configure correct working mode before starting earlycon
| * 6f021bc008 tty: Require CAP_SYS_ADMIN for all usages of TIOCL_SELMOUSEREPORT
| * f650009358 firmware: stratix10-svc: Add of_platform_default_populate()
| * 4fb75c0ccc misc: microchip: pci1xxxx: Fix incorrect IRQ status handling during ack
| * 12cc2193f2 misc: microchip: pci1xxxx: Fix Kernel panic during IRQ handler registration
| * 3670dee376 char: misc: register chrdev region with all possible minors
| * 26df754de5 KVM: x86: Take irqfds.lock when adding/deleting IRQ bypass producer
| * b5de7ac74f KVM: x86: Reset IRTE to host control if *new* route isn't postable
| * a22fe6f843 KVM: x86: Explicitly treat routing entry type changes as changes
| * 3e243378f2 mei: vsc: Fix fortify-panic caused by invalid counted_by() use
| * 34fafded1c mei: me: add panther lake H DID
| * 1f439fe4d8 scsi: Improve CDL control
| * b39bb3b4eb USB: storage: quirk for ADATA Portable HDD CH94
| * 40554c0f74 ata: libata-scsi: Fix ata_msense_control_ata_feature()
| * aa5778d06a ata: libata-scsi: Fix ata_mselect_control_ata_feature() return type
| * ef2d6c6346 ata: libata-scsi: Improve CDL control
| * df1a5d5c61 mcb: fix a double free bug in chameleon_parse_gdd()
| * 4c5f6925e2 cxl/core/regs.c: Skip Memory Space Enable check for RCD and RCH Ports
| * f3cd533c3a KVM: SVM: Allocate IR data using atomic allocation
| * 7a8a6b627f io_uring: fix 'sync' handling of io_fallback_tw()
| * 74d9e20187 LoongArch: KVM: Fix PMU pass-through issue if VM exits to host finally
| * be83fd71ac LoongArch: KVM: Fully clear some CSRs when VM reboot
| * 3b7f341eee LoongArch: Remove a bogus reference to ZONE_DMA
| * 51424fd171 LoongArch: Return NULL from huge_pte_offset() for invalid PMD
| * 93b7872d33 LoongArch: Handle fp, lsx, lasx and lbt assembly symbols
| * 3939d6f29d irqchip/gic-v2m: Prevent use after free of gicv2m_get_fwnode()
| * 140f05cbbf x86/insn: Fix CTEST instruction decoding
| * 1ae30272b9 drm/amd/display: Force full update in gpu reset
| * 3ff83378b6 drm/amd/display: Fix gpu reset in multidisplay config
| * 92b58c671b drm: panel: jd9365da: fix reset signal polarity in unprepare
| * ea532ba5e1 rust: firmware: Use `ffi::c_char` type in `FwFunc`
| * 1909540037 scsi: mpi3mr: Fix pending I/O counter
| * 9c31ac7819 net: phy: microchip: force IRQ polling mode for lan88xx
| * c2a6b4d78c net: selftests: initialize TCP header and skb payload with zero
| * d6a9c4e6f9 xen-netfront: handle NULL returned by xdp_convert_buff_to_frame()
| * 64b816a6c4 crypto: atmel-sha204a - Set hwrng quality to lowest possible
| * 28401a63c0 sched_ext: Use kvzalloc for large exit_dump allocation
| * 30c0d6e778 virtio_console: fix missing byte order handling for cols and rows
| * e17bc10bf3 netfilter: fib: avoid lookup if socket is available
| * f33b678543 KVM: SVM: Disable AVIC on SNP-enabled system without HvInUseWrAllowed feature
| * 9b34dffcd9 LoongArch: Make do_xyz() exception handlers more robust
| * a556bb5178 LoongArch: Make regs_irqs_disabled() more clear
| * 08bbdcb35c LoongArch: Select ARCH_USE_MEMTEST
| * 8d37031464 perf/x86: Fix non-sampling (counting) events on certain x86 platforms
| * 955f9ede52 bpf: Add namespace to BPF internal symbols
| * 3decda1a3c splice: remove duplicate noinline from pipe_clear_nowait
| * bcf6d3158c riscv: uprobes: Add missing fence.i after building the XOL buffer
| * 4715ab8435 riscv: Replace function-like macro by static inline function
| * e22010c3b8 iommu/amd: Return an error if vCPU affinity is set for non-vCPU IRTE
| * 7f24ea6a46 block: never reduce ra_pages in blk_apply_bdi_limits
| * 66d7702b42 pds_core: make wait_context part of q_info
| * ff207e83da pds_core: Remove unnecessary check in pds_client_adminq_cmd()
| * 6702f5c6b2 pds_core: handle unsupported PDS_CORE_CMD_FW_CONTROL result
| * 2982e07ad7 pds_core: Prevent possible adminq overflow/stuck condition
| * dd6c299390 net: dsa: mt7530: sync driver-specific behavior of MT7531 variants
| * c6f0350441 net_sched: hfsc: Fix a potential UAF in hfsc_dequeue() too
| * 86cd4641c7 net_sched: hfsc: Fix a UAF vulnerability in class handling
| * a61afd5482 fix a couple of races in MNT_TREE_BENEATH handling by do_move_mount()
| * 4fb743ee21 net: ethernet: mtk_eth_soc: net: revise NETSYSv3 hardware configuration
| * 0ceef62a32 tipc: fix NULL pointer dereference in tipc_mon_reinit_self()
| * 41143e7105 net: phy: leds: fix memory leak
| * 3340654bbf net: lwtunnel: disable BHs when required
| * eeab661803 scsi: ufs: core: Add NULL check in ufshcd_mcq_compl_pending_transfer()
| * 29daa63f2c scsi: core: Clear flags for scsi_cmnd that did not complete
| * fdd2a03561 net/mlx5: Move ttc allocation after switch case to prevent leaks
| * 0b682680b1 net/mlx5: Fix null-ptr-deref in mlx5_create_{inner_,}ttc_table()
| * ef258a15e7 vhost-scsi: Fix vhost_scsi_send_status()
| * 0ac4643bf2 vhost-scsi: Fix vhost_scsi_send_bad_target()
| * 461c258ba7 vhost-scsi: Add better resource allocation failure handling
| * 5d92e582d1 cgroup/cpuset-v1: Add missing support for cpuset_v2_mode
| * 9a447f748f btrfs: zoned: return EIO on RAID1 block group write pointer mismatch
| * c8a0c38beb btrfs: avoid page_lockend underflow in btrfs_punch_hole_lock_range()
| * 6c1c665805 cpufreq: fix compile-test defaults
| * ef56c130f6 cpufreq: Do not enable by default during compile testing
| * dbe413a8cd cpufreq: cppc: Fix invalid return value in .get() callback
| * 7d002f5914 scsi: ufs: mcq: Add NULL check in ufshcd_mcq_abort()
| * 28fbd7b13b cpufreq: scpi: Fix null-ptr-deref in scpi_cpufreq_get_rate()
| * 7ccfadfb25 cpufreq: scmi: Fix null-ptr-deref in scmi_cpufreq_get_rate()
| * fbdba5f374 cpufreq: apple-soc: Fix null-ptr-deref in apple_soc_cpufreq_get_rate()
| * 16c8aa5de1 dma/contiguous: avoid warning about unused size_bytes
| * 40bf7f560c cpufreq: sun50i: prevent out-of-bounds access
| * aef37505c4 ceph: Fix incorrect flush end position calculation
| * 984830d902 lib/Kconfig.ubsan: Remove 'default UBSAN' from UBSAN_INTEGER_WRAP
| * b26ac56370 drm/amd/display/dml2: use vzalloc rather than kzalloc
| * 50ec8c2428 drm/amd/display: Fix unnecessary cast warnings from checkpatch
| * 0fdb612c20 drm/xe/bmg: Add one additional PCI ID
| * c187aaa9e7 net/niu: Niu requires MSIX ENTRY_DATA fields touch before entry reads
| * 869749e481 scsi: ufs: exynos: Disable iocc if dma-coherent property isn't set
| * 56f3327cdd scsi: ufs: exynos: Move UFS shareability value to drvdata
| * 661380d982 scsi: ufs: exynos: Add gs101_ufs_drv_init() hook and enable WriteBooster
| * 0e76176edc scsi: ufs: exynos: Remove superfluous function parameter
| * ffcdfaecd4 scsi: ufs: exynos: Remove empty drv_init method
| * 1aec4d14cf ksmbd: fix use-after-free in __smb2_lease_break_noti()
| * 0fc403192d ksmbd: browse interfaces list on FSCTL_QUERY_INTERFACE_INFO IOCTL
| * 8d2c1acc88 ksmbd: add netdev-up/down event debug print
| * 0772765ac8 ksmbd: use __GFP_RETRY_MAYFAIL
| * 60cb4dfcf7 accel/ivpu: Fix the NPU's DPU frequency calculation
| * 27fcf64781 accel/ivpu: Add auto selection logic for job scheduler
| * 35ba7b2d4d PCI/MSI: Add an option to write MSIX ENTRY_DATA before any reads
| * 46d3575209 PCI/MSI: Handle the NOMASK flag correctly for all PCI/MSI backends
| * aad1246896 PCI/MSI: Convert pci_msi_ignore_mask to per MSI domain flag
| * 8fe536f102 scsi: ufs: qcom: fix dev reference leaked through of_qcom_ice_get
| * a122b3b1f5 of: resolver: Fix device node refcount leakage in of_resolve_phandles()
| * 05576e1304 of: resolver: Simplify of_resolve_phandles() using __free()
| * 56ddf0023b arm64: dts: ti: k3-j784s4-j742s2-main-common: Fix serdes_ln_ctrl reg-masks
| * 107b05f540 arm64: dts: ti: Refactor J784s4 SoC files to a common file
| * bde067b82a iio: adc: ad7768-1: Fix conversion result sign
| * 68565706b5 iio: adc: ad7768-1: Move setting of val a bit later to avoid unnecessary return value check
| * 8f229785c5 net: dsa: mv88e6xxx: fix VTU methods for 6320 family
| * 2afa5ea7c4 block: make sure ->nr_integrity_segments is cloned in blk_rq_prep_clone
| * ed7535b141 block: remove the ioprio field from struct request
| * 3e12e8c273 block: remove the write_hint field from struct request
| * 575601d08a media: ov08x40: Add missing ov08x40_identify_module() call on stream-start
| * 9c00d54454 media: ov08x40: Move ov08x40_identify_module() function up
| * fc96a720d8 media: i2c: imx214: Fix link frequency validation
| * 5a5ab62e4a media: i2c: imx214: Check number of lanes from device tree
| * 2a60b6bef4 media: i2c: imx214: Replace register addresses with macros
| * 694d85794a media: i2c: imx214: Convert to CCI register access helpers
| * a9aa210989 media: i2c: imx214: Simplify with dev_err_probe()
| * d3a38834b2 media: i2c: imx214: Use subdev active state
| * 9d5752b853 PM: EM: Address RCU-related sparse warnings
| * db3b3964af PM: EM: use kfree_rcu() to simplify the code
| * 27ce35d80a mmc: sdhci-msm: fix dev reference leaked through of_qcom_ice_get
| * 311a651fbb soc: qcom: ice: introduce devm_of_qcom_ice_get
| * 1c9798bf81 mm/vmscan: don't try to reclaim hwpoison folio
| * 0312735402 tracing: Verify event formats that have "%*p.."
| * 0b603e7759 tracing: Add __print_dynamic_array() helper
| * e62c31802d module: sign with sha512 instead of sha1 by default
* | a4f1e3a7a1 Revert "bpf: track changes_pkt_data property for global functions"
* | d9ca1c7ed5 Revert "selftests/bpf: test for changing packet data from global functions"
* | c7d660d083 Revert "bpf: check changes_pkt_data property for extension programs"
* | 551fd048d4 Revert "selftests/bpf: freplace tests for tracking of changes_packet_data"
* | 9876f5d506 Revert "selftests/bpf: validate that tail call invalidates packet pointers"
* | 40e8b9169b Revert "bpf: fix null dereference when computing changes_pkt_data of prog w/o subprogs"
* | c63e815d06 Revert "selftests/bpf: extend changes_pkt_data with cases w/o subprograms"
* | b5fe9d591c Revert "driver core: bus: add irq_get_affinity callback to bus_type"
* | d22fe9eaa4 Revert "blk-mq: introduce blk_mq_map_hw_queues"
* | cbab53e120 Revert "scsi: replace blk_mq_pci_map_queues with blk_mq_map_hw_queues"
* | 38f1a2afb6 Revert "scsi: smartpqi: Use is_kdump_kernel() to check for kdump"
* | ee0d567613 Merge 6.12.25 into android16-6.12-lts
|\|
| * ef4999852d Linux 6.12.25
| * f78507c1ef block: make struct rq_list available for !CONFIG_BLOCK
| * 473c534735 selftests/bpf: extend changes_pkt_data with cases w/o subprograms
| * f0946dcccb bpf: fix null dereference when computing changes_pkt_data of prog w/o subprogs
| * 1062b7612c selftests/bpf: validate that tail call invalidates packet pointers
| * d0e94a5bb9 selftests/bpf: freplace tests for tracking of changes_packet_data
| * 3846e2bea5 bpf: check changes_pkt_data property for extension programs
| * fa1fbb67e0 selftests/bpf: test for changing packet data from global functions
| * 1d572c6048 bpf: track changes_pkt_data property for global functions
| * d30b9c5950 bpf: add find_containing_subprog() utility function
| * ab7edf42ce wifi: ath12k: Fix invalid entry fetch in ath12k_dp_mon_srng_process
| * cec26d6bf3 MIPS: ds1287: Match ds1287_set_base_clock() function types
| * 305dd911de MIPS: cevt-ds1287: Add missing ds1287.h include
| * 21c6a0ed6f MIPS: dec: Declare which_prom() as static
| * 45e19beb96 Revert "wifi: ath12k: Fix invalid entry fetch in ath12k_dp_mon_srng_process"
| * b906c1ad25 mm/vma: add give_up_on_oom option on modify/merge, use in uffd release
| * 7e2d224939 block: don't reorder requests in blk_add_rq_to_plug
| * 2ad0f19a4e block: add a rq_list type
| * 5b34f40cda block: remove rq_list_move
| * 3dd1af8ce3 nvmet-fc: Remove unused functions
| * 29b2d6f53c drm/amd/display: Temporarily disable hostvm on DCN31
| * 628e6c4521 LoongArch: Eliminate superfluous get_numa_distances_cnt()
| * 66d182770f efi/libstub: Bump up EFI_MMAP_NR_SLACK_SLOTS to 32
| * 59a30b981a misc: pci_endpoint_test: Fix 'irq_type' to convey the correct type
| * 0557e70e2a misc: pci_endpoint_test: Avoid issue of interrupts remaining after request_irq error
| * deee01acc6 selftests/bpf: Fix raw_tp null handling test
| * e2a9f73ee4 md: fix mddev uaf while iterating all_mddevs list
| * 6ea2e8743e platform/x86: msi-wmi-platform: Workaround a ACPI firmware bug
| * 1c9e272f98 platform/x86: msi-wmi-platform: Rename "data" variable
| * 3802df8552 kbuild: Add '-fno-builtin-wcslen'
| * 0f1ee79b0f scripts: generate_rust_analyzer: Add ffi crate
| * c1a485c46c cpufreq: Reference count policy in cpufreq_update_limits()
| * 686d8f7b59 arm64/boot: Enable EL2 requirements for FEAT_PMUv3p9
| * 14eacc808e arm64/sysreg: Add register fields for HFGWTR2_EL2
| * 2ef32d984d arm64/sysreg: Add register fields for HFGRTR2_EL2
| * c415127454 arm64/sysreg: Add register fields for HFGITR2_EL2
| * 051eccf717 arm64/sysreg: Add register fields for HDFGWTR2_EL2
| * 7403602616 arm64/sysreg: Add register fields for HDFGRTR2_EL2
| * e1a6acacf1 arm64/sysreg: Update register fields for ID_AA64MMFR0_EL1
| * effb4d79b3 drm/mgag200: Fix value in <VBLKSTR> register
| * 7f21bfd6fc drm/amdgpu: fix warning of drm_mm_clean
| * a43e53e310 drm/xe: Set LRC addresses before guc load
| * 65dc4e3d5b drm/xe/userptr: fix notifier vs folio deadlock
| * e4ed75e974 drm/xe/dma_buf: stop relying on placement in unmap
| * e97bf44115 drm/amd/display: Add HP Probook 445 and 465 to the quirk list for eDP on DP1
| * a5c9107a3e drm/amd/display: Protect FPU in dml2_init()/dml21_init()
| * 9cb744fbee drm/amd/display: Do not enable Replay and PSR while VRR is on in amdgpu_dm_commit_planes()
| * a53d959fe6 drm/amdgpu: immediately use GTT for new allocations
| * 4b171d4cbf drm/i915/gvt: fix unterminated-string-initialization warning
| * 28477f701b drm/xe: Fix an out-of-bounds shift when invalidating TLB
| * b2c11fea26 drm/sti: remove duplicate object names
| * c90b95e12e drm/imagination: take paired job reference
| * 490c30fd55 drm/imagination: fix firmware memory leaks
| * 6e2c805996 drm/nouveau: prime: fix ttm_bo_delayed_delete oops
| * 91b646a0b2 drm/amdgpu/dma_buf: fix page_link check
| * 228e98e202 drm/amdgpu/mes11: optimize MES pipe FW version fetching
| * 596284026c drm/amd/display: Protect FPU in dml21_copy()
| * 74d6fba60f drm/amd/display: Protect FPU in dml2_validate()/dml21_validate()
| * fe19e04cd9 drm/amd/display: Add HP Elitebook 645 to the quirk list for eDP on DP1
| * 2ac5f466f6 drm/xe: Use local fence in error path of xe_migrate_clear
| * a37e01fe60 drm/i915/vrr: Add vrr.vsync_{start, end} in vrr_params_changed
| * 2b00b32e61 drm/amdgpu/mes12: optimize MES pipe FW version fetching
| * 42f7b5d12c drm/amd/pm/powerplay/hwmgr/vega20_thermal: Prevent division by zero
| * fb803d4bb9 drm/amd/pm/swsmu/smu13/smu_v13_0: Prevent division by zero
| * 8e9c4f8d19 drm/amd/pm/powerplay/hwmgr/smu7_thermal: Prevent division by zero
| * 63a1504001 drm/amd/pm/smu11: Prevent division by zero
| * bd4d90adbc drm/amd/pm/powerplay: Prevent division by zero
| * 6413fed016 drm/amd/pm: Prevent division by zero
| * 2a2b7b6f90 drm/amd/display: Increase vblank offdelay for PSR panels
| * 776253d981 drm/amd/display: Actually do immediate vblank disable
| * b542559343 drm/amd: Handle being compiled without SI or CIK support better
| * 0363c03672 drm/amd/display: prevent hang on link training fail
| * 531d463364 drm/amdgpu: Prefer shadow rom when available
| * 68b591d64d drm/msm/a6xx: Fix stale rpmh votes from GPU
| * 359f6cffae drm/msm/dsi: Add check for devm_kstrdup()
| * 31efeca2ef drm/ast: Fix ast_dp connection status
| * b33386fabb drm/repaper: fix integer overflows in repeat functions
| * de67afd688 perf/x86/intel/uncore: Fix the scale of IIO free running counters on SPR
| * c5e1570322 perf/x86/intel/uncore: Fix the scale of IIO free running counters on ICX
| * 8d19c4a3b8 perf/x86/intel/uncore: Fix the scale of IIO free running counters on SNR
| * 56fdbc0912 perf/x86/intel: Allow to update user space GPRs from PEBS records
| * c7b43f09dd platform/x86: amd: pmf: Fix STT limits
| * 42ded70c1a RAS/AMD/FMPM: Get masked address
| * b2748ae609 RAS/AMD/ATL: Include row[13] bit in row retirement
| * d23fd7a539 RDMA/cma: Fix workqueue crash in cma_netevent_work_handler
| * 6dd9ede5c5 scsi: ufs: exynos: Ensure consistent phy reference counts
| * 80b2ad1215 scsi: megaraid_sas: Block zero-length ATA VPD inquiry
| * 6360e4f850 x86/boot/sev: Avoid shared GHCB page for early memory acceptance
| * 519718a338 x86/cpu/amd: Fix workaround for erratum 1054
| * a66b6b07d0 x86/microcode/AMD: Extend the SHA check to Zen5, block loading of any unreleased standalone Zen5 microcode patches
| * c3e31d6139 virtiofs: add filesystem context source name check
| * 5683eaf4ee tracing: Fix filter string testing
| * 5f878db827 string: Add load_unaligned_zeropad() code path to sized_strscpy()
| * 9042efa7f1 smb3 client: fix open hardlink on deferred close file error
| * 8baa747193 slab: ensure slab->obj_exts is clear in a newly allocated slab page
| * 824b7ad9cf selftests/mm: generate a temporary mountpoint for cgroup filesystem
| * 3f1c81ae13 riscv: Avoid fortify warning in syscall_get_arguments()
| * f761eeefd5 Revert "smb: client: fix TCP timers deadlock after rmmod"
| * 2aa10d26b6 Revert "smb: client: Fix netns refcount imbalance causing leaks and use-after-free"
| * 2a879da5c3 ksmbd: fix the warning from __kernel_write_iter
| * 396d6e4485 ksmbd: Prevent integer overflow in calculation of deadtime
| * d54ab1520d ksmbd: fix use-after-free in smb_break_all_levII_oplock()
| * 6e30c0e102 ksmbd: Fix dangling pointer in krb_authenticate
| * b9e3579213 ovl: don't allow datadir only
| * 029458063e mm: fix apply_to_existing_page_range()
| * 8338e0723f mm: fix filemap_get_folios_contig returning batches of identical folios
| * b609a60e31 mm/gup: fix wrongly calculated returned value in fault_in_safe_writeable()
| * 4f34d6f979 mm/compaction: fix bug in hugetlb handling pathway
| * c45ba83935 loop: LOOP_SET_FD: send uevents for partitions
| * 694521cb3f loop: properly send KOBJ_CHANGED uevent for disk device
| * 56dfffea9f isofs: Prevent the use of too small fid
| * 1355b5ca47 i2c: cros-ec-tunnel: defer probe if parent EC is not present
| * 84e8719c08 hfs/hfsplus: fix slab-out-of-bounds in hfs_bnode_read_key
| * 8132682856 crypto: caam/qi - Fix drv_ctx refcount bug
| * f73731983f cpufreq/sched: Explicitly synchronize limits_changed flag handling
| * d3995ff08c btrfs: correctly escape subvol in btrfs_show_options()
| * b62b1406bb Bluetooth: vhci: Avoid needless snprintf() calls
| * 569bbe2fc7 Bluetooth: l2cap: Process valid commands in too long frame
| * bde7abe8cf drm/msm/a6xx+: Don't let IB_SIZE overflow
| * 26d5e2377f ftrace: fix incorrect hash size in register_ftrace_direct()
| * 2665a3b1ab i2c: atr: Fix wrong include
| * a7fce086f6 nfsd: decrease sc_count directly if fail to queue dl_recall
| * 33c0f51f1a nfs: add missing selections of CONFIG_CRC32
| * e22c8b99c8 dma-buf/sw_sync: Decrement refcount on error in sw_sync_ioctl_get_deadline()
| * 81a566a920 drm/v3d: Fix Indirect Dispatch configuration for V3D 7.1.6 and later
| * c38a005e6e block: integrity: Do not call set_page_dirty_lock()
| * db42e6f28b asus-laptop: Fix an uninitialized variable
| * c0ce01e0ff ASoC: qcom: Fix sc7280 lpass potential buffer overflow
| * 2612d55482 ASoC: Intel: sof_sdw: Add quirk for Asus Zenbook S16
| * 2b72a9e327 ASoC: codecs:lpass-wsa-macro: Fix logic of enabling vi channels
| * 43da9eae1b ASoC: codecs:lpass-wsa-macro: Fix vi feedback rate
| * b2e56391f6 ASoC: fsl: fsl_qmc_audio: Reset audio data pointers on TRIGGER_START event
| * f2e2926e9e Revert "PCI: Avoid reset when disabled via sysfs"
| * 28da4dd840 writeback: fix false warning in inode_to_wb()
| * c1aa71716a rust: kbuild: use `pound` to support GNU Make < 4.3
| * baf02dd01e rust: disable `clippy::needless_continue`
| * 4c353fca62 rust: kasan/kbuild: fix missing flags on first build
| * e8980258c0 objtool/rust: add one more `noreturn` Rust function for Rust 1.86.0
| * 00a1bdb157 cpufreq/sched: Fix the usage of CPUFREQ_NEED_UPDATE_LIMITS
| * 27e0143f4d riscv: KGDB: Remove ".option norvc/.option rvc" for kgdb_compiled_break
| * 999bd7bb21 riscv: KGDB: Do not inline arch_kgdb_breakpoint()
| * 8533450211 kunit: qemu_configs: SH: Respect kunit cmdline
| * 3583394b85 riscv: module: Allocate PLT entries for R_RISCV_PLT32
| * a068ea0000 riscv: module: Fix out-of-bounds relocation access
| * 1d5a8e1fec riscv: Properly export reserved regions in /proc/iomem
| * c8c3f8e7a7 riscv: Use kvmalloc_array on relocation_hashtable
| * cfdcd213dd net: ethernet: mtk_eth_soc: revise QDMA packet scheduler settings
| * 7ec0265710 net: ethernet: mtk_eth_soc: correct the max weight of the queue limit for 100Mbps
| * b524a14ec1 net: ethernet: mtk_eth_soc: reapply mdc divider on reset
| * da5035d7ae net: ti: icss-iep: Fix possible NULL pointer dereference for perout request
| * d028c6a805 net: ti: icss-iep: Add phase offset configuration for perout signal
| * 352e5a6709 net: ti: icss-iep: Add pwidth configuration for perout signal
| * 62b795c22d ptp: ocp: fix start time alignment in ptp_ocp_signal_set
| * a3e4b6ad5f net: dsa: avoid refcount warnings when ds->ops->tag_8021q_vlan_del() fails
| * 5c8066fbdb net: dsa: free routing table on probe failure
| * 8fcc1e6f80 net: dsa: clean up FDB, MDB, VLAN entries on unbind
| * 9ee6d3a368 net: dsa: mv88e6xxx: fix -ENOENT when deleting VLANs and MST is unsupported
| * 3665695e35 net: dsa: mv88e6xxx: avoid unregistering devlink regions which were never registered
| * 635863d93d net: txgbe: fix memory leak in txgbe_probe() error path
| * d9ecaee617 net: bridge: switchdev: do not notify new brentries as changed
| * ad13e95cbc net: b53: enable BPDU reception for management port
| * 1f6916c554 netlink: specs: rt-link: adjust mctp attribute naming
| * 250a2fc77a netlink: specs: rt-link: add an attr layer around alt-ifname
| * dafb6e433a cxgb4: fix memory leak in cxgb4_init_ethtool_filters() error path
| * cb74d5b837 ata: libata-sata: Save all fields from sense data descriptor
| * 78253d44e9 loop: stop using vfs_iter_{read,write} for buffered I/O
| * 0175902f6e loop: aio inherit the ioprio of original request
| * 21e70f694b eth: bnxt: fix missing ring index trim on error path
| * cd64ae07c4 net: ethernet: ti: am65-cpsw: fix port_np reference counting
| * 8335a3feb9 net: ngbe: fix memory leak in ngbe_probe() error path
| * 0b7d94164d can: rockchip_canfd: fix broken quirks checks
| * be80768d4f net: openvswitch: fix nested key length validation in the set() action
| * 15baba1095 netlink: specs: ovs_vport: align with C codegen capabilities
| * 41e43134dd block: fix resource leak in blk_register_queue() error path
| * 3f899bd6dd net: mctp: Set SOCK_RCU_FREE
| * 61765e1b41 ethtool: cmis_cdb: use correct rpl size in ethtool_cmis_module_poll()
| * 01ad16ddf9 pds_core: fix memory leak in pdsc_debugfs_add_qcq()
| * 45300268e5 test suite: use %zu to print size_t
| * 86d5243ea6 smc: Fix lockdep false-positive for IPPROTO_SMC.
| * 688f85d1ba dt-bindings: soc: fsl: fsl,ls1028a-reset: Fix maintainer entry
| * 724d26215e igc: add lock preventing multiple simultaneous PTM transactions
| * c15065acc1 igc: cleanup PTP module if probe fails
| * 698182f03f igc: handle the IGC_PTP_ENABLED flag correctly
| * 8058c895c7 igc: move ktime snapshot into PTM retry loop
| * b74137e277 igc: increase wait time before retrying PTM
| * f3516229cd igc: fix PTM cycle trigger logic
| * 5a3ff97d12 Revert "wifi: mac80211: Update skb's control block key in ieee80211_tx_dequeue()"
| * fa0d99648c xen: fix multicall debug feature
| * b02c2ac2f3 ipv6: add exception routes to GC list in rt6_insert_exception
| * d49798ecd2 Bluetooth: l2cap: Check encryption key size on incoming connection
| * aaf356f872 Bluetooth: btrtl: Prevent potential NULL dereference
| * 6ad0acb56b Bluetooth: hci_event: Fix sending MGMT_EV_DEVICE_FOUND for invalid address
| * 0d81bb58a2 RDMA/core: Silence oversized kvmalloc() warning
| * 0ba76fb628 ASoC: cs42l43: Reset clamp override on jack removal
| * 36e0ea1f96 ALSA: hda/realtek - Fixed ASUS platform headset Mic issue
| * c01f3741d1 ALSA: hda/realtek: Workaround for resume on Dell Venue 11 Pro 7130
| * 34875b7a5d ALSA: hda: improve bass speaker support for ASUS Zenbook UM5606WA
| * 9b019be589 ALSA: hda/cirrus_scodec_test: Don't select dependencies
| * 7060bf9100 RDMA/hns: Fix wrong maximum DMA segment size
| * 48e5aa2225 RDMA/usnic: Fix passing zero to PTR_ERR in usnic_ib_pci_probe()
| * 6104cc65fe ovl: remove unused forward declaration
| * bbad32b836 crypto: tegra - Fix IV usage for AES ECB
| * 9ebc2053b8 crypto: tegra - Do not use fixed size buffers
| * 28ec10e58d crypto: tegra - remove redundant error check on ret
| * 23fde311ea ASoC: Intel: avs: Fix null-ptr-deref in avs_component_probe()
| * dcba15ed08 ASoC: dwc: always enable/disable i2s irqs
| * eeeba7f43a md/md-bitmap: fix stats collection for external bitmaps
| * 54e106047f md/raid10: fix missing discard IO accounting
| * 7cc670e8eb scsi: smartpqi: Use is_kdump_kernel() to check for kdump
| * 5e8438fd7f scsi: replace blk_mq_pci_map_queues with blk_mq_map_hw_queues
| * fe2bdefe86 blk-mq: introduce blk_mq_map_hw_queues
| * 5ec9039702 driver core: bus: add irq_get_affinity callback to bus_type
| * 6884cb2f3b scsi: iscsi: Fix missing scsi_host_put() in error path
| * 52f224009c wifi: wl1251: fix memory leak in wl1251_tx_work
| * a8df245b5b wifi: mac80211: Purge vif txq in ieee80211_do_stop()
| * 159499c134 wifi: mac80211: Update skb's control block key in ieee80211_tx_dequeue()
| * a9682bfef2 wifi: at76c50x: fix use after free access in at76_disconnect
| * 1773fbf7c0 scsi: hisi_sas: Enable force phy when SATA disk directly connected
* | 72655c8488 Merge branch 'android16-6.12' into branch 'android16-6.12-lts'
* | a23d20a6c2 UPSTREAM: arm64: errata: Add missing sentinels to Spectre-BHB MIDR arrays
* | f56453cbd7 Merge 6.12.24 into android16-6.12-lts
|\|
| * b6efa8ce22 Linux 6.12.24
| * ae5a6a0b42 HSI: ssi_protocol: Fix use after free vulnerability in ssi_protocol Driver Due to Race Condition
| * bdbecb2bf5 s390/cpumf: Fix double free on error in cpumf_pmu_event_init()
| * 281782d2c6 Bluetooth: hci_uart: Fix another race during initialization
| * f87626a55c media: mediatek: vcodec: mark vdec_vp9_slice_map_counts_eob_coef noinline
| * 9c03f6194e kbuild: Add '-fno-builtin-wcslen'
| * 5f494f4823 libbpf: Prevent compiler warnings/errors
| * bd6eae1f30 x86/e820: Fix handling of subpage regions when calculating nosave ranges in e820__register_nosave_regions()
| * 6a59b70fe7 nfsd: don't ignore the return code of svc_proc_register()
| * b2b18a9f68 NFSD: Fix CB_GETATTR status fix
| * 560c031896 NFSD: fix decoding in nfs4_xdr_dec_cb_getattr
| * 7005fdceff ACPI: platform-profile: Fix CFI violation when accessing sysfs files
| * 20867f0948 x86/paravirt: Move halt paravirt calls under CONFIG_PARAVIRT
| * 5d9484cd37 iommufd: Fail replace if device has not been attached
| * 6d11543bf3 iommufd: Make attach_handle generic than fault specific
| * 9ca4fe3574 arm64: errata: Add newer ARM cores to the spectre_bhb_loop_affected() lists
| * d25a240c5a thermal/drivers/mediatek/lvts: Disable Stage 3 thermal threshold
| * 0131251d93 thermal/drivers/mediatek/lvts: Disable monitor mode during suspend
| * 9580b60365 selftests: mptcp: fix incorrect fd checks in main_loop
| * 2f1b4d6725 selftests: mptcp: close fd_in before returning in main_loop
| * 0f91e4f69f sched_ext: create_dsq: Return -EEXIST on duplicate request
| * 7a30bbd36c s390: Fix linker error when -no-pie option is unavailable
| * f268ee2fbb s390/virtio_ccw: Don't allocate/assign airqs for non-existing queues
| * 05a0f9c407 s390/pci: Fix zpci_bus_is_isolated_vf() for non-VFs
| * 92ca7270fe ring-buffer: Use flush_kernel_vmap_range() over flush_dcache_folio()
| * de08212061 pinctrl: samsung: add support for eint_fltcon_offset
| * c1368383cd pinctrl: qcom: Clear latched interrupt status when changing IRQ type
| * beb9a5cb7a phy: freescale: imx8m-pcie: assert phy reset and perst in power off
| * 869202291a PCI: Fix wrong length of devres array
| * 9707d0c932 PCI: Fix reference leak in pci_register_host_bridge()
| * d69ad6e1a5 PCI: Fix reference leak in pci_alloc_child_bus()
| * e4a1d7defb PCI: pciehp: Avoid unnecessary device replacement check
| * ce9643a541 PCI: j721e: Fix the value of .linkdown_irq_regfield for J784S4
| * 71bf0769a6 PCI: brcmstb: Fix missing of_node_put() in brcm_pcie_probe()
| * 712d84459a of/irq: Fix device node refcount leakages in of_irq_init()
| * d0f25a9977 of/irq: Fix device node refcount leakage in API irq_of_parse_and_map()
| * 29cb94963c of/irq: Fix device node refcount leakages in of_irq_count()
| * 3540164c75 of/irq: Fix device node refcount leakage in API of_irq_parse_raw()
| * dc83eccc93 of/irq: Fix device node refcount leakage in API of_irq_parse_one()
| * 60faeef98b ntb: use 64-bit arithmetic for the MSI doorbell mask
| * 34baf1cfd6 net: mana: Switch to page pool for jumbo frames
| * a2acc67d61 misc: pci_endpoint_test: Fix displaying 'irq_type' after 'request_irq' error
| * e98f77f74c selftests/landlock: Add a new test for setuid()
| * 76ab50fa6e selftests/landlock: Split signal_scoping_threads tests
| * b017f2846a landlock: Prepare to add second errata
| * 332facfa80 landlock: Always allow signals between threads of the same process
| * 7dd7f87e07 landlock: Add erratum for TCP fix
| * ea980ea4d1 landlock: Add the errata interface
| * 9b0d24fa64 landlock: Move code to ease future backports
| * 7bc5c36037 KVM: x86: Acquire SRCU in KVM_GET_MP_STATE to protect guest memory accesses
| * bbf821c35d KVM: x86: Explicitly zero-initialize on-stack CPUID unions
| * 99b99032a8 KVM: PPC: Enable CAP_SPAPR_TCE_VFIO on pSeries KVM guests
| * fae0a8796c KVM: Allow building irqbypass.ko as as module when kvm.ko is a module
| * 3bc2208c74 gve: handle overflow when reporting TX consumed descriptors
| * 62024ad4c5 gpio: zynq: Fix wakeup source leaks on device unbind
| * 2d66517135 gpio: tegra186: fix resource handling in ACPI probe path
| * e66fb9b4e9 ftrace: Properly merge notrace hashes
| * 1fce9574b9 ftrace: Add cond_resched() to ftrace_graph_set_hash()
| * 3e467f1c74 dt-bindings: coresight: qcom,coresight-tpdm: Fix too many 'reg'
| * 58c453801b dt-bindings: coresight: qcom,coresight-tpda: Fix too many 'reg'
| * 74f01c2ca8 dm-verity: fix prefetch-vs-suspend race
| * dd91458a84 dm-integrity: fix non-constant-time tag verification
| * ba42f98f09 dm-integrity: set ti->error on memory allocation failure
| * a1a4fdc33d dm-ebs: fix prefetch-vs-suspend race
| * 08deafddfc dlm: fix error if active rsb is not hashed
| * b77f8a17ef dlm: fix error if inactive rsb is not hashed
| * eaa7014aec crypto: ccp - Fix uAPI definitions of PSP errors
| * 5116b340cf crypto: ccp - Fix check for the primary ASP device
| * 1f9648e246 clk: qcom: gdsc: Set retain_ff before moving to HW CTRL
| * 4d6fb2a43f clk: qcom: gdsc: Capture pm_genpd_add_subdomain result code
| * 12ef07c4bf clk: qcom: gdsc: Release pm subdomains in reverse add order
| * 809e83a575 clk: qcom: clk-branch: Fix invert halt status bit check for votable clocks
| * 56c29847bc clk: renesas: r9a07g043: Fix HP clock source for RZ/Five
| * 4ed194d9bb cifs: Ensure that all non-client-specific reparse points are processed by the server
| * 2a24040597 cifs: fix integer overflow in match_server()
| * e0717385f5 cifs: avoid NULL pointer dereference in dbg call
| * 2eb6e5e094 CIFS: Propagate min offload along with other parameters from primary to secondary channels.
| * 63d71ae010 thermal/drivers/rockchip: Add missing rk3328 mapping entry
| * 474b3194c8 tracing: Do not add length to print format in synthetic events
| * 868df4eb78 tracing: fprobe events: Fix possible UAF on modules
| * a7fda1fd6d x86/xen: fix balloon target initialization for PVH dom0
| * 9e7c37fadb sctp: detect and prevent references to a freed transport in sendmsg
| * 65b259e3e0 mm/hwpoison: introduce folio_contain_hwpoisoned_page() helper
| * 1fd89407d7 mm/hugetlb: move hugetlb_sysctl_init() to the __init section
| * 73d17d48df mm/hwpoison: do not send SIGBUS to processes with recovered clean pages
| * 14936034de mm/userfaultfd: fix release hang over concurrent GUP
| * cc98577f91 mm: add missing release barrier on PGDAT_RECLAIM_LOCKED unlock
| * 2532df0a9b mm/mremap: correctly handle partial mremap() of VMA starting at 0
| * 6dd8d9440f mm: fix lazy mmu docs and usage
| * 83b6b5061e mm: make page_mapped_in_vma() hugetlb walk aware
| * 53dc6b00c0 mm/rmap: reject hugetlb folios in folio_make_device_exclusive()
| * ab0af01260 mm/damon/ops: have damon_get_folio return folio even for tail pages
* | 7e9686596c Merge 5f7f6abd92 ("net: Fix null-ptr-deref by sock_lock_init_class_and_name() and rmmod.") into android16-6.12-lts
|\|
| * 5f7f6abd92 net: Fix null-ptr-deref by sock_lock_init_class_and_name() and rmmod.
* | fbffc72bf0 Merge fba396b799 ("sparc/mm: avoid calling arch_enter/leave_lazy_mmu() in set_ptes") into android16-6.12-lts
|\|
| * fba396b799 sparc/mm: avoid calling arch_enter/leave_lazy_mmu() in set_ptes
| * 690446dc72 sparc/mm: disable preemption in lazy mmu mode
| * cb6b9bd661 iommu/vt-d: Wire up irq_ack() to irq_move_irq() for posted MSIs
| * 6722a0cb81 iommu/vt-d: Fix possible circular locking dependency
| * e953e11123 iommu/vt-d: Don't clobber posted vCPU IRTE when host IRQ affinity changes
| * c95a438d2c iommu/vt-d: Put IRTE back into posted MSI mode if vCPU posting is disabled
| * e5dd974d6e iommu/tegra241-cmdqv: Fix warnings due to dmam_free_coherent()
| * b8b41eac70 iommufd: Fix uninitialized rc in iommufd_access_rw()
| * 327e6b8b28 btrfs: zoned: fix zone finishing with missing devices
| * 380ba38801 btrfs: zoned: fix zone activation with missing devices
| * b9af27d020 btrfs: tests: fix chunk map leak after failure to add it to the tree
| * 601db4e8bf btrfs: fix non-empty delayed iputs list on unmount due to compressed write workers
| * 61a5c565fd backlight: led_bl: Hold led_access lock when calling led_sysfs_disable()
| * a3b36c9da3 arm64: dts: exynos: gs101: disable pinctrl_gsacore node
| * ac45d49df9 arm64: dts: mediatek: mt8173: Fix disp-pwm compatible string
| * 1dd288783d arm64: mm: Correct the update of max_pfn
| * 21c5124304 arm64: tegra: Remove the Orin NX/Nano suspend key
| * eec737e17e arm64: mops: Do not dereference src reg for a set operation
| * 52f251dbfb mtd: rawnand: Add status chack in r852_ready()
| * 5479a6af3c mtd: inftlcore: Add error check for inftl_read_oob()
| * 6554491b4a mptcp: only inc MPJoinAckHMacFailure for HMAC failures
| * dc81e41a30 mptcp: fix NULL pointer in can_accept_new_subflow
| * c7f611e711 lib: scatterlist: fix sg_split_phys to preserve original scatterlist offsets
| * 95f0958240 locking/lockdep: Decrease nr_unused_locks if lock unused in zap_class()
| * 008b90d36d mailbox: tegra-hsp: Define dimensioning masks in SoC data
| * 7b47df6498 mfd: ene-kb3930: Fix a potential NULL pointer dereference
| * 4b037851ed leds: rgb: leds-qcom-lpg: Fix calculation of best period Hi-Res PWMs
| * 5ae9e361e2 leds: rgb: leds-qcom-lpg: Fix pwm resolution max for Hi-Res PWMs
| * e94314b727 kbuild: exclude .rodata.(cst|str)* when building ranges
| * 9eaec071f1 jbd2: remove wrong sb->s_sequence check
| * e6bba32857 i3c: Add NULL pointer check in i3c_master_queue_ibi()
| * 34aaf448e2 i3c: master: svc: Use readsb helper for reading MDB
| * 0327683c55 ima: limit the number of ToMToU integrity violations
| * 48085ab823 ima: limit the number of open-writers integrity violations
| * 9a264e4a59 smb311 client: fix missing tcon check when mounting with linux/posix extensions
| * 44a2572a0f soc: samsung: exynos-chipid: Add NULL pointer check in exynos_chipid_probe()
| * fbda9cac1b svcrdma: do not unregister device for listeners
| * f3cb81cb96 tpm: do not start chip while suspended
| * 76cc21a9a4 udf: Fix inode_getblk() return value
| * 8fd217a99d vdpa/mlx5: Fix oversized null mkey longer than 32bit
| * a1dde7457d f2fs: fix to avoid atomicity corruption of atomic file
| * 16d9067f00 ext4: fix off-by-one error in do_split
| * a77955f770 bus: mhi: host: Fix race between unprepare and queue_buf
| * 7d12a7d43c accel/ivpu: Fix deadlock in ivpu_ms_cleanup()
| * 5c200b7ebd accel/ivpu: Fix warning in ivpu_ipc_send_receive_internal()
| * 7022946773 ALSA: hda/realtek: Enable Mute LED on HP OMEN 16 Laptop xd000xx
| * d2a2076d9c ASoC: qdsp6: q6asm-dai: fix q6asm_dai_compr_set_params error path
| * 17f1e42131 ASoC: qdsp6: q6apm-dai: fix capture pipeline overruns.
| * aa7e9eabe6 ASoC: qdsp6: q6apm-dai: set 10 ms period and buffer alignment.
| * a28217b064 ASoC: q6apm-dai: make use of q6apm_get_hw_pointer
| * f5891f204d ASoC: q6apm-dai: schedule all available frames to avoid dsp under-runs
| * d383051f82 ASoC: q6apm: add q6apm_get_hw_pointer helper
| * acadb2e2b3 ASoC: codecs: wcd937x: fix a potential memory leak in wcd937x_soc_codec_probe()
| * 3e0356857e io_uring/kbuf: reject zero sized provided buffers
| * b7c6d081c1 io_uring/net: fix io_req_post_cqe abuse by send bundle
| * 0828d6e9ad io_uring/net: fix accept multishot handling
| * 00026f80c4 wifi: mt76: mt7925: fix the wrong simultaneous cap for MLO
| * 374f2bf7b3 wifi: mt76: mt7925: fix the wrong link_idx when a p2p_device is present
| * 0dd6c62c13 wifi: mt76: mt7925: fix country count limitation for CLC
| * 1706a07b38 wifi: mt76: mt7925: ensure wow pattern command align fw format
| * eb434adf79 wifi: mac80211: fix integer overflow in hwmp_route_info_get()
| * ef44c9e811 wifi: mt76: Add check for devm_kstrdup()
| * 9d6b789a8f clocksource/drivers/stm32-lptimer: Use wakeup capable instead of init wakeup
| * 9d99358349 mtd: Replace kcalloc() with devm_kcalloc()
| * 2b27df6852 net: dsa: mv88e6xxx: fix internal PHYs for 6320 family
| * 020404265b net: dsa: mv88e6xxx: workaround RGMII transmit delay erratum for 6320 family
| * 39fc127422 mtd: Add check for devm_kcalloc()
| * 91e1405088 mptcp: sockopt: fix getting freebind & transparent
| * 1b4ecd033e mptcp: sockopt: fix getting IPV6_V6ONLY
| * c59dc7c425 media: chips-media: wave5: Fix timeout while testing 10bit hevc fluster
| * d595713de7 media: chips-media: wave5: Fix a hang after seeking
| * 76cab9f540 media: chips-media: wave5: Avoid race condition in the interrupt handler
| * 7fafaf00cc media: chips-media: wave5: Fix gray color on screen
| * 6f77a6d2ea media: i2c: imx214: Rectify probe error handling related to runtime PM
| * 8dd2d1561c media: i2c: imx219: Rectify runtime PM handling in probe and remove
| * 99f9299147 media: i2c: imx319: Rectify runtime PM handling probe and remove
| * bb3fd8b790 media: venus: hfi_parser: refactor hfi packet parsing logic
| * 53e376178c media: venus: hfi_parser: add check to avoid out of bound access
| * 3da0d73187 media: nuvoton: Fix reference handling of ece_pdev
| * 4b1bdaadbf media: nuvoton: Fix reference handling of ece_node
| * e22fa60bcd media: i2c: ov7251: Introduce 1 ms delay between regulators and en GPIO
| * b155aecd7f media: i2c: ov7251: Set enable GPIO low in probe
| * ad466aacb1 media: i2c: ccs: Set the device's runtime PM status correctly in probe
| * 983b5434a6 media: i2c: ccs: Set the device's runtime PM status correctly in remove
| * 3ff4feef7a Revert "media: imx214: Fix the error handling in imx214_probe()"
| * baea1762cd media: v4l2-dv-timings: prevent possible overflow in v4l2_detect_gtf()
| * b933486f6b media: imx219: Adjust PLL settings based on the number of MIPI lanes
| * dd0d323b47 media: platform: stm32: Add check for clk_enable()
| * 3f1f712f80 media: visl: Fix ERANGE error when setting enum controls
| * f67c3f8452 media: hi556: Fix memory leak (on error) in hi556_check_hwcfg()
| * df6ef66cc3 media: streamzap: prevent processing IR data on URB failure
| * afada73000 accel/ivpu: Fix PM related deadlocks in MS IOCTLs
| * 4c8056fbb1 tpm, tpm_tis: Fix timeout handling when waiting for TPM status
| * 7266066b94 mtd: rawnand: brcmnand: fix PM resume warning
| * 33607e9240 spi: cadence-qspi: Fix probe on AM62A LP SK
| * c322789613 KVM: arm64: Tear down vGIC on failed vCPU creation
| * 20c105f587 arm64: errata: Add KRYO 2XX/3XX/4XX silver cores to Spectre BHB safe list
| * 3b0f2526c8 arm64: errata: Assume that unknown CPUs _are_ vulnerable to Spectre BHB
| * 4af2858435 arm64: errata: Add QCOM_KRYO_4XX_GOLD to the spectre_bhb_k24_list
| * 2ff58c5b26 arm64: cputype: Add MIDR_CORTEX_A76AE
| * 7e619d4d27 xenfs/xensyms: respect hypervisor's "next" indication
| * 88962f1978 media: rockchip: rga: fix rga offset lookup
| * ceb23f66ef media: siano: Fix error handling in smsdvb_module_init()
| * 7631d17608 media: vim2m: print device name after registering device
| * 679424f8b3 media: venus: hfi: add check to handle incorrect queue size
| * 530f623f56 media: venus: hfi: add a check to handle OOB in sfr region
| * 72629a582d media: intel/ipu6: set the dev_parent of video device to pdev
| * f598940803 media: mgb4: Fix switched CMT frequency range "magic values" sets
| * 66e35600f7 media: i2c: adv748x: Fix test pattern selection mask
| * 1c673fa888 media: mgb4: Fix CMT registers update logic
| * ced0ddecc0 media: uapi: rkisp1-config: Fix typo in extensible params example
| * 8c64a2cfdb media: mtk-vcodec: venc: avoid -Wenum-compare-conditional warning
| * 9f009fa823 media: mediatek: vcodec: Fix a resource leak related to the scp device in FW initialization
| * 956c5e4965 dt-bindings: media: st,stmipid02: correct lane-polarities maxItems
| * a9a73da6e0 auxdisplay: hd44780: Fix an API misuse in hd44780.c
| * bdbc38bd12 HID: pidff: Fix set_device_control()
| * 1565ead12f HID: pidff: Fix 90 degrees direction name North -> East
| * 5318556ed3 HID: pidff: Compute INFINITE value instead of using hardcoded 0xffff
| * b15301f289 HID: pidff: Clamp effect playback LOOP_COUNT value
| * 42ec3b5bf7 HID: pidff: Rename two functions to align them with naming convention
| * b782892cd2 HID: pidff: Remove redundant call to pidff_find_special_keys
| * 239c8ac58c HID: pidff: Support device error response from PID_BLOCK_LOAD
| * 2d698115f9 HID: pidff: Comment and code style update
| * 35ebc643af HID: hid-universal-pidff: Add Asetek wheelbases support
| * 2118618697 HID: pidff: Make sure to fetch pool before checking SIMULTANEOUS_MAX
| * 13d15dd617 HID: pidff: Factor out pool report fetch and remove excess declaration
| * 6fbf2ac6d5 HID: pidff: Use macros instead of hardcoded min/max values for shorts
| * 87783d301e HID: pidff: Simplify pidff_rescale_signed
| * 61e4de1728 HID: pidff: Move all hid-pidff definitions to a dedicated header
| * 8f0b2d791e HID: pidff: Factor out code for setting gain
| * 5243ca2a5c HID: pidff: Rescale time values to match field units
| * 7009a060ff HID: pidff: Define values used in pidff_find_special_fields
| * 9cdd95f9a4 HID: pidff: Simplify pidff_upload_effect function
| * 433c4234ff HID: pidff: Completely rework and fix pidff_reset function
| * 2b1e13ed29 HID: pidff: Stop all effects before enabling actuators
| * 629405d185 HID: pidff: Clamp PERIODIC effect period to device's logical range
* | 44229c2d55 Revert "PCI: Check BAR index for validity"
* | 4e0cc11458 Merge 43e5e2879d ("s390/pci: Fix s390_mmio_read/write syscall page fault handling") into android16-6.12-lts
|\|
| * 43e5e2879d s390/pci: Fix s390_mmio_read/write syscall page fault handling
| * dd3edffae8 ext4: don't treat fhandle lookup of ea_inode as FS corruption
| * 806908d5d9 bpf: support SKF_NET_OFF and SKF_LL_OFF on skb frags
| * 7b9bdd7059 erofs: set error to bio if file-backed IO fails
| * 61f590c677 pwm: fsl-ftm: Handle clk_get_rate() returning 0
| * a2786a82de pwm: rcar: Improve register calculation
| * 4cb15042b5 pwm: mediatek: Prevent divide-by-zero in pwm_mediatek_config()
| * 2bef78f962 tpm: End any active auth session before shutdown
| * 01c2ed3f7d tpm, tpm_tis: Workaround failed command reception on Infineon devices
| * a4e3c80cec ktest: Fix Test Failures Due to Missing LOG_FILE Directories
| * 9a6be23eb0 tracing: probe-events: Add comments about entry data storing code
| * 52eafaa56f fbdev: omapfb: Add 'plane' value check
| * fb4c507bf2 drm/amdgpu: grab an additional reference on the gang fence v2
| * 5c3cfcf0b4 PCI: vmd: Make vmd_dev::cfg_lock a raw_spinlock_t type
| * 73d2b96250 PCI: Check BAR index for validity
| * e64be12f84 drm/amdgpu: Fix the race condition for draining retry fault
| * 8feefd106a PCI: Enable Configuration RRS SV early
| * dc4380f346 drm/amdgpu: handle amdgpu_cgs_create_device() errors in amd_powerplay_create()
| * 7a872981c6 PCI: Add Rockchip Vendor ID
| * 6e415cb823 drm/mediatek: mtk_dpi: Explicitly manage TVD clock in power on/off
| * 39a7576d11 drm/mediatek: mtk_dpi: Move the input_2p_en bit to platform data
| * 831c4017f4 drm/xe/xelp: Move Wa_16011163337 from tunings to workarounds
| * 1a322b330d drm/amdkfd: debugfs hang_hws skip GPU with MES
| * 10ce36501f drm/amdkfd: Fix pqm_destroy_queue race with GPU reset
| * ffd37d7d44 drm/amdkfd: Fix mode1 reset crash issue
| * 96757c085b drm/amdkfd: clamp queue size to minimum
| * 1c38108a49 drivers: base: devres: Allow to release group on device release
| * c9323cbc94 drm/amd/display: stop DML2 from removing pipes based on planes
| * b22cb42a5e drm/bridge: panel: forbid initializing a panel with unknown connector type
| * f04612890c drm/debugfs: fix printk format for bridge index
| * ba5a998f84 drm: panel-orientation-quirks: Add quirk for OneXPlayer Mini (Intel)
| * a64e097426 drm: panel-orientation-quirks: Add new quirk for GPD Win 2
| * 5dd6fdb889 drm: panel-orientation-quirks: Add quirk for AYA NEO Slide
| * 6fe4ed94ee drm: panel-orientation-quirks: Add quirks for AYA NEO Flip DS and KB
| * df33b535f0 drm: panel-orientation-quirks: Add support for AYANEO 2S
| * 357ba4ed69 drm/amdgpu: Unlocked unmap only clear page table leaves
| * c15a9c8449 drm/amd/display: Update Cursor request mode to the beginning prefetch always
| * 2eec2fa866 drm/xe/vf: Don't try to trigger a full GT reset if VF
| * 4a5f14246b drm/xe/bmg: Add new PCI IDs
| * 044c1b3528 drm: allow encoder mode_set even when connectors change for crtc
| * 09246dfb5c Bluetooth: Add quirk for broken READ_PAGE_SCAN_TYPE
| * 035e1bffc0 Bluetooth: Add quirk for broken READ_VOICE_SETTING
| * feed98579d Bluetooth: qca: simplify WCN399x NVM loading
| * fe6f1f349d Bluetooth: hci_qca: use the power sequencer for wcn6750
| * a4d49212e3 Bluetooth: btusb: Add 2 HWIDs for MT7922
| * 6b7a32fa9b Bluetooth: hci_uart: fix race during initialization
| * 082ae971a1 Bluetooth: btintel_pcie: Add device id of Whale Peak
| * 40c70ff44b tracing: fix return value in __ftrace_event_enable_disable for TRACE_REG_UNREGISTER
| * 299d7d27af net: vlan: don't propagate flags on open
| * fe51630ba2 wifi: mt76: mt76x2u: add TP-Link TL-WDN6200 ID to device table
| * bf089c4d11 btrfs: harden block_group::bg_list against list_del() races
| * 0519ba030c ahci: Marvell 88SE9215 controllers prefer DMA for ATAPI
| * 7fe3b4deed scsi: st: Fix array overflow in st_setup()
| * a8a8076210 cdc_ether|r8152: ThinkPad Hybrid USB-C/A Dock quirk
| * eb59cc31b6 ext4: ignore xattrs past end
| * aa39d45071 Revert "f2fs: rebuild nat_bits during umount"
| * 5f815757e6 ext4: protect ext4_release_dquot against freezing
| * 202ba2f483 ahci: add PCI ID for Marvell 88SE9215 SATA Controller
| * 163e8c1083 net: sfp: add quirk for FS SFP-10GM-T copper SFP+ module
| * ecc4613316 f2fs: fix to avoid out-of-bounds access in f2fs_truncate_inode_blocks()
| * 3abe15e756 wifi: ath12k: Fix invalid data access in ath12k_dp_rx_h_undecap_nwifi
| * 1833e16500 net: sfp: add quirk for 2.5G OEM BX SFP
| * 04c0c55504 ata: libata-eh: Do not use ATAPI DMA for a device limited to PIO mode
| * ccd97c8a4f jfs: add sanity check for agwidth in dbMount
| * aeb926e605 jfs: Prevent copying of nlink with value 0 from disk inode
| * c802a6a400 fs/jfs: Prevent integer overflow in AG size calculation
| * 319877db0a fs/jfs: cast inactags to s64 to prevent potential overflow
| * 63148ce490 jfs: Fix uninit-value access of imap allocated in the diMount() function
* | 7934407f6a ANDROID: GKI: db845c: add dma_alloc/free_pages to the symbol list
* | 5b889365dc Revert "perf/core: Add aux_pause, aux_resume, aux_start_paused"
* | 1f8271add4 Revert "perf/core: Simplify the perf_event_alloc() error path"
* | f4efd677fe Revert "perf: Fix hang while freeing sigtrap event"
* | 195e9f73e5 Merge 8e7bb66360 ("can: flexcan: add NXP S32G2/S32G3 SoC support") into android16-6.12-lts
|\|
| * 8e7bb66360 can: flexcan: add NXP S32G2/S32G3 SoC support
| * fba5f41f15 can: flexcan: Add quirk to handle separate interrupt lines for mailboxes
| * 7204335d19 page_pool: avoid infinite loop to schedule delayed worker
| * de94d0ca9e net: usb: asix_devices: add FiberGecko DeviceID
| * 93a562eedc scsi: target: spc: Fix RSOC parameter data header size
| * 4ae2c7c7d3 wifi: mac80211: ensure sdata->work is canceled before initialized.
| * cca16fbd17 wifi: mac80211: add strict mode disabling workarounds
| * c6e50cb8bf f2fs: don't retry IO for corrupted data scenario
| * a6bf0fd322 net: page_pool: don't cast mp param to devmem
| * 65ba18c84d scsi: mpi3mr: Synchronous access b/w reset and tm thread for reply queue
| * 6a35449df8 scsi: mpi3mr: Avoid reply queue full condition
| * b1e0b4f494 ata: libata-core: Add 'external' to the libata.force kernel parameter
| * 535b666118 wifi: ath12k: Fix invalid entry fetch in ath12k_dp_mon_srng_process
| * 3cb47b5092 wifi: ath12k: fix memory leak in ath12k_pci_remove()
| * a3981850f1 wifi: ath11k: fix memory leak in ath11k_xxx_remove()
| * b92c5179db wifi: ath11k: Fix DMA buffer allocation to resolve SWIOTLB issues
| * 90a5892d85 platform/x86: x86-android-tablets: Add select POWER_SUPPLY to Kconfig
| * 7f04c9e8ff ASoC: amd: yc: update quirk data for new Lenovo model
| * 3a03a7f0f8 ASoC: amd: Add DMI quirk for ACP6X mic support
| * cb1c6cb110 ALSA: usb-audio: Fix CME quirk for UF series keyboards
| * fe74885e36 mmc: dw_mmc: add a quirk for accessing 64-bit FIFOs in two halves
| * 6d32a30fa1 media: s5p-mfc: Corrected NV12M/NV21M plane-sizes
| * 3c057a4904 media: uvcvideo: Add quirk for Actions UVC05
| * d4fcd06e12 ASoC: fsl_audmix: register card device depends on 'dais' property
| * d981c3d298 ALSA: hda: intel: Add Lenovo IdeaPad Z570 to probe denylist
| * 97ae1d5080 ALSA: hda: intel: Fix Optimus when GPU has no sound
| * 25490b45d1 ASoC: amd: ps: use macro for ACP6.3 pci revision id
| * f8f4d77710 HID: pidff: Fix null pointer dereference in pidff_find_fields
| * 0301b85fe6 HID: pidff: Add PERIODIC_SINE_ONLY quirk
| * f45f26a6b3 HID: Add hid-universal-pidff driver and supported device ids
| * 116d4f67ae HID: pidff: Add FIX_WHEEL_DIRECTION quirk
| * ed806fd80e HID: pidff: Add hid_pidff_init_with_quirks and export as GPL symbol
| * 6a20fae104 HID: pidff: Add PERMISSIVE_CONTROL quirk
| * fd608e2a06 HID: pidff: Add MISSING_PBO quirk and its detection
| * fab3dbb604 HID: pidff: Add MISSING_DELAY quirk and its detection
| * d21ccf544c HID: pidff: Do not send effect envelope if it's empty
| * 1c0785f164 HID: pidff: Convert infinite length from Linux API to PID standard
| * 5330ce1ee2 ASoC: SOF: topology: Use krealloc_array() to replace krealloc()
| * 377b041c22 platform/chrome: cros_ec_lpc: Match on Framework ACPI device
| * 97f68e7287 zstd: Increase DYNAMIC_BMI2 GCC version cutoff from 4.8 to 11.0 to work around compiler segfault
| * 8d0f280e7a xen/mcelog: Add __nonstring annotations for unterminated strings
| * cb58e90920 arm64: cputype: Add QCOM_CPU_PART_KRYO_3XX_GOLD
| * ead1fc9f93 Flush console log from kernel_power_off()
| * 11ae4fec1f PM: hibernate: Avoid deadlock in hibernate_compressor_param_set()
| * 89a4db7a67 perf/dwc_pcie: fix some unreleased resources
| * 1b3ebfb15d perf: arm_pmu: Don't disable counter in armpmu_add()
| * f48625eeeb x86/cpu: Don't clear X86_FEATURE_LAHF_LM flag in init_amd_k8() on AMD when running in a virtual machine
| * 48e705652d x86/ia32: Leave NULL selector values 0~3 unchanged
| * 640bb22521 x86/percpu: Disable named address spaces for UBSAN_BOOL with KASAN for GCC < 14.2
| * 837f5cb7be x86/mm: Clear _PAGE_DIRTY for kernel mappings when we clear _PAGE_RW
| * f8d28fa305 pm: cpupower: bench: Prevent NULL dereference on malloc failure
| * 67e85cfa95 umount: Allow superblock owners to force umount
| * 52535688c2 fs: consistently deref the files table with rcu_dereference_raw()
| * fa1827fa96 perf: Fix hang while freeing sigtrap event
| * 7ef5aa081f perf/core: Simplify the perf_event_alloc() error path
| * c61feda373 perf/core: Add aux_pause, aux_resume, aux_start_paused
| * a0842539e8 iommu/mediatek: Fix NULL pointer deference in mtk_iommu_device_group
| * 5efd53900a iommu/exynos: Fix suspend/resume with IDENTITY domain
| * 7640c2abb6 nft_set_pipapo: fix incorrect avx2 match of 5th field octet
| * b4c836d33c net: ppp: Add bound checking for skb data on ppp_sync_txmung
* | 4485f579eb Revert "cgroup/cpuset: Fix race between newly created partition and dying one"
* | 4aefb4fba6 Merge cc16f7402a ("ipv6: Align behavior across nexthops during path selection") into android16-6.12-lts
|\|
| * cc16f7402a ipv6: Align behavior across nexthops during path selection
| * a6ed6f8ec8 net: phy: allow MDIO bus PM ops to start/stop state machine for phylink-controlled PHY
| * 6d98cd6342 net: phy: move phy_link_change() prior to mdio_bus_phy_may_suspend()
| * aa5a1e4b88 smb: client: fix UAF in decryption with multichannel
| * f86293adce net_sched: sch_sfq: move the limit validation
| * 70449ca406 net_sched: sch_sfq: use a temporary work area for validating configuration
| * ec12da4bcc nvmet-fcloop: swap list_add_tail arguments
| * c5a9068061 drm/i915/huc: Fix fence not released on early probe errors
| * 0ae84adbc9 ata: sata_sx4: Add error handling in pdc20621_i2c_read()
| * ad81d666e1 net: libwx: handle page_pool_dev_alloc_pages error
| * c81306c9d6 drm/tests: probe-helper: Fix drm_display_mode memory leak
| * 80f4dc6e1f drm/tests: modes: Fix drm_display_mode memory leak
| * c7a0a32e6c drm/tests: cmdline: Fix drm_display_mode memory leak
| * f951d643bc drm/tests: helpers: Create kunit helper to destroy a drm_display_mode
| * 71dd750a08 drm/tests: modeset: Fix drm_display_mode memory leak
| * a065b99605 net: ethtool: Don't call .cleanup_data when prepare_data fails
| * b2f3c3d57a tc: Ensure we have enough buffer space when sending filter netlink notifications
| * f0bb06b9f1 octeontx2-pf: qos: fix VF root node parent queue index
| * 9fcbca0f80 net: tls: explicitly disallow disconnect
| * 4d55144b12 codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog()
| * 7c5957f790 tipc: fix memory leak in tipc_link_xmit
| * 1b7685256d objtool: Fix INSN_CONTEXT_SWITCH handling in validate_unret()
| * ee2b0301d6 ata: pata_pxa: Fix potential NULL pointer dereference in pxa_ata_probe()
| * 9e0bdc1557 drm/xe/hw_engine: define sysfs_ops on all directories
| * 857e9432da x86/acpi: Don't limit CPUs to 1 for Xen PV guests due to disabled ACPI
| * 9ddc7edc55 drm/i915: Disable RPG during live selftest
| * caa5c8a235 ublk: fix handling recovery & reissue in ublk_abort_queue()
| * cb8372e54f ublk: refactor recovery configuration flag helpers
| * 206d0df7b6 selftests/futex: futex_waitv wouldblock test should fail
| * 179ef2f810 gpiolib: of: Fix the choice for Ingenic NAND quirk
| * cdb6e724e7 cgroup/cpuset: Fix race between newly created partition and dying one
| * 1b06f00eda cgroup/cpuset: Further optimize code if CONFIG_CPUSETS_V1 not set
| * 6b145f8b22 cgroup/cpuset: Enforce at most one rebuild_sched_domains_locked() call per operation
| * 2dbd1b1660 cgroup/cpuset: Revert "Allow suppression of sched domain rebuild in update_cpumasks_hier()"
| * 9701dcbf5f cgroup/cpuset: Fix error handling in remote_partition_disable()
| * 40bc55e4fc cgroup/cpuset: Fix incorrect isolated_cpus update in update_parent_effective_cpumask()
| * b980b83231 ASoC: Intel: adl: add 2xrt1316 audio configuration
* 4c1ccdf129 Merge branch 'android16-6.12' into android16-6.12-lts

Change-Id: I240b43fe2c84aa7ddb06a06cbc68edc1d53b709a
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-06-21 15:04:22 +00:00
Rolf Eike Beer b4f6605dc2 iommu: remove duplicate selection of DMAR_TABLE
[ Upstream commit 9548feff840a05d61783e6316d08ed37e115f3b1 ]

This is already done in intel/Kconfig.

Fixes: 70bad345e6 ("iommu: Fix compilation without CONFIG_IOMMU_INTEL")
Signed-off-by: Rolf Eike Beer <eb@emlix.com>
Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com>
Link: https://lore.kernel.org/r/2232605.Mh6RI2rZIc@devpool92.emlix.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-06-19 15:31:50 +02:00
Jason Gunthorpe 88f65bb66d iommu: Protect against overflow in iommu_pgsize()
[ Upstream commit e586e22974d2b7acbef3c6c3e01b2d5ce69efe33 ]

On a 32 bit system calling:
 iommu_map(0, 0x40000000)

When using the AMD V1 page table type with a domain->pgsize of 0xfffff000
causes iommu_pgsize() to miscalculate a result of:
  size=0x40000000 count=2

count should be 1. This completely corrupts the mapping process.

This is because the final test to adjust the pagesize malfunctions when
the addition overflows. Use check_add_overflow() to prevent this.

Fixes: b1d99dc5f9 ("iommu: Hook up '->unmap_pages' driver callback")
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com>
Link: https://lore.kernel.org/r/0-v1-3ad28fc2e3a3+163327-iommu_overflow_pgsize_jgg@nvidia.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-06-19 15:31:45 +02:00
Mostafa Saleh 8e7a03dcb9 ANDROID: iommu/pkvm-iommu: Fix locking in maple tree usage
There are some problems with the maple tree usage at the moment:
- pviommu_domain_find() uses mas_find() which must be locked.
- pviommu_domain_remove_map() had a similar problem, but also it explicitly
  calls find and erase/insert non-atomically, so convert all of those to the
  unlocked version and use the tree lock on them.
- All allocations from unmap must be atomic

Bug: 357781595
Bug: 348382247
Signed-off-by: Mostafa Saleh <smostafa@google.com>
Reported-by: Aashish Sharma <shraash@google.com>
Change-Id: Ida8cfcfe3dc34ba7574d06eb1970602ab160173c
2025-06-12 08:26:12 -07:00
Isaac J. Manjarres 413ed6ba22 ANDROID: iommu/arm-smmu-v3-kvm: Fix accidental domain ID freeing in free()
kvm_arm_smmu_domain_finalize() always sets a domain's smmu field, even
if the function fails. If the function fails and the caller attempts
to free the domain, the kvm_arm_smmu_domain_free() function will be
called. The will domain's smmu field is not NULL, so the logic will
call into the hypervisor to free the domain, and free the domain
ID back to the IDA.

However, it's possible that the domain was not even allocated to begin
with in the hypervisor, or the domain ID was not allocated either,
hence why kvm_arm_smmu_domain_finalize() failed in the first place.

Change kvm_arm_smmu_domain_finalize() to only set the smmu field
if it succeeded to allocate all resources required. That way, the
free() callback has meaningful objects to free.

Bug: 423086309
Change-Id: Ib22bbf15b2f3649fc42d7788a17b8e25b8bd2777
[isaacmanjarres: Resolve trivial merge conflicts from differences
between 6.6 and 6.12.]
Signed-off-by: Isaac J. Manjarres <isaacmanjarres@google.com>
2025-06-11 05:20:03 -07:00
Greg Kroah-Hartman a3db058b64 Merge android16-6.12 into android16-6.12-lts
This merges the android16-6.12 branch into the -lts branch, catching
it up with the latest changes in there.

It contains the following commits:

2cc84bbe12 ANDROID: iommu/arm-smmu-v3-kvm: Wrap around when writing to cmdq
b32e32bf59 ANDROID: KVM: arm64: pviommu: Fix return value in __pkvm_use_dma_locked
42b01ce154 ANDROID: ABI: Update pixel symbol list
258557effa ANDROID: power: Add vendor hook for suspend
7a02c9f4a3 ANDROID: GKI: Update symbol list for vivo
79376c9869 ANDROID: vendor_hooks: Add hook in try_to_unmap_one()
1a6d07106c ANDROID: vendor_hooks: Add hook in mmap_region()
b165e16c2e ANDROID: vendor_hooks: Add hook in shrink_node_memcgs
8f5f6798e1 ANDROID: vendor_hooks: Add vendor hooks in __swap_writepage
7669d436d7 ANDROID: KVM: arm64: Remove args copy for direct FF-A calls
6ce196d4af ANDROID: Enable PKVM_STACKTRACE
265f4173a2 ANDROID: KVM: arm64: Remove DEBUG dependency to PKVM_STACKTRACE
3b1d8cc5a2 ANDROID: KVM: arm64: NVHE_EL2_DEBUG to PKVM_DEBUG menuconfig
58ca789e21 ANDROID: KVM: arm64: PROTECTED_NVHE_FTRACE to PKVM_FTRACE
386af809e4 ANDROID: KVM: arm64: PROTECTED_NVHE_STACKTRACE to PKVM_STACKTRACE
8b2a8f6b2e ANDROID: KVM: arm64: PROTECTED_NVHE_TESTING to PKVM_SELFTESTS
b526a11319 ANDROID: KVM: arm64: Add PKVM_DISABLE_STAGE2_ON_PANIC
e19e2557a0 ANDROID: KVM: arm64: Always resolve nvhe BUGs file and line
7bc24faa5a ANDROID: KVM: arm64: Add PKVM_STRICT_CHECKS
9cfa11e5f1 ANDROID: KVM: arm64: Add PKVM_DUMP_TRACE_ON_PANIC
a3f61dba68 ANDROID: ring-buffer: Handle external writer reader_page fast-forward
10a77358c7 ANDROID: KVM: arm64: Allow relinqush for p-guest with huge-mappings
05a9e97a23 ANDROID: KVM: arm64: Use unmap for pKVM guests memory relinquish
024d995fb6 ANDROID: KVM: arm64: Add hyp request SPLIT
c8303029c0 ANDROID: KVM: arm64: Add host_split_guest for pKVM
2846906d1e ANDROID: KVM: arm64: Check for existing pinned_pages before THP in pkvm_mem_abort
2e30f9c5c2 ANDROID: KVM: arm64: Disable relinquish for p-guest huge-mappings
56ad021f7a ANDROID: KVM: arm64: Disallow #include trace.h for pKVM.
f503b8a51a ANDROID: GKI: Add symbol to symbol list for vivo.
0142de08c8 ANDROID: vendor_hooks: add hooks to modify pageflags
22cf53077b ANDROID: gunyah: GKI: Fix the wrong return value in gunyah driver

Change-Id: I64fde9df60b85399d6d98aed923b00a7430ae226
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-06-06 06:53:56 +00:00
Daniel Mentz 2cc84bbe12 ANDROID: iommu/arm-smmu-v3-kvm: Wrap around when writing to cmdq
When we write more than a single command to the command queue, we need
to wrap around when we hit the end of the command queue. Otherwise,
we'll write to memory locations that are past the end of the command
queue.

Bug: 421785718
Fixes: dd32b792c1 ("BACKPORT: FROMLIST: iommu/arm-smmu-v3-kvm: Support command queue batching")
Change-Id: Ia6246e3e0fc6185b2373664e90c119051d1c55fc
Signed-off-by: Daniel Mentz <danielmentz@google.com>
2025-06-05 03:13:15 -07:00
Jason Gunthorpe 53f42776e4 genirq/msi: Store the IOMMU IOVA directly in msi_desc instead of iommu_cookie
[ Upstream commit 1f7df3a691740a7736bbc99dc4ed536120eb4746 ]

The IOMMU translation for MSI message addresses has been a 2-step process,
separated in time:

 1) iommu_dma_prepare_msi(): A cookie pointer containing the IOVA address
    is stored in the MSI descriptor when an MSI interrupt is allocated.

 2) iommu_dma_compose_msi_msg(): this cookie pointer is used to compute a
    translated message address.

This has an inherent lifetime problem for the pointer stored in the cookie
that must remain valid between the two steps. However, there is no locking
at the irq layer that helps protect the lifetime. Today, this works under
the assumption that the iommu domain is not changed while MSI interrupts
being programmed. This is true for normal DMA API users within the kernel,
as the iommu domain is attached before the driver is probed and cannot be
changed while a driver is attached.

Classic VFIO type1 also prevented changing the iommu domain while VFIO was
running as it does not support changing the "container" after starting up.

However, iommufd has improved this so that the iommu domain can be changed
during VFIO operation. This potentially allows userspace to directly race
VFIO_DEVICE_ATTACH_IOMMUFD_PT (which calls iommu_attach_group()) and
VFIO_DEVICE_SET_IRQS (which calls into iommu_dma_compose_msi_msg()).

This potentially causes both the cookie pointer and the unlocked call to
iommu_get_domain_for_dev() on the MSI translation path to become UAFs.

Fix the MSI cookie UAF by removing the cookie pointer. The translated IOVA
address is already known during iommu_dma_prepare_msi() and cannot change.
Thus, it can simply be stored as an integer in the MSI descriptor.

The other UAF related to iommu_get_domain_for_dev() will be addressed in
patch "iommu: Make iommu_dma_prepare_msi() into a generic operation" by
using the IOMMU group mutex.

Link: https://patch.msgid.link/r/a4f2cd76b9dc1833ee6c1cf325cba57def22231c.1740014950.git.nicolinc@nvidia.com
Signed-off-by: Nicolin Chen <nicolinc@nvidia.com>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-05-29 11:02:41 +02:00
Yi Liu 4176d6f2a6 iommufd: Disallow allocating nested parent domain with fault ID
[ Upstream commit 1062d81086156e42878d701b816d2f368b53a77c ]

Allocating a domain with a fault ID indicates that the domain is faultable.
However, there is a gap for the nested parent domain to support PRI. Some
hardware lacks the capability to distinguish whether PRI occurs at stage 1
or stage 2. This limitation may require software-based page table walking
to resolve. Since no in-tree IOMMU driver currently supports this
functionality, it is disallowed. For more details, refer to the related
discussion at [1].

[1] https://lore.kernel.org/linux-iommu/bd1655c6-8b2f-4cfa-adb1-badc00d01811@intel.com/

Link: https://patch.msgid.link/r/20250226104012.82079-1-yi.l.liu@intel.com
Suggested-by: Lu Baolu <baolu.lu@linux.intel.com>
Signed-off-by: Yi Liu <yi.l.liu@intel.com>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-05-29 11:02:31 +02:00
Vasant Hegde 11be3d3f95 iommu/amd/pgtbl_v2: Improve error handling
[ Upstream commit 36a1cfd497435ba5e37572fe9463bb62a7b1b984 ]

Return -ENOMEM if v2_alloc_pte() fails to allocate memory.

Signed-off-by: Vasant Hegde <vasant.hegde@amd.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Link: https://lore.kernel.org/r/20250227162320.5805-4-vasant.hegde@amd.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-05-29 11:02:25 +02:00
Robin Murphy 063ad8885c iommu: Keep dev->iommu state consistent
[ Upstream commit 3832862eb9c4dfa0e80b2522bfaedbc8a43de97d ]

At the moment, if of_iommu_configure() allocates dev->iommu itself via
iommu_fwspec_init(), then suffers a DT parsing failure, it cleans up the
fwspec but leaves the empty dev_iommu hanging around. So far this is
benign (if a tiny bit wasteful), but we'd like to be able to reason
about dev->iommu having a consistent and unambiguous lifecycle. Thus
make sure that the of_iommu cleanup undoes precisely whatever it did.

Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Link: https://lore.kernel.org/r/d219663a3f23001f23d520a883ac622d70b4e642.1740753261.git.robin.murphy@arm.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-05-29 11:02:22 +02:00
Yi Liu b4c11dd41c iommufd: Extend IOMMU_GET_HW_INFO to report PASID capability
[ Upstream commit 803f97298e7de9242eb677a1351dcafbbcc9117e ]

PASID usage requires PASID support in both device and IOMMU. Since the
iommu drivers always enable the PASID capability for the device if it
is supported, this extends the IOMMU_GET_HW_INFO to report the PASID
capability to userspace. Also, enhances the selftest accordingly.

Link: https://patch.msgid.link/r/20250321180143.8468-5-yi.l.liu@intel.com
Cc: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Tested-by: Zhangfei Gao <zhangfei.gao@linaro.org> #aarch64 platform
Tested-by: Nicolin Chen <nicolinc@nvidia.com>
Signed-off-by: Yi Liu <yi.l.liu@intel.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-05-29 11:02:04 +02:00
Greg Kroah-Hartman 62cd1edf4d Merge 6.12.28 into android16-6.12-lts
GKI (arm64) relevant 33 out of 166 changes, affecting 52 files +454/-363
  0aaae77be5 ALSA: usb-audio: Add retry on -EPROTO from usb_set_interface() [1 file, +7/-0]
  fdf0ae5e9e ALSA: usb-audio: Add second USB ID for Jabra Evolve 65 headset [1 file, +2/-1]
  38d9ca7405 binder: fix offset calculation in debug log [1 file, +1/-1]
  f1dfc94584 drm/fdinfo: Protect against driver unbind [1 file, +6/-0]
  090c8714ef arm64: errata: Add missing sentinels to Spectre-BHB MIDR arrays [1 file, +2/-0]
  eb9b72e4fe mm/memblock: pass size instead of end to memblock_set_node() [1 file, +1/-1]
  9c4ddea497 mm/memblock: repeat setting reserved region nid if array is doubled [1 file, +10/-0]
  0988dd0263 tracing: Do not take trace_event_sem in print_event_fields() [1 file, +2/-2]
  f451082572 dm-bufio: don't schedule in atomic context [1 file, +8/-1]
  510aea4ef0 dm: always update the array size in realloc_argv on success [1 file, +3/-2]
  2e303d0107 iommu: Fix two issues in iommu_copy_struct_from_user() [1 file, +4/-4]
  573b047229 cpufreq: Avoid using inconsistent policy->min and policy->max [1 file, +25/-7]
  962d88304c cpufreq: Fix setting policy limits when frequency tables are used [4 files, +73/-41]
  1f27a3e93b tracing: Fix oob write in trace_seq_to_buffer() [1 file, +3/-2]
  220395054c ASoC: soc-core: Stop using of_property_read_bool() for non-boolean properties [1 file, +13/-19]
  29a4a29112 ASoC: soc-pcm: Fix hw_params() and DAPM widget sequence [1 file, +4/-1]
  65d3c57061 xsk: Fix race condition in AF_XDP generic RX path [4 files, +6/-6]
  fe81c26d2d Bluetooth: hci_conn: Remove alloc from critical section [1 file, +10/-18]
  eb8b860e87 Bluetooth: hci_conn: Fix not setting conn_timeout for Broadcast Receiver [6 files, +95/-107]
  620810ac1f Bluetooth: hci_conn: Fix not setting timeout for BIG Create Sync [7 files, +88/-109]
  432572d536 Bluetooth: L2CAP: copy RX timestamp to new fragments [1 file, +3/-0]
  6b1355860d scsi: ufs: core: Remove redundant query_complete trace [1 file, +0/-2]
  5ad0b1b554 nvme-pci: fix queue unquiesce check on slot_reset [1 file, +1/-1]
  6effe1c0fa net: ipv6: fix UDPv6 GSO segmentation with NAT [1 file, +60/-1]
  c0dba059b1 net: use sock_gen_put() when sk_state is TCP_TIME_WAIT [2 files, +2/-2]
  e10ec6e32b blk-mq: create correct map for fallback case [1 file, +1/-2]
  dab2a13059 mm, slab: clean up slab->obj_exts always [1 file, +7/-20]
  0a188c0e19 sch_htb: make htb_qlen_notify() idempotent [1 file, +2/-0]
  969d8beaa2 firmware: arm_scmi: Balance device refcount when destroying devices [1 file, +3/-0]
  3b41b5efae kernel: param: rename locate_module_kobject [1 file, +3/-3]
  69113bf740 kernel: globalize lookup_or_create_module_kobject() [2 files, +3/-1]
  e1eea69858 drivers: base: handle module_kobject creation [1 file, +5/-8]
  db62809197 dm: fix copying after src array boundaries [1 file, +1/-1]

Changes in 6.12.28
        Bluetooth: btusb: add Foxconn 0xe0fc for Qualcomm WCN785x
        Bluetooth: btusb: Add one more ID 0x0489:0xe0f3 for Qualcomm WCN785x
        Bluetooth: btusb: Add one more ID 0x13d3:0x3623 for Qualcomm WCN785x
        Bluetooth: btusb: Add ID 0x2c7c:0x0130 for Qualcomm WCN785x
        Bluetooth: btusb: Add new VID/PID for WCN785x
        Bluetooth: btusb: Add 13 USB device IDs for Qualcomm WCN785x
        Revert "rndis_host: Flag RNDIS modems as WWAN devices"
        ALSA: usb-audio: Add retry on -EPROTO from usb_set_interface()
        ALSA: usb-audio: Add second USB ID for Jabra Evolve 65 headset
        binder: fix offset calculation in debug log
        btrfs: adjust subpage bit start based on sectorsize
        btrfs: fix COW handling in run_delalloc_nocow()
        cpufreq: intel_pstate: Unchecked MSR aceess in legacy mode
        drm/fdinfo: Protect against driver unbind
        drm/nouveau: Fix WARN_ON in nouveau_fence_context_kill()
        EDAC/altera: Test the correct error reg offset
        EDAC/altera: Set DDR and SDMMC interrupt mask before registration
        i2c: imx-lpi2c: Fix clock count when probe defers
        arm64: errata: Add missing sentinels to Spectre-BHB MIDR arrays
        parisc: Fix double SIGFPE crash
        perf/x86/intel: Only check the group flag for X86 leader
        perf/x86/intel: KVM: Mask PEBS_ENABLE loaded for guest with vCPU's value.
        amd-xgbe: Fix to ensure dependent features are toggled with RX checksum offload
        irqchip/qcom-mpm: Prevent crash when trying to handle non-wake GPIOs
        mm/memblock: pass size instead of end to memblock_set_node()
        mm/memblock: repeat setting reserved region nid if array is doubled
        mmc: renesas_sdhi: Fix error handling in renesas_sdhi_probe
        spi: tegra114: Don't fail set_cs_timing when delays are zero
        tracing: Do not take trace_event_sem in print_event_fields()
        wifi: brcm80211: fmac: Add error handling for brcmf_usb_dl_writeimage()
        x86/boot/sev: Support memory acceptance in the EFI stub under SVSM
        dm-bufio: don't schedule in atomic context
        dm-integrity: fix a warning on invalid table line
        dm: always update the array size in realloc_argv on success
        drm/amdgpu: Fix offset for HDP remap in nbio v7.11
        drm: Select DRM_KMS_HELPER from DRM_DEBUG_DP_MST_TOPOLOGY_REFS
        iommu/amd: Fix potential buffer overflow in parse_ivrs_acpihid
        iommu/arm-smmu-v3: Fix iommu_device_probe bug due to duplicated stream ids
        iommu/arm-smmu-v3: Fix pgsize_bit for sva domains
        iommu/vt-d: Apply quirk_iommu_igfx for 8086:0044 (QM57/QS57)
        iommu: Fix two issues in iommu_copy_struct_from_user()
        platform/x86/amd: pmc: Require at least 2.5 seconds between HW sleep cycles
        platform/x86/intel-uncore-freq: Fix missing uncore sysfs during CPU hotplug
        ksmbd: fix use-after-free in ksmbd_session_rpc_open
        ksmbd: fix use-after-free in kerberos authentication
        ksmbd: fix use-after-free in session logoff
        smb: client: fix zero length for mkdir POSIX create context
        cpufreq: Avoid using inconsistent policy->min and policy->max
        cpufreq: Fix setting policy limits when frequency tables are used
        tracing: Fix oob write in trace_seq_to_buffer()
        drm/amd/display: Default IPS to RCG_IN_ACTIVE_IPS2_IN_OFF
        ASoC: soc-core: Stop using of_property_read_bool() for non-boolean properties
        ASoC: cs-amp-lib-test: Don't select SND_SOC_CS_AMP_LIB
        ASoC: soc-pcm: Fix hw_params() and DAPM widget sequence
        book3s64/radix : Align section vmemmap start address to PAGE_SIZE
        pinctrl: imx: Return NULL if no group is matched and found
        powerpc/boot: Check for ld-option support
        ASoC: Intel: sof_sdw: Add NULL check in asoc_sdw_rt_dmic_rtd_init()
        ALSA: hda/realtek - Enable speaker for HP platform
        drm/i915/pxp: fix undefined reference to `intel_pxp_gsccs_is_ready_for_sessions'
        wifi: iwlwifi: don't warn if the NIC is gone in resume
        wifi: iwlwifi: fix the check for the SCRATCH register upon resume
        wifi: plfxlc: Remove erroneous assert in plfxlc_mac_release
        powerpc/boot: Fix dash warning
        vxlan: vnifilter: Fix unlocked deletion of default FDB entry
        xsk: Fix race condition in AF_XDP generic RX path
        net/mlx5e: Use custom tunnel header for vxlan gbp
        net/mlx5: E-Switch, Initialize MAC Address for Default GID
        net/mlx5e: TC, Continue the attr process even if encap entry is invalid
        net/mlx5e: Fix lock order in mlx5e_tx_reporter_ptpsq_unhealthy_recover
        net/mlx5: E-switch, Fix error handling for enabling roce
        accel/ivpu: Correct DCT interrupt handling
        ASoC: amd: acp: Fix NULL pointer deref in acp_i2s_set_tdm_slot
        Bluetooth: hci_conn: Remove alloc from critical section
        Bluetooth: hci_conn: Fix not setting conn_timeout for Broadcast Receiver
        Bluetooth: hci_conn: Fix not setting timeout for BIG Create Sync
        Bluetooth: btintel_pcie: Avoid redundant buffer allocation
        Bluetooth: btusb: avoid NULL pointer dereference in skb_dequeue()
        Bluetooth: btintel_pcie: Add additional to checks to clear TX/RX paths
        Bluetooth: L2CAP: copy RX timestamp to new fragments
        net: mscc: ocelot: delete PVID VLAN when readding it as non-PVID
        octeon_ep_vf: Resolve netdevice usage count issue
        bnxt_en: improve TX timestamping FIFO configuration
        rtase: Modify the condition used to detect overflow in rtase_calc_time_mitigation
        net: ethernet: mtk-star-emac: fix spinlock recursion issues on rx/tx poll
        net: ethernet: mtk-star-emac: rearm interrupts in rx_poll only when advised
        net: ethernet: mtk_eth_soc: sync mtk_clks_source_name array
        pds_core: make pdsc_auxbus_dev_del() void
        pds_core: specify auxiliary_device to be created
        pds_core: remove write-after-free of client_id
        net_sched: drr: Fix double list add in class with netem as child qdisc
        net_sched: hfsc: Fix a UAF vulnerability in class with netem as child qdisc
        net_sched: ets: Fix double list add in class with netem as child qdisc
        net_sched: qfq: Fix double list add in class with netem as child qdisc
        ice: Check VF VSI Pointer Value in ice_vc_add_fdir_fltr()
        idpf: fix offloads support for encapsulated packets
        scsi: ufs: core: Remove redundant query_complete trace
        ALSA: ump: Fix buffer overflow at UMP SysEx message conversion
        nvme-pci: fix queue unquiesce check on slot_reset
        drm/tests: shmem: Fix memleak
        drm/mipi-dbi: Fix blanking for non-16 bit formats
        net: dlink: Correct endianness handling of led_mode
        net: mdio: mux-meson-gxl: set reversed bit when using internal phy
        idpf: fix potential memory leak on kcalloc() failure
        idpf: protect shutdown from reset
        igc: fix lock order in igc_ptp_reset
        net: ethernet: mtk_eth_soc: fix SER panic with 4GB+ RAM
        net: dsa: felix: fix broken taprio gate states after clock jump
        net: ipv6: fix UDPv6 GSO segmentation with NAT
        ALSA: hda/realtek: Fix built-mic regression on other ASUS models
        bnxt_en: Fix error handling path in bnxt_init_chip()
        bnxt_en: Fix ethtool selftest output in one of the failure cases
        bnxt_en: Add missing skb_mark_for_recycle() in bnxt_rx_vlan()
        bnxt_en: call pci_alloc_irq_vectors() after bnxt_reserve_rings()
        bnxt_en: Fix coredump logic to free allocated buffer
        bnxt_en: Fix out-of-bound memcpy() during ethtool -w
        bnxt_en: Fix ethtool -d byte order for 32-bit values
        nvme-tcp: fix premature queue removal and I/O failover
        nvme-tcp: select CONFIG_TLS from CONFIG_NVME_TCP_TLS
        nvmet-tcp: select CONFIG_TLS from CONFIG_NVME_TARGET_TCP_TLS
        ASoC: simple-card-utils: Fix pointer check in graph_util_parse_link_direction
        bnxt_en: fix module unload sequence
        net: use sock_gen_put() when sk_state is TCP_TIME_WAIT
        ptp: ocp: Fix NULL dereference in Adva board SMA sysfs operations
        net: lan743x: Fix memleak issue when GSO enabled
        net: fec: ERR007885 Workaround for conventional TX
        octeon_ep: Fix host hang issue during device reboot
        net: hns3: store rx VLAN tag offload state for VF
        net: hns3: fix an interrupt residual problem
        net: hns3: fixed debugfs tm_qset size
        net: hns3: defer calling ptp_clock_register()
        net: vertexcom: mse102x: Fix possible stuck of SPI interrupt
        net: vertexcom: mse102x: Fix LEN_MASK
        net: vertexcom: mse102x: Add range check for CMD_RTS
        net: vertexcom: mse102x: Fix RX error handling
        blk-mq: create correct map for fallback case
        mm, slab: clean up slab->obj_exts always
        bcachefs: Remove incorrect __counted_by annotation
        net: Fix the devmem sock opts and msgs for parisc
        accel/ivpu: Make DB_ID and JOB_ID allocations incremental
        accel/ivpu: Use xa_alloc_cyclic() instead of custom function
        accel/ivpu: Fix a typo
        accel/ivpu: Update VPU FW API headers
        accel/ivpu: Abort all jobs after command queue unregister
        accel/ivpu: Fix locking order in ivpu_job_submit
        accel/ivpu: Add handling of VPU_JSM_STATUS_MVNCI_CONTEXT_VIOLATION_HW
        sch_htb: make htb_qlen_notify() idempotent
        sch_drr: make drr_qlen_notify() idempotent
        sch_hfsc: make hfsc_qlen_notify() idempotent
        sch_qfq: make qfq_qlen_notify() idempotent
        sch_ets: make est_qlen_notify() idempotent
        drm/xe: Ensure fixed_slice_mode gets set after ccs_mode change
        firmware: arm_scmi: Balance device refcount when destroying devices
        firmware: arm_ffa: Skip Rx buffer ownership release if not acquired
        arm64: dts: imx95: Correct the range of PCIe app-reg region
        ARM: dts: opos6ul: add ksz8081 phy properties
        arm64: dts: st: Adjust interrupt-controller for stm32mp25 SoCs
        arm64: dts: st: Use 128kB size for aliased GIC400 register access on stm32mp25 SoCs
        Revert "drm/meson: vclk: fix calculation of 59.94 fractional rates"
        kernel: param: rename locate_module_kobject
        kernel: globalize lookup_or_create_module_kobject()
        drivers: base: handle module_kobject creation
        drm/amd/display: Add scoped mutexes for amdgpu_dm_dhcp
        drm/amd/display: Fix slab-use-after-free in hdcp
        dm: fix copying after src array boundaries
        Linux 6.12.28

Change-Id: I79f3d50a10acfe53f329b4b5a4af502f488c61f3
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-05-27 07:18:43 +00:00
Greg Kroah-Hartman db596bb60e Merge 6.12.26 into android16-6.12-lts
GKI (arm64) relevant 69 out of 278 changes, affecting 88 files +585/-290
  0b603e7759 tracing: Add __print_dynamic_array() helper [3 files, +15/-1]
  0312735402 tracing: Verify event formats that have "%*p.." [2 files, +13/-2]
  1c9798bf81 mm/vmscan: don't try to reclaim hwpoison folio [1 file, +7/-0]
  db3b3964af PM: EM: use kfree_rcu() to simplify the code [1 file, +1/-9]
  9d5752b853 PM: EM: Address RCU-related sparse warnings [2 files, +26/-25]
  3e12e8c273 block: remove the write_hint field from struct request [4 files, +13/-12]
  ed7535b141 block: remove the ioprio field from struct request [4 files, +11/-15]
  2afa5ea7c4 block: make sure ->nr_integrity_segments is cloned in blk_rq_prep_clone [1 file, +1/-0]
  46d3575209 PCI/MSI: Handle the NOMASK flag correctly for all PCI/MSI backends [1 file, +6/-12]
  35ba7b2d4d PCI/MSI: Add an option to write MSIX ENTRY_DATA before any reads [2 files, +5/-0]
  16c8aa5de1 dma/contiguous: avoid warning about unused size_bytes [1 file, +1/-2]
  7ccfadfb25 cpufreq: scmi: Fix null-ptr-deref in scmi_cpufreq_get_rate() [1 file, +8/-2]
  28fbd7b13b cpufreq: scpi: Fix null-ptr-deref in scpi_cpufreq_get_rate() [1 file, +10/-3]
  7d002f5914 scsi: ufs: mcq: Add NULL check in ufshcd_mcq_abort() [1 file, +5/-7]
  5d92e582d1 cgroup/cpuset-v1: Add missing support for cpuset_v2_mode [1 file, +29/-0]
  29daa63f2c scsi: core: Clear flags for scsi_cmnd that did not complete [1 file, +5/-1]
  eeab661803 scsi: ufs: core: Add NULL check in ufshcd_mcq_compl_pending_transfer() [1 file, +2/-0]
  41143e7105 net: phy: leds: fix memory leak [1 file, +13/-10]
  0ceef62a32 tipc: fix NULL pointer dereference in tipc_mon_reinit_self() [1 file, +2/-1]
  a61afd5482 fix a couple of races in MNT_TREE_BENEATH handling by do_move_mount() [1 file, +36/-33]
  7f24ea6a46 block: never reduce ra_pages in blk_apply_bdi_limits [1 file, +7/-1]
  3decda1a3c splice: remove duplicate noinline from pipe_clear_nowait [1 file, +1/-1]
  30c0d6e778 virtio_console: fix missing byte order handling for cols and rows [1 file, +4/-3]
  c2a6b4d78c net: selftests: initialize TCP header and skb payload with zero [1 file, +13/-5]
  3939d6f29d irqchip/gic-v2m: Prevent use after free of gicv2m_get_fwnode() [1 file, +1/-1]
  7a8a6b627f io_uring: fix 'sync' handling of io_fallback_tw() [1 file, +7/-6]
  1f439fe4d8 scsi: Improve CDL control [1 file, +24/-12]
  3670dee376 char: misc: register chrdev region with all possible minors [1 file, +1/-1]
  ea0d806b94 USB: serial: ftdi_sio: add support for Abacus Electrics Optical Probe [2 files, +7/-0]
  1777714865 xhci: Limit time spent with xHC interrupts disabled during bus resume [3 files, +20/-16]
  bce3055b08 usb: xhci: Fix invalid pointer dereference in Etron workaround [1 file, +1/-1]
  52a7c9d930 usb: dwc3: gadget: check that event count does not exceed event buffer length [1 file, +6/-0]
  9924ee1bcd usb: quirks: add DELAY_INIT quirk for Silicon Motion Flash Drive [1 file, +3/-0]
  d85b7af3bd usb: quirks: Add delay init quirk for SanDisk 3.2Gen1 Flash Drive [1 file, +3/-0]
  3e52ae347e USB: VLI disk crashes if LPM is used [1 file, +3/-0]
  0486de3c1b crypto: null - Use spin lock instead of mutex [1 file, +26/-13]
  7758e308ae bpf: Fix kmemleak warning for percpu hashmap [1 file, +3/-3]
  c5c833f637 bpf: Fix deadlock between rcu_tasks_trace and event_mutex. [1 file, +4/-3]
  4139072087 clk: check for disabled clock-provider in of_clk_get_hw_from_clkspec() [1 file, +4/-0]
  4131411f42 bpf: Only fails the busy counter check in bpf_cgrp_storage_get if it creates storage [1 file, +6/-5]
  b817d2bfd6 bpf: Reject attaching fexit/fmod_ret to __noreturn functions [1 file, +32/-0]
  2ecae00138 usb: dwc3: gadget: Refactor loop to avoid NULL endpoints [1 file, +18/-4]
  cbfa55bda1 usb: xhci: Complete 'error mid TD' transfers when handling Missed Service [1 file, +5/-1]
  16a7a8e6c4 usb: xhci: Fix isochronous Ring Underrun/Overrun event handling [1 file, +14/-6]
  635be13606 xhci: Handle spurious events on Etron host isoc enpoints [2 files, +27/-13]
  9ff59cb815 usb: xhci: Avoid Stop Endpoint retry loop if the endpoint seems Running [1 file, +7/-4]
  0485bdf88f objtool, panic: Disable SMAP in __stack_chk_fail() [2 files, +10/-1]
  c548f95688 9p/net: fix improper handling of bogus negative read/write replies [1 file, +16/-14]
  18296b5951 9p/trans_fd: mark concurrent read and writes to p9_conn->err [1 file, +10/-7]
  3568fd9e44 io_uring: always do atomic put from iowq [2 files, +8/-1]
  90dc6c1e3b perf/core: Fix WARN_ON(!ctx) in __free_event() for partial init [1 file, +3/-3]
  24ede35eb2 nvme: requeue namespace scan on missed AENs [1 file, +4/-0]
  b9c89c97d7 nvme: re-read ANA log page after ns scan completes [1 file, +5/-0]
  ee5521176a nvme: multipath: fix return value of nvme_available_path [1 file, +1/-1]
  5e58b93a12 gpiolib: of: Move Atmel HSMCI quirk up out of the regulator comment [1 file, +3/-3]
  9f8eeac3a6 timekeeping: Add a lockdep override in tick_freeze() [1 file, +22/-0]
  b14d986413 iommu: Clear iommu-dma ops on cleanup [1 file, +3/-0]
  b626bc3c1d ext4: make block validity check resistent to sb bh corruption [2 files, +6/-6]
  2ef6eea2ef netfs: Only create /proc/fs/netfs with CONFIG_PROC_FS [1 file, +4/-0]
  d53b2d49a8 iomap: skip unnecessary ifs_block_is_uptodate check [1 file, +1/-1]
  bfc66c4c28 Revert "drivers: core: synchronize really_probe() and dev_uevent()" [1 file, +0/-3]
  de7c24febd usb: typec: class: Fix NULL pointer access [2 files, +14/-2]
  45314999f9 ext4: goto right label 'out_mmap_sem' in ext4_setattr() [1 file, +1/-1]
  40966fc993 usb: typec: class: Invalidate USB device pointers on partner unregistration [1 file, +6/-2]
  4833d0a92b iommu: Handle race with default domain setup [1 file, +5/-0]
  1042d22942 nvme: fixup scan failure for non-ANA multipath controllers [1 file, +1/-1]
  1b7647efad usb: xhci: Fix Short Packet handling rework ignoring errors [1 file, +1/-1]
  ab5281d21e usb: typec: class: Unlocked on error in typec_register_partner() [1 file, +1/-0]
  6b9ebcbd31 mq-deadline: don't call req_get_ioprio from the I/O completion handler [1 file, +4/-9]

Changes in 6.12.26
	module: sign with sha512 instead of sha1 by default
	tracing: Add __print_dynamic_array() helper
	tracing: Verify event formats that have "%*p.."
	mm/vmscan: don't try to reclaim hwpoison folio
	soc: qcom: ice: introduce devm_of_qcom_ice_get
	mmc: sdhci-msm: fix dev reference leaked through of_qcom_ice_get
	PM: EM: use kfree_rcu() to simplify the code
	PM: EM: Address RCU-related sparse warnings
	media: i2c: imx214: Use subdev active state
	media: i2c: imx214: Simplify with dev_err_probe()
	media: i2c: imx214: Convert to CCI register access helpers
	media: i2c: imx214: Replace register addresses with macros
	media: i2c: imx214: Check number of lanes from device tree
	media: i2c: imx214: Fix link frequency validation
	media: ov08x40: Move ov08x40_identify_module() function up
	media: ov08x40: Add missing ov08x40_identify_module() call on stream-start
	block: remove the write_hint field from struct request
	block: remove the ioprio field from struct request
	block: make sure ->nr_integrity_segments is cloned in blk_rq_prep_clone
	net: dsa: mv88e6xxx: fix VTU methods for 6320 family
	iio: adc: ad7768-1: Move setting of val a bit later to avoid unnecessary return value check
	iio: adc: ad7768-1: Fix conversion result sign
	arm64: dts: ti: Refactor J784s4 SoC files to a common file
	arm64: dts: ti: k3-j784s4-j742s2-main-common: Fix serdes_ln_ctrl reg-masks
	of: resolver: Simplify of_resolve_phandles() using __free()
	of: resolver: Fix device node refcount leakage in of_resolve_phandles()
	scsi: ufs: qcom: fix dev reference leaked through of_qcom_ice_get
	PCI/MSI: Convert pci_msi_ignore_mask to per MSI domain flag
	PCI/MSI: Handle the NOMASK flag correctly for all PCI/MSI backends
	PCI/MSI: Add an option to write MSIX ENTRY_DATA before any reads
	accel/ivpu: Add auto selection logic for job scheduler
	accel/ivpu: Fix the NPU's DPU frequency calculation
	ksmbd: use __GFP_RETRY_MAYFAIL
	ksmbd: add netdev-up/down event debug print
	ksmbd: browse interfaces list on FSCTL_QUERY_INTERFACE_INFO IOCTL
	ksmbd: fix use-after-free in __smb2_lease_break_noti()
	scsi: ufs: exynos: Remove empty drv_init method
	scsi: ufs: exynos: Remove superfluous function parameter
	scsi: ufs: exynos: Add gs101_ufs_drv_init() hook and enable WriteBooster
	scsi: ufs: exynos: Move UFS shareability value to drvdata
	scsi: ufs: exynos: Disable iocc if dma-coherent property isn't set
	net/niu: Niu requires MSIX ENTRY_DATA fields touch before entry reads
	drm/xe/bmg: Add one additional PCI ID
	drm/amd/display: Fix unnecessary cast warnings from checkpatch
	drm/amd/display/dml2: use vzalloc rather than kzalloc
	lib/Kconfig.ubsan: Remove 'default UBSAN' from UBSAN_INTEGER_WRAP
	ceph: Fix incorrect flush end position calculation
	cpufreq: sun50i: prevent out-of-bounds access
	dma/contiguous: avoid warning about unused size_bytes
	cpufreq: apple-soc: Fix null-ptr-deref in apple_soc_cpufreq_get_rate()
	cpufreq: scmi: Fix null-ptr-deref in scmi_cpufreq_get_rate()
	cpufreq: scpi: Fix null-ptr-deref in scpi_cpufreq_get_rate()
	scsi: ufs: mcq: Add NULL check in ufshcd_mcq_abort()
	cpufreq: cppc: Fix invalid return value in .get() callback
	cpufreq: Do not enable by default during compile testing
	cpufreq: fix compile-test defaults
	btrfs: avoid page_lockend underflow in btrfs_punch_hole_lock_range()
	btrfs: zoned: return EIO on RAID1 block group write pointer mismatch
	cgroup/cpuset-v1: Add missing support for cpuset_v2_mode
	vhost-scsi: Add better resource allocation failure handling
	vhost-scsi: Fix vhost_scsi_send_bad_target()
	vhost-scsi: Fix vhost_scsi_send_status()
	net/mlx5: Fix null-ptr-deref in mlx5_create_{inner_,}ttc_table()
	net/mlx5: Move ttc allocation after switch case to prevent leaks
	scsi: core: Clear flags for scsi_cmnd that did not complete
	scsi: ufs: core: Add NULL check in ufshcd_mcq_compl_pending_transfer()
	net: lwtunnel: disable BHs when required
	net: phy: leds: fix memory leak
	tipc: fix NULL pointer dereference in tipc_mon_reinit_self()
	net: ethernet: mtk_eth_soc: net: revise NETSYSv3 hardware configuration
	fix a couple of races in MNT_TREE_BENEATH handling by do_move_mount()
	net_sched: hfsc: Fix a UAF vulnerability in class handling
	net_sched: hfsc: Fix a potential UAF in hfsc_dequeue() too
	net: dsa: mt7530: sync driver-specific behavior of MT7531 variants
	pds_core: Prevent possible adminq overflow/stuck condition
	pds_core: handle unsupported PDS_CORE_CMD_FW_CONTROL result
	pds_core: Remove unnecessary check in pds_client_adminq_cmd()
	pds_core: make wait_context part of q_info
	block: never reduce ra_pages in blk_apply_bdi_limits
	iommu/amd: Return an error if vCPU affinity is set for non-vCPU IRTE
	riscv: Replace function-like macro by static inline function
	riscv: uprobes: Add missing fence.i after building the XOL buffer
	splice: remove duplicate noinline from pipe_clear_nowait
	bpf: Add namespace to BPF internal symbols
	perf/x86: Fix non-sampling (counting) events on certain x86 platforms
	LoongArch: Select ARCH_USE_MEMTEST
	LoongArch: Make regs_irqs_disabled() more clear
	LoongArch: Make do_xyz() exception handlers more robust
	KVM: SVM: Disable AVIC on SNP-enabled system without HvInUseWrAllowed feature
	netfilter: fib: avoid lookup if socket is available
	virtio_console: fix missing byte order handling for cols and rows
	sched_ext: Use kvzalloc for large exit_dump allocation
	crypto: atmel-sha204a - Set hwrng quality to lowest possible
	xen-netfront: handle NULL returned by xdp_convert_buff_to_frame()
	net: selftests: initialize TCP header and skb payload with zero
	net: phy: microchip: force IRQ polling mode for lan88xx
	scsi: mpi3mr: Fix pending I/O counter
	rust: firmware: Use `ffi::c_char` type in `FwFunc`
	drm: panel: jd9365da: fix reset signal polarity in unprepare
	drm/amd/display: Fix gpu reset in multidisplay config
	drm/amd/display: Force full update in gpu reset
	x86/insn: Fix CTEST instruction decoding
	irqchip/gic-v2m: Prevent use after free of gicv2m_get_fwnode()
	LoongArch: Handle fp, lsx, lasx and lbt assembly symbols
	LoongArch: Return NULL from huge_pte_offset() for invalid PMD
	LoongArch: Remove a bogus reference to ZONE_DMA
	LoongArch: KVM: Fully clear some CSRs when VM reboot
	LoongArch: KVM: Fix PMU pass-through issue if VM exits to host finally
	io_uring: fix 'sync' handling of io_fallback_tw()
	KVM: SVM: Allocate IR data using atomic allocation
	cxl/core/regs.c: Skip Memory Space Enable check for RCD and RCH Ports
	mcb: fix a double free bug in chameleon_parse_gdd()
	ata: libata-scsi: Improve CDL control
	ata: libata-scsi: Fix ata_mselect_control_ata_feature() return type
	ata: libata-scsi: Fix ata_msense_control_ata_feature()
	USB: storage: quirk for ADATA Portable HDD CH94
	scsi: Improve CDL control
	mei: me: add panther lake H DID
	mei: vsc: Fix fortify-panic caused by invalid counted_by() use
	KVM: x86: Explicitly treat routing entry type changes as changes
	KVM: x86: Reset IRTE to host control if *new* route isn't postable
	KVM: x86: Take irqfds.lock when adding/deleting IRQ bypass producer
	char: misc: register chrdev region with all possible minors
	misc: microchip: pci1xxxx: Fix Kernel panic during IRQ handler registration
	misc: microchip: pci1xxxx: Fix incorrect IRQ status handling during ack
	firmware: stratix10-svc: Add of_platform_default_populate()
	tty: Require CAP_SYS_ADMIN for all usages of TIOCL_SELMOUSEREPORT
	serial: msm: Configure correct working mode before starting earlycon
	serial: sifive: lock port in startup()/shutdown() callbacks
	USB: serial: ftdi_sio: add support for Abacus Electrics Optical Probe
	USB: serial: option: add Sierra Wireless EM9291
	USB: serial: simple: add OWON HDS200 series oscilloscope support
	xhci: Limit time spent with xHC interrupts disabled during bus resume
	usb: xhci: Fix invalid pointer dereference in Etron workaround
	usb: cdns3: Fix deadlock when using NCM gadget
	usb: chipidea: ci_hdrc_imx: fix usbmisc handling
	usb: chipidea: ci_hdrc_imx: fix call balance of regulator routines
	usb: chipidea: ci_hdrc_imx: implement usb_phy_init() error handling
	USB: OHCI: Add quirk for LS7A OHCI controller (rev 0x02)
	usb: dwc3: gadget: check that event count does not exceed event buffer length
	usb: dwc3: xilinx: Prevent spike in reset signal
	usb: quirks: add DELAY_INIT quirk for Silicon Motion Flash Drive
	usb: quirks: Add delay init quirk for SanDisk 3.2Gen1 Flash Drive
	USB: VLI disk crashes if LPM is used
	USB: wdm: handle IO errors in wdm_wwan_port_start
	USB: wdm: close race between wdm_open and wdm_wwan_port_stop
	USB: wdm: wdm_wwan_port_tx_complete mutex in atomic context
	USB: wdm: add annotation
	selftests/bpf: Fix stdout race condition in traffic monitor
	pinctrl: renesas: rza2: Fix potential NULL pointer dereference
	pinctrl: mcp23s08: Get rid of spurious level interrupts
	MIPS: cm: Detect CM quirks from device tree
	crypto: ccp - Add support for PCI device 0x1134
	crypto: lib/Kconfig - Fix lib built-in failure when arch is modular
	crypto: null - Use spin lock instead of mutex
	bpf: Fix kmemleak warning for percpu hashmap
	bpf: Fix deadlock between rcu_tasks_trace and event_mutex.
	clk: check for disabled clock-provider in of_clk_get_hw_from_clkspec()
	parisc: PDT: Fix missing prototype warning
	s390/sclp: Add check for get_zeroed_page()
	s390/tty: Fix a potential memory leak bug
	bpf: bpftool: Setting error code in do_loader()
	bpf: Only fails the busy counter check in bpf_cgrp_storage_get if it creates storage
	bpf: Reject attaching fexit/fmod_ret to __noreturn functions
	mailbox: pcc: Fix the possible race in updation of chan_in_use flag
	mailbox: pcc: Always clear the platform ack interrupt first
	usb: host: max3421-hcd: Add missing spi_device_id table
	fs/ntfs3: Keep write operations atomic
	fs/ntfs3: Fix WARNING in ntfs_extend_initialized_size
	usb: dwc3: gadget: Refactor loop to avoid NULL endpoints
	usb: dwc3: gadget: Avoid using reserved endpoints on Intel Merrifield
	sound/virtio: Fix cancel_sync warnings on uninitialized work_structs
	usb: xhci: Complete 'error mid TD' transfers when handling Missed Service
	usb: xhci: Fix isochronous Ring Underrun/Overrun event handling
	xhci: Handle spurious events on Etron host isoc enpoints
	i3c: master: svc: Add support for Nuvoton npcm845 i3c
	dmaengine: dmatest: Fix dmatest waiting less when interrupted
	usb: xhci: Avoid Stop Endpoint retry loop if the endpoint seems Running
	phy: rockchip: usbdp: Avoid call hpd_event_trigger in dp_phy_init
	usb: gadget: aspeed: Add NULL pointer check in ast_vhub_init_dev()
	usb: host: xhci-plat: mvebu: use ->quirks instead of ->init_quirk() func
	thunderbolt: Scan retimers after device router has been enumerated
	um: work around sched_yield not yielding in time-travel mode
	objtool: Silence more KCOV warnings
	objtool, panic: Disable SMAP in __stack_chk_fail()
	objtool, ASoC: codecs: wcd934x: Remove potential undefined behavior in wcd934x_slim_irq_handler()
	objtool, regulator: rk808: Remove potential undefined behavior in rk806_set_mode_dcdc()
	objtool, lkdtm: Obfuscate the do_nothing() pointer
	qibfs: fix _another_ leak
	ntb: reduce stack usage in idt_scan_mws
	ntb_hw_amd: Add NTB PCI ID for new gen CPU
	9p/net: fix improper handling of bogus negative read/write replies
	9p/trans_fd: mark concurrent read and writes to p9_conn->err
	rtc: pcf85063: do a SW reset if POR failed
	io_uring: always do atomic put from iowq
	kbuild: add dependency from vmlinux to sorttable
	sched/isolation: Make CONFIG_CPU_ISOLATION depend on CONFIG_SMP
	KVM: s390: Don't use %pK through tracepoints
	KVM: s390: Don't use %pK through debug printing
	cgroup/cpuset: Don't allow creation of local partition over a remote one
	selftests: ublk: fix test_stripe_04
	perf/core: Fix WARN_ON(!ctx) in __free_event() for partial init
	xen: Change xen-acpi-processor dom0 dependency
	nvme: requeue namespace scan on missed AENs
	ACPI: EC: Set ec_no_wakeup for Lenovo Go S
	ACPI PPTT: Fix coding mistakes in a couple of sizeof() calls
	drm/amdgpu: Increase KIQ invalidate_tlbs timeout
	drm/xe/xe3lpg: Apply Wa_14022293748, Wa_22019794406
	nvme: re-read ANA log page after ns scan completes
	nvme: multipath: fix return value of nvme_available_path
	objtool: Stop UNRET validation on UD2
	gpiolib: of: Move Atmel HSMCI quirk up out of the regulator comment
	x86/xen: disable CPU idle and frequency drivers for PVH dom0
	selftests/mincore: Allow read-ahead pages to reach the end of the file
	x86/bugs: Use SBPB in write_ibpb() if applicable
	x86/bugs: Don't fill RSB on VMEXIT with eIBRS+retpoline
	x86/bugs: Don't fill RSB on context switch with eIBRS
	nvmet-fc: take tgtport reference only once
	nvmet-fc: put ref when assoc->del_work is already scheduled
	cifs: Fix encoding of SMB1 Session Setup Kerberos Request in non-UNICODE mode
	timekeeping: Add a lockdep override in tick_freeze()
	cifs: Fix querying of WSL CHR and BLK reparse points over SMB1
	iommu: Clear iommu-dma ops on cleanup
	ext4: make block validity check resistent to sb bh corruption
	scsi: hisi_sas: Fix I/O errors caused by hardware port ID changes
	scsi: ufs: exynos: Ensure pre_link() executes before exynos_ufs_phy_init()
	scsi: ufs: exynos: Enable PRDT pre-fetching with UFSHCD_CAP_CRYPTO
	scsi: ufs: exynos: Move phy calls to .exit() callback
	scsi: ufs: exynos: gs101: Put UFS device in reset on .suspend()
	scsi: pm80xx: Set phy_attached to zero when device is gone
	ASoC: fsl_asrc_dma: get codec or cpu dai from backend
	x86/i8253: Call clockevent_i8253_disable() with interrupts disabled
	netfs: Only create /proc/fs/netfs with CONFIG_PROC_FS
	iomap: skip unnecessary ifs_block_is_uptodate check
	riscv: Provide all alternative macros all the time
	ksmbd: fix WARNING "do not call blocking ops when !TASK_RUNNING"
	spi: tegra210-quad: use WARN_ON_ONCE instead of WARN_ON for timeouts
	spi: tegra210-quad: add rate limiting and simplify timeout error message
	ubsan: Fix panic from test_ubsan_out_of_bounds
	x86/cpu: Add CPU model number for Bartlett Lake CPUs with Raptor Cove cores
	md/raid1: Add check for missing source disk in process_checks()
	drm/amdgpu: use a dummy owner for sysfs triggered cleaner shaders v4
	drm/amdgpu: Use the right function for hdp flush
	spi: spi-imx: Add check for spi_imx_setupxfer()
	Revert "drivers: core: synchronize really_probe() and dev_uevent()"
	driver core: introduce device_set_driver() helper
	driver core: fix potential NULL pointer dereference in dev_uevent()
	xfs: do not check NEEDSREPAIR if ro,norecovery mount.
	xfs: Do not allow norecovery mount with quotacheck
	xfs: rename xfs_iomap_swapfile_activate to xfs_vm_swap_activate
	xfs: flush inodegc before swapon
	selftests/bpf: fix bpf_map_redirect call for cpu map test
	selftests/bpf: make xdp_cpumap_attach keep redirect prog attached
	selftests/bpf: check program redirect in xdp_cpumap_attach
	selftests/bpf: Adjust data size to have ETH_HLEN
	usb: typec: class: Fix NULL pointer access
	vmxnet3: Fix malformed packet sizing in vmxnet3_process_xdp
	comedi: jr3_pci: Fix synchronous deletion of timer
	ext4: goto right label 'out_mmap_sem' in ext4_setattr()
	usb: typec: class: Invalidate USB device pointers on partner unregistration
	Revert "net: dsa: mv88e6xxx: fix internal PHYs for 6320 family"
	net: dsa: mv88e6xxx: fix atu_move_port_mask for 6341 family
	net: dsa: mv88e6xxx: enable PVT for 6321 switch
	net: dsa: mv88e6xxx: enable .port_set_policy() for 6320 family
	net: dsa: mv88e6xxx: enable STU methods for 6320 family
	iommu: Handle race with default domain setup
	crypto: lib/Kconfig - Hide arch options from user
	media: i2c: imx214: Fix uninitialized variable in imx214_set_ctrl()
	MIPS: cm: Fix warning if MIPS_CM is disabled
	nvme: fixup scan failure for non-ANA multipath controllers
	usb: xhci: Fix Short Packet handling rework ignoring errors
	objtool: Ignore end-of-section jumps for KCOV/GCOV
	objtool: Silence more KCOV warnings, part 2
	usb: typec: class: Unlocked on error in typec_register_partner()
	crypto: Kconfig - Select LIB generic option
	arm64: dts: ti: k3-j784s4-j742s2-main-common: Correct the GICD size
	mq-deadline: don't call req_get_ioprio from the I/O completion handler
	Linux 6.12.26

Change-Id: Iff5be8c388b8b915652fafb787156a4653f060aa
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-05-20 16:37:12 +00:00
Greg Kroah-Hartman 72655c8488 Merge branch 'android16-6.12' into branch 'android16-6.12-lts'
Catch the -lts branch up with all of the updates and kmi break that
happened in the android16-6.12 branch.  Changes included in here are:

* 147b27e8d6 ANDROID: nvmet: Use the bdev_is_zone_start() function
* 392bbaffdc ANDROID: scsi: ufs: Support I/O tracing for zoned block devices
* e395d18c8b ANDROID: scsi: scsi_debug: Support npo2 zone sizes
* 497ca126dd ANDROID: scsi/sd_zbc: Support npo2 zone sizes
* 355dfccf9d ANDROID: dm-table: allow zoned devices with non power-of-2 zone sizes
* d6f0f66569 ANDROID: block: Do not set the I/O priority for zoned writes
* 30ce6652ee ANDROID: block: Support npo2 zone sizes
* 4a77dbe5c5 UPSTREAM: loop: fix queue freeze vs limits lock order
* d2eefa734f UPSTREAM: loop: refactor queue limits updates
* b0477a0759 UPSTREAM: loop: Fix ABBA locking race
* 49d8530dfe UPSTREAM: loop: Simplify discard granularity calc
* f1aac3cfaf UPSTREAM: loop: Use bdev limit helpers for configuring discard
* 02cf51391e UPSTREAM: usb-storage: fix queue freeze vs limits lock order
* 96dfef3be8 UPSTREAM: nbd: fix queue freeze vs limits lock order
* 1bf8be0b4e UPSTREAM: nvme: fix queue freeze vs limits lock order
* 32ab5e2dd9 UPSTREAM: block: fix queue freeze vs limits lock order in sysfs store methods
* e4eb47a3ec BACKPORT: block: add a store_limit operations for sysfs entries
* 574e0848d2 UPSTREAM: block: add a queue_limits_commit_update_frozen helper
* 65ad590076 FROMGIT: genirq: Retain depth for managed IRQs across CPU hotplug
* 1bc40b53aa FROMGIT: ufs: core: support updating device command timeout
* 5e97c36004 ANDROID: Build Rust Binder as a GKI module
* daae469749 ANDROID: rust_binder: handle read/write_consumed > read/write_size
* b23e338263 ANDROID: rust_binder: add Rust Binder to Makefile
* 7163533526 ANDROID: rust_binder: fixups for 6.12.19 LTS
* bf40001347 ANDROID: rust_binder: add back tracepoints
* dac7c66bc9 ANDROID: rust_binder: move Rust Binder in preparation for GKI module
* 8313296331 FROMGIT: rust: alloc: add Vec::insert_within_capacity
* c28afde01d FROMGIT: rust: alloc: add Vec::remove
* e1da60354a FROMGIT: rust: alloc: add Vec::retain
* 1e01dcf3be FROMGIT: rust: alloc: add Vec::drain_all
* 1a17ca097d FROMGIT: rust: alloc: add Vec::push_within_capacity
* 75c0948156 FROMGIT: rust: alloc: add Vec::pop
* ed2019e2c4 FROMGIT: rust: alloc: add Vec::clear
* 04d685ecf9 FROMGIT: rust: alloc: replace `Vec::set_len` with `inc_len`
* 597ebe7c32 FROMGIT: rust: alloc: refactor `Vec::truncate` using `dec_len`
* 8a1546ee71 FROMGIT: rust: alloc: add `Vec::dec_len`
* 48080570b0 FROMGIT: rust: alloc: add Vec::len() <= Vec::capacity invariant
* 7907fdcba6 FROMGIT: rust: alloc: allow coercion from `Box<T>` to `Box<dyn U>` if T implements U
* 9de29f7183 FROMGIT: rust: alloc: use `spare_capacity_mut` to reduce unsafe
* c40401d665 FROMGIT: rust: alloc: add Vec::resize method
* 9d37907c65 FROMGIT: rust: alloc: add Vec::truncate method
* f037ab7a73 FROMGIT: rust: alloc: add missing invariant in Vec::set_len()
* 025e0fc417 UPSTREAM: rust: kunit: allow to know if we are in a test
* 86603276f4 UPSTREAM: rust: macros: add macro to easily run KUnit tests
* f8c704efd6 BACKPORT: rust: kunit: add KUnit case and suite macros
* 1b461575a8 UPSTREAM: rust: add kunitconfig
* 615a5b6d7e UPSTREAM: rust: uaccess: generalize userSliceReader to support any Vec
* 0690b3438b ANDROID: 2025/05/15 KMI update
* daf75d7717 FROMLIST: mmc: sdhci-msm: Enable force hw reset during cqe recovery
* 794391e0e8 FROMLIST: mmc: core: Introduce new flag to force hardware reset
* 84e14946eb ANDROID: GKI: add ANDROID_OEM_DATA in struct bio
* e7b9281897 ANDROID: rust: allow zero init for KABI members
* 9027c8ec43 ANDROID: 16K: Add VMA padding size to smaps output
* 307be4b887 ANDROID: 16K: Don't copy data vma for maps/smaps output
* d378f3ab39 ANDROID: 16K: Fixup padding vm_flags bits on VMA splits
* c0d7f9802a ANDROID: 16K: Introduce pgsize_migration_inline.h
* 6fd1ed47f5 ANDROID: 16K: Fix vm_flags conflicts from mseal
* 2a651ea884 ANDROID: 16K: Don't set padding vm_flags on 32-bit archs
* 81734e02c6 ANDROID: 16K: Avoid mmap lock assertions for padding VMAs
* 4199eaf23e ANDROID: 16K: Only check basename of linker context
* 6050c4b129 ANDROID: 16K: Avoid and document padding madvise lock warning
* 6e64e9ce1f ANDROID: 16K: Fix show maps CFI failure
* 95d0b11a65 ANDROID: 16K: Handle pad VMA splits and merges
* 29dc8b580b ANDROID: 16K: madvise_vma_pad_pages: Remove filemap_fault check
* bcbb9d3c85 ANDROID: 16K: Only madvise padding from dynamic linker context
* 2feb999649 ANDROID: 16K: Separate padding from ELF LOAD segment mappings
* 092ff7e5b4 ANDROID: 16K: Exclude ELF padding for fault around range
* a3b4e8f698 ANDROID: 16K: Use MADV_DONTNEED to save VMA padding pages.
* 0d793cde88 ANDROID: 16K: Introduce ELF padding representation for VMAs
* 918c98f267 ANDROID: 16K: Introduce /sys/kernel/mm/pgsize_migration/enabled
* e9420a4582 ANDROID: 16K: rust: ashmem: __page_align VMA size check
* d44ff7a3ed ANDROID: 16K: Introduce rust __page_*() helpers
* e39fcef01c ANDROID: 16K: Duplicate command line for parsing page_shift
* 44a6882cc7 ANDROID: 16K: Init page_shift param in a pure_initcall()
* 68ba0f4dfb ANDROID: 16K: __PAGE_ALIGN() virtio gpu dumb buffers
* 1022438243 ANDROID: 16K: Avoid conflicting __PAGE_SIZE in bpf/core
* 778a447513 ANDROID: 16K: Emulate cachestat counters
* 0d44e1eb0e ANDROID: 16K: Disable kernel APIs indexed by PFNs
* d684b3125e ANDROID: 16K: Emulate pread() for pagemap
* 669f0c4355 ANDROID: 16K: Emulate /proc/pid/pagemap
* 3c9a39c770 ANDROID: 16K: Fix mincore emulation
* 8aab407984 ANDROID: 16K: Emulate mincore() syscall
* 596774b15c ANDROID: 16K: x86_64: Disable userfaultfd
* c94c31e526 ANDROID: 16K: Update sysctl_perf_event_mlock if PERF_EVENTS enabled
* 13ba0aec9c ANDROID: 16K: Fixup perf_mmap check for metadata page
* 03ce5534fc ANDROID: 16K: Fix swapfile header
* 53ab86eb55 ANDROID: 16K: Fix SIGBUS semantics and document __filemap_fixup()
* 50a96587af ANDROID: 16K: [s]maps: Fold fixup entries into the parent entry
* 57bbcef534 ANDROID: 16K: Ensure mseal start and len are 16kB multiples
* 5c1d7ef671 ANDROID: 16K: Handle pgoff > file_size for shmem and file backed VMAs
* cd48f9a1f7 ANDROID: 16K: Ensure stack expansion size is __PAGE_SIZE multiple
* a8df614576 ANDROID: 16K: Only support page size emulation for x86_64
* ac98b230db ANDROID: 16K: Use bit 59 for __VM_NO_COMPAT
* eb54f19663 ANDROID: 16K: Fix __MAP_NO_COMPAT overflow
* 36157a52cd ANDROID: 16K: __PAGE_ALIGN dma-bufs size from heap allocations
* 65df6a39b7 ANDROID: 16K: Align vsyscall mapping size to a 16kB multiple
* 4395898bf5 ANDROID: 16K: Align vdso mapping size to a 16kB multiple
* 37ebd01b5a ANDROID: 16K: Make the x86 vdso layout 16kB compatible
* c64a15a595 ANDROID: 16K: Introduce __MAX_PAGE_SIZE macros
* 60b3135822 ANDROID: 16K: Remove androidboot from page_shift kernel param
* 5e32ba9023 ANDROID: 16K: Remove unescessary err log in randomize_page()
* 1ae0864980 ANDROID: 16K Prevent non-__PAGE_ALIGNED() VMA splits by anon names
* 68e0528b38 ANDROID: 16K: Remove anon name for fixup VMA
* f7f25a5b1a ANDROID: 16K: Add page_compat[_enabled] to symbol list
* 93bfe702cd ANDROID: 16K: Export page compat symbols
* 181bc19bef ANDROID: 16K: x86_64: Allow stack randomization of twice page-size
* f51703f4c1 ANDROID: 16K: x86_64: __PAGE_ALIGN mmap randomization
* 4daa4c1fec ANDROID: 16K: brk: __PAGE_ALIGN brk
* 7852452429 ANDROID: 16K: mlock: __PAGE_ALIGN addr and len
* 4956d7c6c4 ANDROID: 16K: msync: __PAGE_ALIGN addr and len
* 5d8eb7f9e0 ANDROID: 16K: madvise: __PAGE_ALIGN addr and len
* a52b76b874 ANDROID: 16K: mremap: __PAGE_ALIGN addr and len
* 2d3fed3a43 ANDROID: 16K: mprotect: __PAGE_ALIGN addr and len
* 397425965f ANDROID: 16K: munmap: __PAGE_ALIGN addr and len
* a9e38ff89a ANDROID: 16K: __PAGE_ALIGN stack_[top|base]
* ba166bce2c ANDROID: 16K: __PAGE_ALIGN randomize_stack_top() address
* 9ba9a0891b ANDROID: 16K: __PAGE_ALIGN randomize_page() address
* 81e0928547 ANDROID: 16K: __PAGE_ALIGN mmap hint address
* a1e630ea0d ANDROID: 16K: ashmem: Fix size check
* df9123472f ANDROID: 16K: Fix selinux mmap size check
* 7dea17008f ANDROID: 16K: procfs: maps: Don't show fixup VMAs
* e076e9ff2c ANDROID: 16K: Handle filemap faults
* a9ccc1128e ANDROID: 16K: Introduce __VM_NO_COMPAT vma flag
* e7f83d4d4b ANDROID: 16K: Ensure unmapped_area returns a __PAGE_ALIGNED address
* 796be8fd27 ANDROID: 16K: Reduce mmap rand bits
* 80e2a42d97 ANDROID: 16K: x86_64: Set ELF_EXEC_PAGESIZE to __PAGE_SIZE
* 58e2fa4ec4 ANDROID: 16K: Remove build time dependencies on ELF_EXEC_PAGESIZE
* d09cd43b3f ANDROID: 16K: Log unaligned operations
* 1fb2de0c3d ANDROID: 16K: Add page-compat helper macros
* a052d19e1c ANDROID: GKI: Pad vendor properties to power_supply_property enum
* 61de19b772 ANDROID: drivers/iommu: Pad iommu structs
* 6cb1db877d ANDROID: KVM: arm64: Pad more pKVM structs
* b3c31c9b21 ANDROID: KVM: arm64: Drop struct pkvm_mapping from KMI
* ef10b442e4 ANDROID: KVM: arm64: Remove struct kvm_cpu_context from the KMI
* 15bf9aa274 ANDROID: GKI: Add ABI padding for kcompressd feature
* e80ed6bcfb ANDROID: GKI: Add memory reclaim ABI padding
* 9e96103d83 ANDROID: GKI: Add dmabuf ABI padding
* 4bd97e7a02 ANDROID: GKI: Add cgroup ABI padding
* b209d55c0e ANDROID: GKI: Add cpuset ABI padding
* 060da33ae4 ANDROID: GKI: Add memcg ABI padding
* d48d0d0892 FROMLIST: scsi: core: Implement reserved command handling
* 26febb7cde UPSTREAM: block: track queue dying state automatically for modeling queue freeze lockdep
* df5f9ab297 UPSTREAM: block: don't verify queue freeze manually in elevator_init_mq()
* 752dff69ae UPSTREAM: block: track disk DEAD state automatically for modeling queue freeze lockdep
* 225f2e16ad UPSTREAM: block: don't reorder requests in blk_mq_add_to_batch
* bdcd6a28fd UPSTREAM: block: don't reorder requests in blk_add_rq_to_plug
* 24f685a927 UPSTREAM: block: add a rq_list type
* bbce2aa253 UPSTREAM: block: remove rq_list_move
* 128144da22 ANDROID: KVM: arm64: Add smc64 trap handling for protected guests
* 2c1385ae0e ANDROID: Modify android_rvh_find_lowest_rq hook
* bad3ca6c52 ANDROID: GKI: add vendor padding variable in struct nf_conn
* ef3d16e0e0 ANDROID: vendor_hooks: add a field in pglist_data
* 0dd21f133b ANDROID: scsi: ufs: add UFSHCD_ANDROID_QUIRK_SET_IID_TO_ONE
* 75adb09e2f ANDROID: GKI: the "reusachtig" padding sync with android16-6.12
* 20159aa0ac UPSTREAM: PCI: Check BAR index for validity
* 46f484fa4d UPSTREAM: perf: Fix hang while freeing sigtrap event
* f295287ed4 UPSTREAM: perf/core: Simplify the perf_event_alloc() error path
* 748bd1ca17 UPSTREAM: perf/core: Add aux_pause, aux_resume, aux_start_paused
* 887fb3f16c ANDROID: KVM: arm64: Add __pkvm_host_donate_sglist_hyp
* a7667808d9 UPSTREAM: tools/selftests: add guard region test for /proc/$pid/pagemap
* dd6e353d71 UPSTREAM: fs/proc/task_mmu: add guard region bit to pagemap
* df3e8432fa UPSTREAM: tools/selftests: add file/shmem-backed mapping guard region tests
* bc91eb889e UPSTREAM: tools/selftests: expand all guard region tests to file-backed
* 458e4dbd0b UPSTREAM: selftests/mm: rename guard-pages to guard-regions
* 8261d30079 UPSTREAM: mm: allow guard regions in file-backed and read-only mappings
* ca6b245e10 UPSTREAM: selftests/mm: use PIDFD_SELF in guard pages test
* 99b3bb2022 BACKPORT: selftests/pidfd: add tests for PIDFD_SELF_*
* 7a879200c9 UPSTREAM: selftests/pidfd: add new PIDFD_SELF* defines
* 1734a4ad6b BACKPORT: pidfd: add PIDFD_SELF* sentinels to refer to own thread/process
* b00dca6fb7 UPSTREAM: selftests/mm: add fork CoW guard page test
* 5367c0eacc BACKPORT: selftests/mm: add self tests for guard page feature
* 86f861b42e UPSTREAM: tools: testing: update tools UAPI header for mman-common.h
* b9ee6db5a8 BACKPORT: mm: madvise: implement lightweight guard page mechanism
* c14f85307d UPSTREAM: mm: add PTE_MARKER_GUARD PTE marker
* c5be90ae70 UPSTREAM: mm: pagewalk: add the ability to install PTEs
* 3306eb50a4 FROMGIT: docs: core-api: document the IOVA-based API
* 26405baef4 FROMGIT: dma-mapping: add a dma_need_unmap helper
* 66bc206d64 FROMGIT: dma-mapping: Implement link/unlink ranges API
* 59a15e3bf1 FROMGIT: iommu/dma: Factor out a iommu_dma_map_swiotlb helper
* 0f2253b2b1 FROMGIT: dma-mapping: Provide an interface to allow allocate IOVA
* c64f83e1d6 FROMGIT: iommu: add kernel-doc for iommu_unmap_fast
* 5c59ff3809 FROMGIT: iommu: generalize the batched sync after map interface
* 15ad0760b8 FROMGIT: dma-mapping: move the PCI P2PDMA mapping helpers to pci-p2pdma.h
* 661e6bda0e FROMGIT: PCI/P2PDMA: Refactor the p2pdma mapping helpers
* e44dfa62df Reapply "ANDROID: enable memory allocation profiling configs"
* 60372b88d2 ANDROID: binder: add OEM data to struct binder_alloc
* 31f62a008e ANDROID: Limit vfs-only namespace to GKI builds
* e2c81a7fa3 ANDROID: Fix incorrect namespacing for ANDROID_GKI_VFS_EXPORT_ONLY
* 7af261fc12 ANDROID: KVM: arm64: Use smccc 1.2 for direct FF-A calls
* 996a35040a FROMLIST: dm-zone: Use bdev_*() helper functions where applicable
* 1d1b2e8d63 FROMGIT: perf/aux: Allocate non-contiguous AUX pages by default
* 6e0b046d59 UPSTREAM: wifi: cfg80211: fix out-of-bounds access during multi-link element defragmentation
* 617a8cdb8d ANDROID: GKI: add OEM data to struct scan_control for XM OGKI
* acc91ef94b FROMGIT: dma-buf: insert memory barrier before updating num_fences
* 85856ec8b2 ANDROID: gunyah: Fix potential use-after-free in gunyah_rm_notifier_register
* e48193bfcf ANDROID: KVM: arm64: Reserve all args for req_mmio
* 42cfdfb46c ANDROID: GKI: Add reservation and use macros for non-LTS backports
* e1cdedc5db FROMGIT: mm/memcg: use kmem_cache when alloc memcg pernode info
* 65c043e1ca FROMGIT: mm/memcg: use kmem_cache when alloc memcg
* 434e2d5481 FROMGIT: mm/memcg: move mem_cgroup_init() ahead of cgroup_init()
* 4e16895056 ANDROID: GKI: Update oplus symbol list
* 28cbf47bba ANDROID: GKI: Export css_task_iter_start()
* 84849bc819 Revert "ANDROID: arm64: Forcefully disable SME at runtime"
* 0aaf2786fa FROMGIT: arm64/fpsimd: ptrace: Gracefully handle errors
* a51c741bb6 FROMGIT: arm64/fpsimd: ptrace: Mandate SVE payload for streaming-mode state
* 1d05f8264a FROMGIT: arm64/fpsimd: ptrace: Do not present register data for inactive mode
* 958a94681f FROMGIT: arm64/fpsimd: ptrace: Save task state before generating SVE header
* 3baa9071c3 FROMGIT: arm64/fpsimd: ptrace/prctl: Ensure VL changes leave task in a valid state
* ccf055346e FROMGIT: arm64/fpsimd: ptrace/prctl: Ensure VL changes do not resurrect stale data
* e18a498a2f FROMGIT: BACKPORT: arm64/fpsimd: Make clone() compatible with ZA lazy saving
* a6267d4bf5 FROMGIT: arm64/fpsimd: Clear PSTATE.SM during clone()
* 370e80e212 FROMGIT: arm64/fpsimd: Consistently preserve FPSIMD state during clone()
* f5db1f9a3b FROMGIT: arm64/fpsimd: Remove redundant task->mm check
* 57f5b387c4 FROMGIT: arm64/fpsimd: signal: Use SMSTOP behaviour in setup_return()
* f940d322b6 FROMGIT: arm64/fpsimd: Add task_smstop_sm()
* 73106ecef5 FROMGIT: arm64/fpsimd: Factor out {sve,sme}_state_size() helpers
* f0f4be3921 FROMGIT: arm64/fpsimd: Clarify sve_sync_*() functions
* 49bba8e1e8 FROMGIT: arm64/fpsimd: ptrace: Consistently handle partial writes to NT_ARM_(S)SVE
* b2853208b1 FROMGIT: arm64/fpsimd: signal: Consistently read FPSIMD context
* bed5006f4a FROMGIT: arm64/fpsimd: signal: Mandate SVE payload for streaming-mode state
* 63897a249f FROMGIT: arm64/fpsimd: signal: Clear PSTATE.SM when restoring FPSIMD frame only
* 37749ff2f7 FROMGIT: arm64/fpsimd: Do not discard modified SVE state
* f01e49470a FROMGIT: arm64/fpsimd: Avoid warning when sve_to_fpsimd() is unused
* 787c2bf09b FROMGIT: arm64/fpsimd: signal: Clear TPIDR2 when delivering signals
* dd9f8f02e9 FROMGIT: arm64/fpsimd: signal: Simplify preserve_tpidr2_context()
* 9592e13c60 FROMGIT: arm64/fpsimd: signal: Always save+flush state early
* 14383c6162 FROMGIT: arm64/fpsimd: signal32: Always save+flush state early
* 0c377582f6 FROMGIT: arm64/fpsimd: Add fpsimd_save_and_flush_current_state()
* acd59f18f3 FROMGIT: arm64/fpsimd: Fix merging of FPSIMD state during signal return
* f78acfcc31 FROMGIT: arm64/fpsimd: Reset FPMR upon exec()
* 32dbf4add0 FROMGIT: arm64/fpsimd: Avoid clobbering kernel FPSIMD state with SMSTOP
* 2d33087d98 FROMGIT: arm64/fpsimd: Don't corrupt FPMR when streaming mode changes
* c757f1bcc8 FROMGIT: arm64/fpsimd: Discard stale CPU state when handling SME traps
* 64c0feb892 FROMGIT: arm64/fpsimd: Remove opportunistic freeing of SME state
* f55fc6340b FROMGIT: arm64/fpsimd: Remove redundant SVE trap manipulation
* 2ccf10f4a6 FROMGIT: arm64/fpsimd: Remove unused fpsimd_force_sync_to_sve()
* 1e380d1c0e FROMGIT: arm64/fpsimd: Avoid RES0 bits in the SME trap handler
* 6cf85d6ca1 BACKPORT: KVM: arm64: Eagerly switch ZCR_EL{1,2}
* 6c0394f0ef BACKPORT: KVM: arm64: Mark some header functions as inline
* 66762de87f BACKPORT: KVM: arm64: Refactor exit handlers
* d09c293b5b BACKPORT: KVM: arm64: Remove VHE host restore of CPACR_EL1.SMEN
* 5f2af6c19e BACKPORT: KVM: arm64: Remove VHE host restore of CPACR_EL1.ZEN
* f012246148 BACKPORT: KVM: arm64: Remove host FPSIMD saving for non-protected KVM
* 3aa13c0fd1 BACKPORT: KVM: arm64: Unconditionally save+flush host FPSIMD/SVE/SME state
* 5f1b9561a1 ANDROID: KVM: arm64: Eagerly restore host ZCR_EL2 after vcpu run in pKVM
* 86622b5452 ANDROID: ABI: update symbol list for honor
* 5addce7b33 ANDROID: GKI:Add VendorHook for ProbeTimeout
* e8df77b867 ANDROID: GKI: Update symbol list for qcom
* 6c6bf93463 ANDROID: GKI: update symbol list for xiaomi
* e8da2c8c48 ANDROID: Export cgroup function to allow module to remove control files
* f2c750c9f8 ANDROID: Update symbols list for imx
* c206f26b28 ANDROID: Update symbols to oplus symbol list.
* 55ac0abda4 ANDROID: Export the necessary symbols for the implementation of the BPF scheduler.
* de6714dc48 ANDROID: Drop tests_zip_arm64 from TV target.
* 7f12a7bda3 ANDROID: GKI: Update RTK STB KMI symbol list
* ba364a2340 ANDROID: vendor_hooks: add vendor hook in cma_alloc()
* 21de8f00f4 ANDROID: vendor hooks: use DECLARE_RESTRICTED_HOOK for android_rvh
* d574cb3cc1 ANDROID: GKI: update symbol list for xiaomi
* 41763ef33d ANDROID: GKI: Update symbols list file for oplus
* b62718ba86 ANDROID: vendor_hooks: add hook in __alloc_workqueue()
* c7b71fcb6f FROMLIST: xfrm: Migrate offload configuration
* 564d5ceda6 ANDROID: KVM: arm64: Fix relinquish filtering
* d9d550aef0 Revert "ANDROID: Revert^2 "KVM: arm64: iommu: Allow to boot without IOMMU driver""
* 8d139a5479 ANDROID: GKI: Update symbols list file for honor
* f3b22c7868 ANDROID: fs/proc: Perform priority inheritance around access_remote_vm()
* 06a574beb9 ANDROID: fix incorrect #ifdef for CONFIG_ANDROID_VENDOR_OEM_DATA
* d52356998b FROMLIST: scsi: ufs: core: Increase the UIC command timeout further
* 17f5bd09ee ANDROID: sched/psi: disable the privilege check if CONFIG_DEFAULT_SECURITY_SELINUX is enabled
* ad2761e088 ANDROID: ABI: Update pixel symbol list
* 86f6711a2d ANDROID: scsi: ufs: add complete init vendor hook
* 273b99c30a ANDROID: scsi: ufs: add vendor hook to override key reprogramming
* 05c9b03f4c FROMGIT: dm-verity: use softirq context only when !need_resched()
* a8027abd1e ANDROID: KVM: arm64: Redirect modprobe to /dev/kmsg
* 078ef75fa4 ANDROID: gki_defconfig: Enable CONFIG_ARM_SDE_INTERFACE
* f982a6b573 ANDROID: arm64: SDEI: Export SDEI related symbols
* b145782bbd FROMGIT: firmware: SDEI: Allow sdei initialization without ACPI_APEI_GHES
* cbd7c4caa9 ANDROID: KVM: arm64: Do not pkvm_init_devices() when no registered devices
* 1fad370b9e ANDROID: KVM: arm64: iommu: Do not remap on iommu_atomic_pool reclaim
* 890428fb57 ANDROID: Update symbols list for imx
* 776eedb13c ANDROID: ABI: Update symbol list for mtk
* ac8b302ab0 ANDROID: mm: Add vendor hook before rmqueue_bulk
* 34fe71fe24 ANDROID: GKI: Update symbol list file for xiaomi
* 88cb3505eb ANDROID: mm: export __pte_offset_map/unuse_swap_pte/read_swap_cache_async
* 46aa903098 ANDROID: Disable check_defconfig for kernel_aarch64_tv.
* 88680fe19e ANDROID: fuse-bpf: Fix recursion in fuse_copy_file_range
* 5838b5ac0a ANDROID: turn off KMI strict mode for TV builds
* e680506fe0 ANDROID: KVM: iommu: Allow IOMMU mapping in carveouts
* 4089d8be3f ANDROID: GKI: Update symbol list file for xiaomi
* 20adcab29c UPSTREAM: codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog()
* 4e4b0bdf85 ANDROID: GKI: Update QCOM symbol list
* b791ce76d1 ANDROID: GKI: Update the ABI symbol list for qcom
* 6690013277 FROMLIST: mm: add nr_free_highatomic in show_free_areas
* cedbc9e5ec ANDROID: GKI: Update qcom symbol list
* 2145149a38 ANDROID: implement wrapper for reverse migration
* dfc83778aa ANDROID: GKI: Update symbols list file for honor
* 1213a4027a ANDROID: ABI: Update pixel symbol list
* a546b31e53 BACKPORT: FROMGIT: coresight: core: Disable helpers for devices that fail to enable
* bdda915529 FROMGIT: coresight: catu: Introduce refcount and spinlock for enabling/disabling
* 2366a0bf75 UPSTREAM: firmware: arm_ffa: Upgrade FF-A version to v1.2 in the driver
* e5ea70aa2d ANDROID: gki_defconfig: do not use FineIBT on x86
* b73e9bfc92 FROMGIT: sched/core: Tweak wait_task_inactive() to force dequeue sched_delayed tasks

Change-Id: Ie76eebb5d135e428f1c0986639fca0d1ead2aa51
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-05-19 06:36:53 +00:00
Quentin Perret ef10b442e4 ANDROID: KVM: arm64: Remove struct kvm_cpu_context from the KMI
struct kvm_cpu_context pulls in a lot of KVM-internal types into the KMI
(struct kvm, struct kvm_vcpu, ...). None of these should be needed by
modules, so let's remove it from the KMI.

Bug: 357781595
Change-Id: I2302a9354721e5ef504a6c3e67d9bd4f17582ac8
Signed-off-by: Quentin Perret <qperret@google.com>
2025-05-16 12:17:59 +00:00
Leon Romanovsky 66bc206d64 FROMGIT: dma-mapping: Implement link/unlink ranges API
Introduce new DMA APIs to perform DMA linkage of buffers
in layers higher than DMA.

In proposed API, the callers will perform the following steps.
In map path:
	if (dma_can_use_iova(...))
	    dma_iova_alloc()
	    for (page in range)
	       dma_iova_link_next(...)
	    dma_iova_sync(...)
	else
	     /* Fallback to legacy map pages */
             for (all pages)
	       dma_map_page(...)

In unmap path:
	if (dma_can_use_iova(...))
	     dma_iova_destroy()
	else
	     for (all pages)
		dma_unmap_page(...)

Reviewed-by: Christoph Hellwig <hch@lst.de>
Tested-by: Jens Axboe <axboe@kernel.dk>
Reviewed-by: Luis Chamberlain <mcgrof@kernel.org>
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
(cherry picked from commit 433a76207dcf5facc0183acb790f6e8398585258
 https://git.kernel.org/pub/scm/linux/kernel/git/mszyprowski/linux.git)
[Daniel: Adopted to the absence of commit 6aa63a4ec947 ("iommu: Sort out domain
user data")]
Bug: 416098329
Signed-off-by: Daniel Mentz <danielmentz@google.com>
Change-Id: Ibf9e394630a8d14e2017bee9d2902a0daef4da89
2025-05-16 12:17:52 +00:00
Christoph Hellwig 59a15e3bf1 FROMGIT: iommu/dma: Factor out a iommu_dma_map_swiotlb helper
Split the iommu logic from iommu_dma_map_page into a separate helper.
This not only keeps the code neatly separated, but will also allow for
reuse in another caller.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Tested-by: Jens Axboe <axboe@kernel.dk>
Reviewed-by: Luis Chamberlain <mcgrof@kernel.org>
Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com>
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
(cherry picked from commit ed18a46262be4397cdc24382fb331c68846fef6e
 https://git.kernel.org/pub/scm/linux/kernel/git/mszyprowski/linux.git)
Bug: 416098329
[Daniel: Adopted to commit ed5035757c ("BACKPORT: FROMLIST: PCI: Rename
pci_dev->untrusted to pci_dev->requires_dma_protection")]
Signed-off-by: Daniel Mentz <danielmentz@google.com>
Change-Id: I0ece9ce844ebcbab5ee6c6c6b0e99dea6255a77b
2025-05-16 12:17:52 +00:00
Leon Romanovsky 0f2253b2b1 FROMGIT: dma-mapping: Provide an interface to allow allocate IOVA
The existing .map_pages() callback provides both allocating of IOVA
and linking DMA pages. That combination works great for most of the
callers who use it in control paths, but is less effective in fast
paths where there may be multiple calls to map_page().

These advanced callers already manage their data in some sort of
database and can perform IOVA allocation in advance, leaving range
linkage operation to be in fast path.

Provide an interface to allocate/deallocate IOVA and next patch
link/unlink DMA ranges to that specific IOVA.

In the new API a DMA mapping transaction is identified by a
struct dma_iova_state, which holds some recomputed information
for the transaction which does not change for each page being
mapped, so add a check if IOVA can be used for the specific
transaction.

The API is exported from dma-iommu as it is the only implementation
supported, the namespace is clearly different from iommu_* functions
which are not allowed to be used. This code layout allows us to save
function call per API call used in datapath as well as a lot of boilerplate
code.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Tested-by: Jens Axboe <axboe@kernel.dk>
Reviewed-by: Luis Chamberlain <mcgrof@kernel.org>
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
(cherry picked from commit 393cf700e6242032fbad51b248111ab6740ce8ad
 https://git.kernel.org/pub/scm/linux/kernel/git/mszyprowski/linux.git)
Bug: 416098329
[Daniel: Adopted to absence of commit 6aa63a4ec947 ("iommu: Sort out domain
user data")]
Signed-off-by: Daniel Mentz <danielmentz@google.com>
Change-Id: If1db370d0d2913e4391de8fc603901a375860687
2025-05-16 12:17:52 +00:00
Leon Romanovsky c64f83e1d6 FROMGIT: iommu: add kernel-doc for iommu_unmap_fast
Add kernel-doc section for iommu_unmap_fast to document existing
limitation of underlying functions which can't split individual ranges.

Suggested-by: Jason Gunthorpe <jgg@nvidia.com>
Acked-by: Will Deacon <will@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Tested-by: Jens Axboe <axboe@kernel.dk>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Reviewed-by: Luis Chamberlain <mcgrof@kernel.org>
Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com>
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
(cherry picked from commit dc2e69294358693cf5fba1a15717863d201d8838
 https://git.kernel.org/pub/scm/linux/kernel/git/mszyprowski/linux.git)
Bug: 416098329
Change-Id: I1ee0fd99f57a0695fbde497dc10bfbe578c9b7a3
2025-05-16 12:17:52 +00:00
Christoph Hellwig 5c59ff3809 FROMGIT: iommu: generalize the batched sync after map interface
For the upcoming IOVA-based DMA API we want to batch the
ops->iotlb_sync_map() call after mapping multiple IOVAs from
dma-iommu without having a scatterlist. Improve the API.

Add a wrapper for the map_sync as iommu_sync_map() so that callers
don't need to poke into the methods directly.

Formalize __iommu_map() into iommu_map_nosync() which requires the
caller to call iommu_sync_map() after all maps are completed.

Refactor the existing sanity checks from all the different layers
into iommu_map_nosync().

Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: Will Deacon <will@kernel.org>
Tested-by: Jens Axboe <axboe@kernel.dk>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Reviewed-by: Luis Chamberlain <mcgrof@kernel.org>
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
(cherry picked from commit 5c87cffe2d3853cfae61e9373ee98a0409839178
 https://git.kernel.org/pub/scm/linux/kernel/git/mszyprowski/linux.git)
Bug: 416098329
[Daniel: Adopted to commit 1a608d2b0d ("BACKPORT: FROMLIST: drivers/iommu:
Add deferred map_sg operations")]
Signed-off-by: Daniel Mentz <danielmentz@google.com>
Change-Id: Iefa5c86c91bc5b89113a68798898a3b5c6896edc
2025-05-16 12:17:52 +00:00
Christoph Hellwig 15ad0760b8 FROMGIT: dma-mapping: move the PCI P2PDMA mapping helpers to pci-p2pdma.h
To support the upcoming non-scatterlist mapping helpers, we need to go
back to have them called outside of the DMA API.  Thus move them out of
dma-map-ops.h, which is only for DMA API implementations to pci-p2pdma.h,
which is for driver use.

Note that the core helper is still not exported as the mapping is
expected to be done only by very highlevel subsystem code at least for
now.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Logan Gunthorpe <logang@deltatee.com>
Acked-by: Bjorn Helgaas <bhelgaas@google.com>
Tested-by: Jens Axboe <axboe@kernel.dk>
Reviewed-by: Luis Chamberlain <mcgrof@kernel.org>
Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com>
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
(cherry picked from commit ca2c2e4a78c619bcf1c1df29fee5981035f3fcbc
 https://git.kernel.org/pub/scm/linux/kernel/git/mszyprowski/linux.git)
[Daniel: Adopted to absence of commit 82ba975e4c43 ("mm: allow compound zone
device pages")]
Signed-off-by: Daniel Mentz <danielmentz@google.com>
Bug: 416098329
Change-Id: I9a9289e2d84fac6e4dbcbdd2a047c9fee585fe39
2025-05-16 12:17:52 +00:00
Christoph Hellwig 661e6bda0e FROMGIT: PCI/P2PDMA: Refactor the p2pdma mapping helpers
The current scheme with a single helper to determine the P2P status
and map a scatterlist segment force users to always use the map_sg
helper to DMA map, which we're trying to get away from because they
are very cache inefficient.

Refactor the code so that there is a single helper that checks the P2P
state for a page, including the result that it is not a P2P page to
simplify the callers, and a second one to perform the address translation
for a bus mapped P2P transfer that does not depend on the scatterlist
structure.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Logan Gunthorpe <logang@deltatee.com>
Acked-by: Bjorn Helgaas <bhelgaas@google.com>
Tested-by: Jens Axboe <axboe@kernel.dk>
Reviewed-by: Luis Chamberlain <mcgrof@kernel.org>
Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com>
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
(cherry picked from commit a25e7962db0d79882c9d32fd2a67a02e79129c0e
 https://git.kernel.org/pub/scm/linux/kernel/git/mszyprowski/linux.git)
Bug: 416098329
[Daniel: Adopted to absence of commit 82ba975e4c43 ("mm: allow compound zone
device pages")]
Signed-off-by: Daniel Mentz <danielmentz@google.com>
Change-Id: Ia2b610da45d0beb76744d9182ab8665b5e7dd072
2025-05-16 12:17:51 +00:00
Greg Kroah-Hartman f56453cbd7 Merge 6.12.24 into android16-6.12-lts
GKI (arm64) relevant 98 out of 394 changes, affecting 131 files +1443/-762
  40bc55e4fc cgroup/cpuset: Fix incorrect isolated_cpus update in update_parent_effective_cpumask() [1 file, +3/-3]
  9701dcbf5f cgroup/cpuset: Fix error handling in remote_partition_disable() [1 file, +20/-9]
  2dbd1b1660 cgroup/cpuset: Revert "Allow suppression of sched domain rebuild in update_cpumasks_hier()" [1 file, +14/-25]
  6b145f8b22 cgroup/cpuset: Enforce at most one rebuild_sched_domains_locked() call per operation [1 file, +33/-16]
  1b06f00eda cgroup/cpuset: Further optimize code if CONFIG_CPUSETS_V1 not set [1 file, +19/-20]
  cdb6e724e7 cgroup/cpuset: Fix race between newly created partition and dying one [4 files, +25/-4]
  179ef2f810 gpiolib: of: Fix the choice for Ingenic NAND quirk [1 file, +2/-0]
  cb8372e54f ublk: refactor recovery configuration flag helpers [1 file, +42/-20]
  caa5c8a235 ublk: fix handling recovery & reissue in ublk_abort_queue() [1 file, +26/-4]
  7c5957f790 tipc: fix memory leak in tipc_link_xmit [1 file, +1/-0]
  4d55144b12 codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog() [2 files, +3/-8]
  b2f3c3d57a tc: Ensure we have enough buffer space when sending filter netlink notifications [1 file, +45/-21]
  a065b99605 net: ethtool: Don't call .cleanup_data when prepare_data fails [1 file, +5/-3]
  70449ca406 net_sched: sch_sfq: use a temporary work area for validating configuration [1 file, +44/-12]
  f86293adce net_sched: sch_sfq: move the limit validation [1 file, +6/-4]
  6d98cd6342 net: phy: move phy_link_change() prior to mdio_bus_phy_may_suspend() [1 file, +13/-13]
  a6ed6f8ec8 net: phy: allow MDIO bus PM ops to start/stop state machine for phylink-controlled PHY [1 file, +29/-2]
  cc16f7402a ipv6: Align behavior across nexthops during path selection [1 file, +4/-4]
  c61feda373 perf/core: Add aux_pause, aux_resume, aux_start_paused [4 files, +110/-5]
  7ef5aa081f perf/core: Simplify the perf_event_alloc() error path [2 files, +78/-76]
  fa1827fa96 perf: Fix hang while freeing sigtrap event [2 files, +18/-47]
  52535688c2 fs: consistently deref the files table with rcu_dereference_raw() [1 file, +17/-9]
  67e85cfa95 umount: Allow superblock owners to force umount [1 file, +2/-1]
  1b3ebfb15d perf: arm_pmu: Don't disable counter in armpmu_add() [1 file, +3/-5]
  11ae4fec1f PM: hibernate: Avoid deadlock in hibernate_compressor_param_set() [1 file, +3/-3]
  ead1fc9f93 Flush console log from kernel_power_off() [3 files, +8/-3]
  cb58e90920 arm64: cputype: Add QCOM_CPU_PART_KRYO_3XX_GOLD [1 file, +2/-0]
  3c057a4904 media: uvcvideo: Add quirk for Actions UVC05 [1 file, +9/-0]
  cb1c6cb110 ALSA: usb-audio: Fix CME quirk for UF series keyboards [1 file, +74/-6]
  a6bf0fd322 net: page_pool: don't cast mp param to devmem [1 file, +1/-1]
  c6e50cb8bf f2fs: don't retry IO for corrupted data scenario [1 file, +4/-0]
  de94d0ca9e net: usb: asix_devices: add FiberGecko DeviceID [1 file, +17/-0]
  7204335d19 page_pool: avoid infinite loop to schedule delayed worker [1 file, +7/-1]
  ecc4613316 f2fs: fix to avoid out-of-bounds access in f2fs_truncate_inode_blocks() [1 file, +8/-1]
  5f815757e6 ext4: protect ext4_release_dquot against freezing [1 file, +17/-0]
  aa39d45071 Revert "f2fs: rebuild nat_bits during umount" [3 files, +59/-95]
  eb59cc31b6 ext4: ignore xattrs past end [1 file, +10/-1]
  a8a8076210 cdc_ether|r8152: ThinkPad Hybrid USB-C/A Dock quirk [3 files, +19/-0]
  299d7d27af net: vlan: don't propagate flags on open [1 file, +4/-27]
  40c70ff44b tracing: fix return value in __ftrace_event_enable_disable for TRACE_REG_UNREGISTER [1 file, +3/-1]
  6b7a32fa9b Bluetooth: hci_uart: fix race during initialization [1 file, +2/-1]
  fe6f1f349d Bluetooth: hci_qca: use the power sequencer for wcn6750 [1 file, +1/-1]
  feed98579d Bluetooth: qca: simplify WCN399x NVM loading [1 file, +6/-7]
  035e1bffc0 Bluetooth: Add quirk for broken READ_VOICE_SETTING [3 files, +15/-0]
  09246dfb5c Bluetooth: Add quirk for broken READ_PAGE_SCAN_TYPE [2 files, +10/-1]
  044c1b3528 drm: allow encoder mode_set even when connectors change for crtc [1 file, +1/-1]
  df33b535f0 drm: panel-orientation-quirks: Add support for AYANEO 2S [1 file, +2/-2]
  6fe4ed94ee drm: panel-orientation-quirks: Add quirks for AYA NEO Flip DS and KB [1 file, +18/-0]
  5dd6fdb889 drm: panel-orientation-quirks: Add quirk for AYA NEO Slide [1 file, +6/-0]
  a64e097426 drm: panel-orientation-quirks: Add new quirk for GPD Win 2 [1 file, +6/-0]
  ba5a998f84 drm: panel-orientation-quirks: Add quirk for OneXPlayer Mini (Intel) [1 file, +12/-0]
  f04612890c drm/debugfs: fix printk format for bridge index [1 file, +1/-1]
  b22cb42a5e drm/bridge: panel: forbid initializing a panel with unknown connector type [1 file, +4/-1]
  1c38108a49 drivers: base: devres: Allow to release group on device release [1 file, +7/-0]
  8feefd106a PCI: Enable Configuration RRS SV early [1 file, +5/-3]
  73d2b96250 PCI: Check BAR index for validity [4 files, +57/-10]
  9a6be23eb0 tracing: probe-events: Add comments about entry data storing code [1 file, +28/-0]
  7b9bdd7059 erofs: set error to bio if file-backed IO fails [1 file, +2/-0]
  806908d5d9 bpf: support SKF_NET_OFF and SKF_LL_OFF on skb frags [1 file, +44/-36]
  dd3edffae8 ext4: don't treat fhandle lookup of ea_inode as FS corruption [1 file, +48/-20]
  2ff58c5b26 arm64: cputype: Add MIDR_CORTEX_A76AE [1 file, +2/-0]
  4af2858435 arm64: errata: Add QCOM_KRYO_4XX_GOLD to the spectre_bhb_k24_list [1 file, +1/-0]
  3b0f2526c8 arm64: errata: Assume that unknown CPUs _are_ vulnerable to Spectre BHB [2 files, +102/-102]
  20c105f587 arm64: errata: Add KRYO 2XX/3XX/4XX silver cores to Spectre BHB safe list [1 file, +3/-0]
  c322789613 KVM: arm64: Tear down vGIC on failed vCPU creation [1 file, +5/-1]
  baea1762cd media: v4l2-dv-timings: prevent possible overflow in v4l2_detect_gtf() [1 file, +2/-2]
  0828d6e9ad io_uring/net: fix accept multishot handling [1 file, +2/-0]
  b7c6d081c1 io_uring/net: fix io_req_post_cqe abuse by send bundle [3 files, +6/-2]
  3e0356857e io_uring/kbuf: reject zero sized provided buffers [1 file, +2/-0]
  16d9067f00 ext4: fix off-by-one error in do_split [1 file, +1/-1]
  a1dde7457d f2fs: fix to avoid atomicity corruption of atomic file [2 files, +5/-3]
  e6bba32857 i3c: Add NULL pointer check in i3c_master_queue_ibi() [1 file, +3/-0]
  9eaec071f1 jbd2: remove wrong sb->s_sequence check [1 file, +0/-1]
  eec737e17e arm64: mops: Do not dereference src reg for a set operation [1 file, +2/-2]
  1dd288783d arm64: mm: Correct the update of max_pfn [1 file, +2/-1]
  5f7f6abd92 net: Fix null-ptr-deref by sock_lock_init_class_and_name() and rmmod. [2 files, +43/-2]
  53dc6b00c0 mm/rmap: reject hugetlb folios in folio_make_device_exclusive() [1 file, +1/-1]
  83b6b5061e mm: make page_mapped_in_vma() hugetlb walk aware [1 file, +9/-4]
  6dd8d9440f mm: fix lazy mmu docs and usage [1 file, +8/-6]
  2532df0a9b mm/mremap: correctly handle partial mremap() of VMA starting at 0 [1 file, +5/-5]
  cc98577f91 mm: add missing release barrier on PGDAT_RECLAIM_LOCKED unlock [1 file, +1/-1]
  14936034de mm/userfaultfd: fix release hang over concurrent GUP [1 file, +25/-26]
  65b259e3e0 mm/hwpoison: introduce folio_contain_hwpoisoned_page() helper [3 files, +8/-4]
  9e7c37fadb sctp: detect and prevent references to a freed transport in sendmsg [3 files, +18/-9]
  474b3194c8 tracing: Do not add length to print format in synthetic events [1 file, +0/-1]
  74f01c2ca8 dm-verity: fix prefetch-vs-suspend race [1 file, +8/-0]
  fae0a8796c KVM: Allow building irqbypass.ko as as module when kvm.ko is a module [3 files, +7/-7]
  dc83eccc93 of/irq: Fix device node refcount leakage in API of_irq_parse_one() [1 file, +27/-32]
  3540164c75 of/irq: Fix device node refcount leakage in API of_irq_parse_raw() [1 file, +8/-0]
  29cb94963c of/irq: Fix device node refcount leakages in of_irq_count() [1 file, +3/-1]
  d0f25a9977 of/irq: Fix device node refcount leakage in API irq_of_parse_and_map() [1 file, +5/-1]
  712d84459a of/irq: Fix device node refcount leakages in of_irq_init() [1 file, +3/-0]
  d69ad6e1a5 PCI: Fix reference leak in pci_alloc_child_bus() [1 file, +4/-1]
  9707d0c932 PCI: Fix reference leak in pci_register_host_bridge() [1 file, +7/-2]
  869202291a PCI: Fix wrong length of devres array [1 file, +1/-1]
  92ca7270fe ring-buffer: Use flush_kernel_vmap_range() over flush_dcache_folio() [1 file, +3/-2]
  9ca4fe3574 arm64: errata: Add newer ARM cores to the spectre_bhb_loop_affected() lists [1 file, +14/-1]
  281782d2c6 Bluetooth: hci_uart: Fix another race during initialization [2 files, +15/-6]

Changes in 6.12.24
	ASoC: Intel: adl: add 2xrt1316 audio configuration
	cgroup/cpuset: Fix incorrect isolated_cpus update in update_parent_effective_cpumask()
	cgroup/cpuset: Fix error handling in remote_partition_disable()
	cgroup/cpuset: Revert "Allow suppression of sched domain rebuild in update_cpumasks_hier()"
	cgroup/cpuset: Enforce at most one rebuild_sched_domains_locked() call per operation
	cgroup/cpuset: Further optimize code if CONFIG_CPUSETS_V1 not set
	cgroup/cpuset: Fix race between newly created partition and dying one
	gpiolib: of: Fix the choice for Ingenic NAND quirk
	selftests/futex: futex_waitv wouldblock test should fail
	ublk: refactor recovery configuration flag helpers
	ublk: fix handling recovery & reissue in ublk_abort_queue()
	drm/i915: Disable RPG during live selftest
	x86/acpi: Don't limit CPUs to 1 for Xen PV guests due to disabled ACPI
	drm/xe/hw_engine: define sysfs_ops on all directories
	ata: pata_pxa: Fix potential NULL pointer dereference in pxa_ata_probe()
	objtool: Fix INSN_CONTEXT_SWITCH handling in validate_unret()
	tipc: fix memory leak in tipc_link_xmit
	codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog()
	net: tls: explicitly disallow disconnect
	octeontx2-pf: qos: fix VF root node parent queue index
	tc: Ensure we have enough buffer space when sending filter netlink notifications
	net: ethtool: Don't call .cleanup_data when prepare_data fails
	drm/tests: modeset: Fix drm_display_mode memory leak
	drm/tests: helpers: Create kunit helper to destroy a drm_display_mode
	drm/tests: cmdline: Fix drm_display_mode memory leak
	drm/tests: modes: Fix drm_display_mode memory leak
	drm/tests: probe-helper: Fix drm_display_mode memory leak
	net: libwx: handle page_pool_dev_alloc_pages error
	ata: sata_sx4: Add error handling in pdc20621_i2c_read()
	drm/i915/huc: Fix fence not released on early probe errors
	nvmet-fcloop: swap list_add_tail arguments
	net_sched: sch_sfq: use a temporary work area for validating configuration
	net_sched: sch_sfq: move the limit validation
	smb: client: fix UAF in decryption with multichannel
	net: phy: move phy_link_change() prior to mdio_bus_phy_may_suspend()
	net: phy: allow MDIO bus PM ops to start/stop state machine for phylink-controlled PHY
	ipv6: Align behavior across nexthops during path selection
	net: ppp: Add bound checking for skb data on ppp_sync_txmung
	nft_set_pipapo: fix incorrect avx2 match of 5th field octet
	iommu/exynos: Fix suspend/resume with IDENTITY domain
	iommu/mediatek: Fix NULL pointer deference in mtk_iommu_device_group
	perf/core: Add aux_pause, aux_resume, aux_start_paused
	perf/core: Simplify the perf_event_alloc() error path
	perf: Fix hang while freeing sigtrap event
	fs: consistently deref the files table with rcu_dereference_raw()
	umount: Allow superblock owners to force umount
	pm: cpupower: bench: Prevent NULL dereference on malloc failure
	x86/mm: Clear _PAGE_DIRTY for kernel mappings when we clear _PAGE_RW
	x86/percpu: Disable named address spaces for UBSAN_BOOL with KASAN for GCC < 14.2
	x86/ia32: Leave NULL selector values 0~3 unchanged
	x86/cpu: Don't clear X86_FEATURE_LAHF_LM flag in init_amd_k8() on AMD when running in a virtual machine
	perf: arm_pmu: Don't disable counter in armpmu_add()
	perf/dwc_pcie: fix some unreleased resources
	PM: hibernate: Avoid deadlock in hibernate_compressor_param_set()
	Flush console log from kernel_power_off()
	arm64: cputype: Add QCOM_CPU_PART_KRYO_3XX_GOLD
	xen/mcelog: Add __nonstring annotations for unterminated strings
	zstd: Increase DYNAMIC_BMI2 GCC version cutoff from 4.8 to 11.0 to work around compiler segfault
	platform/chrome: cros_ec_lpc: Match on Framework ACPI device
	ASoC: SOF: topology: Use krealloc_array() to replace krealloc()
	HID: pidff: Convert infinite length from Linux API to PID standard
	HID: pidff: Do not send effect envelope if it's empty
	HID: pidff: Add MISSING_DELAY quirk and its detection
	HID: pidff: Add MISSING_PBO quirk and its detection
	HID: pidff: Add PERMISSIVE_CONTROL quirk
	HID: pidff: Add hid_pidff_init_with_quirks and export as GPL symbol
	HID: pidff: Add FIX_WHEEL_DIRECTION quirk
	HID: Add hid-universal-pidff driver and supported device ids
	HID: pidff: Add PERIODIC_SINE_ONLY quirk
	HID: pidff: Fix null pointer dereference in pidff_find_fields
	ASoC: amd: ps: use macro for ACP6.3 pci revision id
	ALSA: hda: intel: Fix Optimus when GPU has no sound
	ALSA: hda: intel: Add Lenovo IdeaPad Z570 to probe denylist
	ASoC: fsl_audmix: register card device depends on 'dais' property
	media: uvcvideo: Add quirk for Actions UVC05
	media: s5p-mfc: Corrected NV12M/NV21M plane-sizes
	mmc: dw_mmc: add a quirk for accessing 64-bit FIFOs in two halves
	ALSA: usb-audio: Fix CME quirk for UF series keyboards
	ASoC: amd: Add DMI quirk for ACP6X mic support
	ASoC: amd: yc: update quirk data for new Lenovo model
	platform/x86: x86-android-tablets: Add select POWER_SUPPLY to Kconfig
	wifi: ath11k: Fix DMA buffer allocation to resolve SWIOTLB issues
	wifi: ath11k: fix memory leak in ath11k_xxx_remove()
	wifi: ath12k: fix memory leak in ath12k_pci_remove()
	wifi: ath12k: Fix invalid entry fetch in ath12k_dp_mon_srng_process
	ata: libata-core: Add 'external' to the libata.force kernel parameter
	scsi: mpi3mr: Avoid reply queue full condition
	scsi: mpi3mr: Synchronous access b/w reset and tm thread for reply queue
	net: page_pool: don't cast mp param to devmem
	f2fs: don't retry IO for corrupted data scenario
	wifi: mac80211: add strict mode disabling workarounds
	wifi: mac80211: ensure sdata->work is canceled before initialized.
	scsi: target: spc: Fix RSOC parameter data header size
	net: usb: asix_devices: add FiberGecko DeviceID
	page_pool: avoid infinite loop to schedule delayed worker
	can: flexcan: Add quirk to handle separate interrupt lines for mailboxes
	can: flexcan: add NXP S32G2/S32G3 SoC support
	jfs: Fix uninit-value access of imap allocated in the diMount() function
	fs/jfs: cast inactags to s64 to prevent potential overflow
	fs/jfs: Prevent integer overflow in AG size calculation
	jfs: Prevent copying of nlink with value 0 from disk inode
	jfs: add sanity check for agwidth in dbMount
	ata: libata-eh: Do not use ATAPI DMA for a device limited to PIO mode
	net: sfp: add quirk for 2.5G OEM BX SFP
	wifi: ath12k: Fix invalid data access in ath12k_dp_rx_h_undecap_nwifi
	f2fs: fix to avoid out-of-bounds access in f2fs_truncate_inode_blocks()
	net: sfp: add quirk for FS SFP-10GM-T copper SFP+ module
	ahci: add PCI ID for Marvell 88SE9215 SATA Controller
	ext4: protect ext4_release_dquot against freezing
	Revert "f2fs: rebuild nat_bits during umount"
	ext4: ignore xattrs past end
	cdc_ether|r8152: ThinkPad Hybrid USB-C/A Dock quirk
	scsi: st: Fix array overflow in st_setup()
	ahci: Marvell 88SE9215 controllers prefer DMA for ATAPI
	btrfs: harden block_group::bg_list against list_del() races
	wifi: mt76: mt76x2u: add TP-Link TL-WDN6200 ID to device table
	net: vlan: don't propagate flags on open
	tracing: fix return value in __ftrace_event_enable_disable for TRACE_REG_UNREGISTER
	Bluetooth: btintel_pcie: Add device id of Whale Peak
	Bluetooth: hci_uart: fix race during initialization
	Bluetooth: btusb: Add 2 HWIDs for MT7922
	Bluetooth: hci_qca: use the power sequencer for wcn6750
	Bluetooth: qca: simplify WCN399x NVM loading
	Bluetooth: Add quirk for broken READ_VOICE_SETTING
	Bluetooth: Add quirk for broken READ_PAGE_SCAN_TYPE
	drm: allow encoder mode_set even when connectors change for crtc
	drm/xe/bmg: Add new PCI IDs
	drm/xe/vf: Don't try to trigger a full GT reset if VF
	drm/amd/display: Update Cursor request mode to the beginning prefetch always
	drm/amdgpu: Unlocked unmap only clear page table leaves
	drm: panel-orientation-quirks: Add support for AYANEO 2S
	drm: panel-orientation-quirks: Add quirks for AYA NEO Flip DS and KB
	drm: panel-orientation-quirks: Add quirk for AYA NEO Slide
	drm: panel-orientation-quirks: Add new quirk for GPD Win 2
	drm: panel-orientation-quirks: Add quirk for OneXPlayer Mini (Intel)
	drm/debugfs: fix printk format for bridge index
	drm/bridge: panel: forbid initializing a panel with unknown connector type
	drm/amd/display: stop DML2 from removing pipes based on planes
	drivers: base: devres: Allow to release group on device release
	drm/amdkfd: clamp queue size to minimum
	drm/amdkfd: Fix mode1 reset crash issue
	drm/amdkfd: Fix pqm_destroy_queue race with GPU reset
	drm/amdkfd: debugfs hang_hws skip GPU with MES
	drm/xe/xelp: Move Wa_16011163337 from tunings to workarounds
	drm/mediatek: mtk_dpi: Move the input_2p_en bit to platform data
	drm/mediatek: mtk_dpi: Explicitly manage TVD clock in power on/off
	PCI: Add Rockchip Vendor ID
	drm/amdgpu: handle amdgpu_cgs_create_device() errors in amd_powerplay_create()
	PCI: Enable Configuration RRS SV early
	drm/amdgpu: Fix the race condition for draining retry fault
	PCI: Check BAR index for validity
	PCI: vmd: Make vmd_dev::cfg_lock a raw_spinlock_t type
	drm/amdgpu: grab an additional reference on the gang fence v2
	fbdev: omapfb: Add 'plane' value check
	tracing: probe-events: Add comments about entry data storing code
	ktest: Fix Test Failures Due to Missing LOG_FILE Directories
	tpm, tpm_tis: Workaround failed command reception on Infineon devices
	tpm: End any active auth session before shutdown
	pwm: mediatek: Prevent divide-by-zero in pwm_mediatek_config()
	pwm: rcar: Improve register calculation
	pwm: fsl-ftm: Handle clk_get_rate() returning 0
	erofs: set error to bio if file-backed IO fails
	bpf: support SKF_NET_OFF and SKF_LL_OFF on skb frags
	ext4: don't treat fhandle lookup of ea_inode as FS corruption
	s390/pci: Fix s390_mmio_read/write syscall page fault handling
	HID: pidff: Clamp PERIODIC effect period to device's logical range
	HID: pidff: Stop all effects before enabling actuators
	HID: pidff: Completely rework and fix pidff_reset function
	HID: pidff: Simplify pidff_upload_effect function
	HID: pidff: Define values used in pidff_find_special_fields
	HID: pidff: Rescale time values to match field units
	HID: pidff: Factor out code for setting gain
	HID: pidff: Move all hid-pidff definitions to a dedicated header
	HID: pidff: Simplify pidff_rescale_signed
	HID: pidff: Use macros instead of hardcoded min/max values for shorts
	HID: pidff: Factor out pool report fetch and remove excess declaration
	HID: pidff: Make sure to fetch pool before checking SIMULTANEOUS_MAX
	HID: hid-universal-pidff: Add Asetek wheelbases support
	HID: pidff: Comment and code style update
	HID: pidff: Support device error response from PID_BLOCK_LOAD
	HID: pidff: Remove redundant call to pidff_find_special_keys
	HID: pidff: Rename two functions to align them with naming convention
	HID: pidff: Clamp effect playback LOOP_COUNT value
	HID: pidff: Compute INFINITE value instead of using hardcoded 0xffff
	HID: pidff: Fix 90 degrees direction name North -> East
	HID: pidff: Fix set_device_control()
	auxdisplay: hd44780: Fix an API misuse in hd44780.c
	dt-bindings: media: st,stmipid02: correct lane-polarities maxItems
	media: mediatek: vcodec: Fix a resource leak related to the scp device in FW initialization
	media: mtk-vcodec: venc: avoid -Wenum-compare-conditional warning
	media: uapi: rkisp1-config: Fix typo in extensible params example
	media: mgb4: Fix CMT registers update logic
	media: i2c: adv748x: Fix test pattern selection mask
	media: mgb4: Fix switched CMT frequency range "magic values" sets
	media: intel/ipu6: set the dev_parent of video device to pdev
	media: venus: hfi: add a check to handle OOB in sfr region
	media: venus: hfi: add check to handle incorrect queue size
	media: vim2m: print device name after registering device
	media: siano: Fix error handling in smsdvb_module_init()
	media: rockchip: rga: fix rga offset lookup
	xenfs/xensyms: respect hypervisor's "next" indication
	arm64: cputype: Add MIDR_CORTEX_A76AE
	arm64: errata: Add QCOM_KRYO_4XX_GOLD to the spectre_bhb_k24_list
	arm64: errata: Assume that unknown CPUs _are_ vulnerable to Spectre BHB
	arm64: errata: Add KRYO 2XX/3XX/4XX silver cores to Spectre BHB safe list
	KVM: arm64: Tear down vGIC on failed vCPU creation
	spi: cadence-qspi: Fix probe on AM62A LP SK
	mtd: rawnand: brcmnand: fix PM resume warning
	tpm, tpm_tis: Fix timeout handling when waiting for TPM status
	accel/ivpu: Fix PM related deadlocks in MS IOCTLs
	media: streamzap: prevent processing IR data on URB failure
	media: hi556: Fix memory leak (on error) in hi556_check_hwcfg()
	media: visl: Fix ERANGE error when setting enum controls
	media: platform: stm32: Add check for clk_enable()
	media: imx219: Adjust PLL settings based on the number of MIPI lanes
	media: v4l2-dv-timings: prevent possible overflow in v4l2_detect_gtf()
	Revert "media: imx214: Fix the error handling in imx214_probe()"
	media: i2c: ccs: Set the device's runtime PM status correctly in remove
	media: i2c: ccs: Set the device's runtime PM status correctly in probe
	media: i2c: ov7251: Set enable GPIO low in probe
	media: i2c: ov7251: Introduce 1 ms delay between regulators and en GPIO
	media: nuvoton: Fix reference handling of ece_node
	media: nuvoton: Fix reference handling of ece_pdev
	media: venus: hfi_parser: add check to avoid out of bound access
	media: venus: hfi_parser: refactor hfi packet parsing logic
	media: i2c: imx319: Rectify runtime PM handling probe and remove
	media: i2c: imx219: Rectify runtime PM handling in probe and remove
	media: i2c: imx214: Rectify probe error handling related to runtime PM
	media: chips-media: wave5: Fix gray color on screen
	media: chips-media: wave5: Avoid race condition in the interrupt handler
	media: chips-media: wave5: Fix a hang after seeking
	media: chips-media: wave5: Fix timeout while testing 10bit hevc fluster
	mptcp: sockopt: fix getting IPV6_V6ONLY
	mptcp: sockopt: fix getting freebind & transparent
	mtd: Add check for devm_kcalloc()
	net: dsa: mv88e6xxx: workaround RGMII transmit delay erratum for 6320 family
	net: dsa: mv88e6xxx: fix internal PHYs for 6320 family
	mtd: Replace kcalloc() with devm_kcalloc()
	clocksource/drivers/stm32-lptimer: Use wakeup capable instead of init wakeup
	wifi: mt76: Add check for devm_kstrdup()
	wifi: mac80211: fix integer overflow in hwmp_route_info_get()
	wifi: mt76: mt7925: ensure wow pattern command align fw format
	wifi: mt76: mt7925: fix country count limitation for CLC
	wifi: mt76: mt7925: fix the wrong link_idx when a p2p_device is present
	wifi: mt76: mt7925: fix the wrong simultaneous cap for MLO
	io_uring/net: fix accept multishot handling
	io_uring/net: fix io_req_post_cqe abuse by send bundle
	io_uring/kbuf: reject zero sized provided buffers
	ASoC: codecs: wcd937x: fix a potential memory leak in wcd937x_soc_codec_probe()
	ASoC: q6apm: add q6apm_get_hw_pointer helper
	ASoC: q6apm-dai: schedule all available frames to avoid dsp under-runs
	ASoC: q6apm-dai: make use of q6apm_get_hw_pointer
	ASoC: qdsp6: q6apm-dai: set 10 ms period and buffer alignment.
	ASoC: qdsp6: q6apm-dai: fix capture pipeline overruns.
	ASoC: qdsp6: q6asm-dai: fix q6asm_dai_compr_set_params error path
	ALSA: hda/realtek: Enable Mute LED on HP OMEN 16 Laptop xd000xx
	accel/ivpu: Fix warning in ivpu_ipc_send_receive_internal()
	accel/ivpu: Fix deadlock in ivpu_ms_cleanup()
	bus: mhi: host: Fix race between unprepare and queue_buf
	ext4: fix off-by-one error in do_split
	f2fs: fix to avoid atomicity corruption of atomic file
	vdpa/mlx5: Fix oversized null mkey longer than 32bit
	udf: Fix inode_getblk() return value
	tpm: do not start chip while suspended
	svcrdma: do not unregister device for listeners
	soc: samsung: exynos-chipid: Add NULL pointer check in exynos_chipid_probe()
	smb311 client: fix missing tcon check when mounting with linux/posix extensions
	ima: limit the number of open-writers integrity violations
	ima: limit the number of ToMToU integrity violations
	i3c: master: svc: Use readsb helper for reading MDB
	i3c: Add NULL pointer check in i3c_master_queue_ibi()
	jbd2: remove wrong sb->s_sequence check
	kbuild: exclude .rodata.(cst|str)* when building ranges
	leds: rgb: leds-qcom-lpg: Fix pwm resolution max for Hi-Res PWMs
	leds: rgb: leds-qcom-lpg: Fix calculation of best period Hi-Res PWMs
	mfd: ene-kb3930: Fix a potential NULL pointer dereference
	mailbox: tegra-hsp: Define dimensioning masks in SoC data
	locking/lockdep: Decrease nr_unused_locks if lock unused in zap_class()
	lib: scatterlist: fix sg_split_phys to preserve original scatterlist offsets
	mptcp: fix NULL pointer in can_accept_new_subflow
	mptcp: only inc MPJoinAckHMacFailure for HMAC failures
	mtd: inftlcore: Add error check for inftl_read_oob()
	mtd: rawnand: Add status chack in r852_ready()
	arm64: mops: Do not dereference src reg for a set operation
	arm64: tegra: Remove the Orin NX/Nano suspend key
	arm64: mm: Correct the update of max_pfn
	arm64: dts: mediatek: mt8173: Fix disp-pwm compatible string
	arm64: dts: exynos: gs101: disable pinctrl_gsacore node
	backlight: led_bl: Hold led_access lock when calling led_sysfs_disable()
	btrfs: fix non-empty delayed iputs list on unmount due to compressed write workers
	btrfs: tests: fix chunk map leak after failure to add it to the tree
	btrfs: zoned: fix zone activation with missing devices
	btrfs: zoned: fix zone finishing with missing devices
	iommufd: Fix uninitialized rc in iommufd_access_rw()
	iommu/tegra241-cmdqv: Fix warnings due to dmam_free_coherent()
	iommu/vt-d: Put IRTE back into posted MSI mode if vCPU posting is disabled
	iommu/vt-d: Don't clobber posted vCPU IRTE when host IRQ affinity changes
	iommu/vt-d: Fix possible circular locking dependency
	iommu/vt-d: Wire up irq_ack() to irq_move_irq() for posted MSIs
	sparc/mm: disable preemption in lazy mmu mode
	sparc/mm: avoid calling arch_enter/leave_lazy_mmu() in set_ptes
	net: Fix null-ptr-deref by sock_lock_init_class_and_name() and rmmod.
	mm/damon/ops: have damon_get_folio return folio even for tail pages
	mm/rmap: reject hugetlb folios in folio_make_device_exclusive()
	mm: make page_mapped_in_vma() hugetlb walk aware
	mm: fix lazy mmu docs and usage
	mm/mremap: correctly handle partial mremap() of VMA starting at 0
	mm: add missing release barrier on PGDAT_RECLAIM_LOCKED unlock
	mm/userfaultfd: fix release hang over concurrent GUP
	mm/hwpoison: do not send SIGBUS to processes with recovered clean pages
	mm/hugetlb: move hugetlb_sysctl_init() to the __init section
	mm/hwpoison: introduce folio_contain_hwpoisoned_page() helper
	sctp: detect and prevent references to a freed transport in sendmsg
	x86/xen: fix balloon target initialization for PVH dom0
	tracing: fprobe events: Fix possible UAF on modules
	tracing: Do not add length to print format in synthetic events
	thermal/drivers/rockchip: Add missing rk3328 mapping entry
	CIFS: Propagate min offload along with other parameters from primary to secondary channels.
	cifs: avoid NULL pointer dereference in dbg call
	cifs: fix integer overflow in match_server()
	cifs: Ensure that all non-client-specific reparse points are processed by the server
	clk: renesas: r9a07g043: Fix HP clock source for RZ/Five
	clk: qcom: clk-branch: Fix invert halt status bit check for votable clocks
	clk: qcom: gdsc: Release pm subdomains in reverse add order
	clk: qcom: gdsc: Capture pm_genpd_add_subdomain result code
	clk: qcom: gdsc: Set retain_ff before moving to HW CTRL
	crypto: ccp - Fix check for the primary ASP device
	crypto: ccp - Fix uAPI definitions of PSP errors
	dlm: fix error if inactive rsb is not hashed
	dlm: fix error if active rsb is not hashed
	dm-ebs: fix prefetch-vs-suspend race
	dm-integrity: set ti->error on memory allocation failure
	dm-integrity: fix non-constant-time tag verification
	dm-verity: fix prefetch-vs-suspend race
	dt-bindings: coresight: qcom,coresight-tpda: Fix too many 'reg'
	dt-bindings: coresight: qcom,coresight-tpdm: Fix too many 'reg'
	ftrace: Add cond_resched() to ftrace_graph_set_hash()
	ftrace: Properly merge notrace hashes
	gpio: tegra186: fix resource handling in ACPI probe path
	gpio: zynq: Fix wakeup source leaks on device unbind
	gve: handle overflow when reporting TX consumed descriptors
	KVM: Allow building irqbypass.ko as as module when kvm.ko is a module
	KVM: PPC: Enable CAP_SPAPR_TCE_VFIO on pSeries KVM guests
	KVM: x86: Explicitly zero-initialize on-stack CPUID unions
	KVM: x86: Acquire SRCU in KVM_GET_MP_STATE to protect guest memory accesses
	landlock: Move code to ease future backports
	landlock: Add the errata interface
	landlock: Add erratum for TCP fix
	landlock: Always allow signals between threads of the same process
	landlock: Prepare to add second errata
	selftests/landlock: Split signal_scoping_threads tests
	selftests/landlock: Add a new test for setuid()
	misc: pci_endpoint_test: Fix displaying 'irq_type' after 'request_irq' error
	net: mana: Switch to page pool for jumbo frames
	ntb: use 64-bit arithmetic for the MSI doorbell mask
	of/irq: Fix device node refcount leakage in API of_irq_parse_one()
	of/irq: Fix device node refcount leakage in API of_irq_parse_raw()
	of/irq: Fix device node refcount leakages in of_irq_count()
	of/irq: Fix device node refcount leakage in API irq_of_parse_and_map()
	of/irq: Fix device node refcount leakages in of_irq_init()
	PCI: brcmstb: Fix missing of_node_put() in brcm_pcie_probe()
	PCI: j721e: Fix the value of .linkdown_irq_regfield for J784S4
	PCI: pciehp: Avoid unnecessary device replacement check
	PCI: Fix reference leak in pci_alloc_child_bus()
	PCI: Fix reference leak in pci_register_host_bridge()
	PCI: Fix wrong length of devres array
	phy: freescale: imx8m-pcie: assert phy reset and perst in power off
	pinctrl: qcom: Clear latched interrupt status when changing IRQ type
	pinctrl: samsung: add support for eint_fltcon_offset
	ring-buffer: Use flush_kernel_vmap_range() over flush_dcache_folio()
	s390/pci: Fix zpci_bus_is_isolated_vf() for non-VFs
	s390/virtio_ccw: Don't allocate/assign airqs for non-existing queues
	s390: Fix linker error when -no-pie option is unavailable
	sched_ext: create_dsq: Return -EEXIST on duplicate request
	selftests: mptcp: close fd_in before returning in main_loop
	selftests: mptcp: fix incorrect fd checks in main_loop
	thermal/drivers/mediatek/lvts: Disable monitor mode during suspend
	thermal/drivers/mediatek/lvts: Disable Stage 3 thermal threshold
	arm64: errata: Add newer ARM cores to the spectre_bhb_loop_affected() lists
	iommufd: Make attach_handle generic than fault specific
	iommufd: Fail replace if device has not been attached
	x86/paravirt: Move halt paravirt calls under CONFIG_PARAVIRT
	ACPI: platform-profile: Fix CFI violation when accessing sysfs files
	NFSD: fix decoding in nfs4_xdr_dec_cb_getattr
	NFSD: Fix CB_GETATTR status fix
	nfsd: don't ignore the return code of svc_proc_register()
	x86/e820: Fix handling of subpage regions when calculating nosave ranges in e820__register_nosave_regions()
	libbpf: Prevent compiler warnings/errors
	kbuild: Add '-fno-builtin-wcslen'
	media: mediatek: vcodec: mark vdec_vp9_slice_map_counts_eob_coef noinline
	Bluetooth: hci_uart: Fix another race during initialization
	s390/cpumf: Fix double free on error in cpumf_pmu_event_init()
	HSI: ssi_protocol: Fix use after free vulnerability in ssi_protocol Driver Due to Race Condition
	Linux 6.12.24

Change-Id: I272e8aac67399f2eb57ca25e05cded24172d2d76
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-05-10 12:51:04 +00:00
Mingcong Bai 677714d779 iommu/vt-d: Apply quirk_iommu_igfx for 8086:0044 (QM57/QS57)
commit 2c8a7c66c90832432496616a9a3c07293f1364f3 upstream.

On the Lenovo ThinkPad X201, when Intel VT-d is enabled in the BIOS, the
kernel boots with errors related to DMAR, the graphical interface appeared
quite choppy, and the system resets erratically within a minute after it
booted:

DMAR: DRHD: handling fault status reg 3
DMAR: [DMA Write NO_PASID] Request device [00:02.0] fault addr 0xb97ff000
[fault reason 0x05] PTE Write access is not set

Upon comparing boot logs with VT-d on/off, I found that the Intel Calpella
quirk (`quirk_calpella_no_shadow_gtt()') correctly applied the igfx IOMMU
disable/quirk correctly:

pci 0000:00:00.0: DMAR: BIOS has allocated no shadow GTT; disabling IOMMU
for graphics

Whereas with VT-d on, it went into the "else" branch, which then
triggered the DMAR handling fault above:

... else if (!disable_igfx_iommu) {
	/* we have to ensure the gfx device is idle before we flush */
	pci_info(dev, "Disabling batched IOTLB flush on Ironlake\n");
	iommu_set_dma_strict();
}

Now, this is not exactly scientific, but moving 0x0044 to quirk_iommu_igfx
seems to have fixed the aforementioned issue. Running a few `git blame'
runs on the function, I have found that the quirk was originally
introduced as a fix specific to ThinkPad X201:

commit 9eecabcb9a ("intel-iommu: Abort IOMMU setup for igfx if BIOS gave
no shadow GTT space")

Which was later revised twice to the "else" branch we saw above:

- 2011: commit 6fbcfb3e46 ("intel-iommu: Workaround IOTLB hang on
  Ironlake GPU")
- 2024: commit ba00196ca4 ("iommu/vt-d: Decouple igfx_off from graphic
  identity mapping")

I'm uncertain whether further testings on this particular laptops were
done in 2011 and (honestly I'm not sure) 2024, but I would be happy to do
some distro-specific testing if that's what would be required to verify
this patch.

P.S., I also see IDs 0x0040, 0x0062, and 0x006a listed under the same
`quirk_calpella_no_shadow_gtt()' quirk, but I'm not sure how similar these
chipsets are (if they share the same issue with VT-d or even, indeed, if
this issue is specific to a bug in the Lenovo BIOS). With regards to
0x0062, it seems to be a Centrino wireless card, but not a chipset?

I have also listed a couple (distro and kernel) bug reports below as
references (some of them are from 7-8 years ago!), as they seem to be
similar issue found on different Westmere/Ironlake, Haswell, and Broadwell
hardware setups.

Cc: stable@vger.kernel.org
Fixes: 6fbcfb3e46 ("intel-iommu: Workaround IOTLB hang on Ironlake GPU")
Fixes: ba00196ca4 ("iommu/vt-d: Decouple igfx_off from graphic identity mapping")
Link: https://groups.google.com/g/qubes-users/c/4NP4goUds2c?pli=1
Link: https://bugs.archlinux.org/task/65362
Link: https://bbs.archlinux.org/viewtopic.php?id=230323
Reported-by: Wenhao Sun <weiguangtwk@outlook.com>
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=197029
Signed-off-by: Mingcong Bai <jeffbai@aosc.io>
Link: https://lore.kernel.org/r/20250415133330.12528-1-jeffbai@aosc.io
Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-09 09:50:34 +02:00
Balbir Singh ccc50fcba3 iommu/arm-smmu-v3: Fix pgsize_bit for sva domains
commit 12f78021973ae422564b234136c702a305932d73 upstream.

UBSan caught a bug with IOMMU SVA domains, where the reported exponent
value in __arm_smmu_tlb_inv_range() was >= 64.
__arm_smmu_tlb_inv_range() uses the domain's pgsize_bitmap to compute
the number of pages to invalidate and the invalidation range. Currently
arm_smmu_sva_domain_alloc() does not setup the iommu domain's
pgsize_bitmap. This leads to __ffs() on the value returning 64 and that
leads to undefined behaviour w.r.t. shift operations

Fix this by initializing the iommu_domain's pgsize_bitmap to PAGE_SIZE.
Effectively the code needs to use the smallest page size for
invalidation

Cc: stable@vger.kernel.org
Fixes: eb6c97647b ("iommu/arm-smmu-v3: Avoid constructing invalid range commands")
Suggested-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Balbir Singh <balbirs@nvidia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Cc: Jean-Philippe Brucker <jean-philippe@linaro.org>
Cc: Will Deacon <will@kernel.org>
Cc: Robin Murphy <robin.murphy@arm.com>
Cc: Joerg Roedel <joro@8bytes.org>
Cc: Jason Gunthorpe <jgg@ziepe.ca>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Link: https://lore.kernel.org/r/20250412002354.3071449-1-balbirs@nvidia.com
Signed-off-by: Will Deacon <will@kernel.org>
2025-05-09 09:50:34 +02:00
Nicolin Chen 98e634aa4b iommu/arm-smmu-v3: Fix iommu_device_probe bug due to duplicated stream ids
commit b00d24997a11c10d3e420614f0873b83ce358a34 upstream.

ASPEED VGA card has two built-in devices:
 0008:06:00.0 PCI bridge: ASPEED Technology, Inc. AST1150 PCI-to-PCI Bridge (rev 06)
 0008:07:00.0 VGA compatible controller: ASPEED Technology, Inc. ASPEED Graphics Family (rev 52)

Its toplogy looks like this:
 +-[0008:00]---00.0-[01-09]--+-00.0-[02-09]--+-00.0-[03]----00.0  Sandisk Corp Device 5017
                             |               +-01.0-[04]--
                             |               +-02.0-[05]----00.0  NVIDIA Corporation Device
                             |               +-03.0-[06-07]----00.0-[07]----00.0  ASPEED Technology, Inc. ASPEED Graphics Family
                             |               +-04.0-[08]----00.0  Renesas Technology Corp. uPD720201 USB 3.0 Host Controller
                             |               \-05.0-[09]----00.0  Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
                             \-00.1  PMC-Sierra Inc. Device 4028

The IORT logic populaties two identical IDs into the fwspec->ids array via
DMA aliasing in iort_pci_iommu_init() called by pci_for_each_dma_alias().

Though the SMMU driver had been able to handle this situation since commit
563b5cbe33 ("iommu/arm-smmu-v3: Cope with duplicated Stream IDs"), that
got broken by the later commit cdf315f907 ("iommu/arm-smmu-v3: Maintain
a SID->device structure"), which ended up with allocating separate streams
with the same stuffing.

On a kernel prior to v6.15-rc1, there has been an overlooked warning:
  pci 0008:07:00.0: vgaarb: setting as boot VGA device
  pci 0008:07:00.0: vgaarb: bridge control possible
  pci 0008:07:00.0: vgaarb: VGA device added: decodes=io+mem,owns=none,locks=none
  pcieport 0008:06:00.0: Adding to iommu group 14
  ast 0008:07:00.0: stream 67328 already in tree   <===== WARNING
  ast 0008:07:00.0: enabling device (0002 -> 0003)
  ast 0008:07:00.0: Using default configuration
  ast 0008:07:00.0: AST 2600 detected
  ast 0008:07:00.0: [drm] Using analog VGA
  ast 0008:07:00.0: [drm] dram MCLK=396 Mhz type=1 bus_width=16
  [drm] Initialized ast 0.1.0 for 0008:07:00.0 on minor 0
  ast 0008:07:00.0: [drm] fb0: astdrmfb frame buffer device

With v6.15-rc, since the commit bcb81ac6ae3c ("iommu: Get DT/ACPI parsing
into the proper probe path"), the error returned with the warning is moved
to the SMMU device probe flow:
  arm_smmu_probe_device+0x15c/0x4c0
  __iommu_probe_device+0x150/0x4f8
  probe_iommu_group+0x44/0x80
  bus_for_each_dev+0x7c/0x100
  bus_iommu_probe+0x48/0x1a8
  iommu_device_register+0xb8/0x178
  arm_smmu_device_probe+0x1350/0x1db0
which then fails the entire SMMU driver probe:
  pci 0008:06:00.0: Adding to iommu group 21
  pci 0008:07:00.0: stream 67328 already in tree
  arm-smmu-v3 arm-smmu-v3.9.auto: Failed to register iommu
  arm-smmu-v3 arm-smmu-v3.9.auto: probe with driver arm-smmu-v3 failed with error -22

Since SMMU driver had been already expecting a potential duplicated Stream
ID in arm_smmu_install_ste_for_dev(), change the arm_smmu_insert_master()
routine to ignore a duplicated ID from the fwspec->sids array as well.

Note: this has been failing the iommu_device_probe() since 2021, although a
recent iommu commit in v6.15-rc1 that moves iommu_device_probe() started to
fail the SMMU driver probe. Since nobody has cared about DMA Alias support,
leave that as it was but fix the fundamental iommu_device_probe() breakage.

Fixes: cdf315f907 ("iommu/arm-smmu-v3: Maintain a SID->device structure")
Cc: stable@vger.kernel.org
Suggested-by: Jason Gunthorpe <jgg@nvidia.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Nicolin Chen <nicolinc@nvidia.com>
Link: https://lore.kernel.org/r/20250415185620.504299-1-nicolinc@nvidia.com
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-09 09:50:34 +02:00
Pavel Paklov 10d901a95f iommu/amd: Fix potential buffer overflow in parse_ivrs_acpihid
commit 8dee308e4c01dea48fc104d37f92d5b58c50b96c upstream.

There is a string parsing logic error which can lead to an overflow of hid
or uid buffers. Comparing ACPIID_LEN against a total string length doesn't
take into account the lengths of individual hid and uid buffers so the
check is insufficient in some cases. For example if the length of hid
string is 4 and the length of the uid string is 260, the length of str
will be equal to ACPIID_LEN + 1 but uid string will overflow uid buffer
which size is 256.

The same applies to the hid string with length 13 and uid string with
length 250.

Check the length of hid and uid strings separately to prevent
buffer overflow.

Found by Linux Verification Center (linuxtesting.org) with SVACE.

Fixes: ca3bf5d47c ("iommu/amd: Introduces ivrs_acpihid kernel parameter")
Cc: stable@vger.kernel.org
Signed-off-by: Pavel Paklov <Pavel.Paklov@cyberprotect.ru>
Link: https://lore.kernel.org/r/20250325092259.392844-1-Pavel.Paklov@cyberprotect.ru
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-09 09:50:33 +02:00
Greg Kroah-Hartman fbffc72bf0 Merge fba396b799 ("sparc/mm: avoid calling arch_enter/leave_lazy_mmu() in set_ptes") into android16-6.12-lts
Steps on the way to 6.12.24

Change-Id: I10efdb86ef7942f71b14841ff3628b4eaa3ae1e9
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-05-09 07:26:27 +00:00
Greg Kroah-Hartman 195e9f73e5 Merge 8e7bb66360 ("can: flexcan: add NXP S32G2/S32G3 SoC support") into android16-6.12-lts
Steps on the way to 6.12.24

Change-Id: I54cb46effb1fb5a2ed725fea8a4166800602958f
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-05-08 16:29:55 +00:00