Commit Graph

1478 Commits

Author SHA1 Message Date
Pengfei Li e3489f30ee ANDROID: mm: Added early_param pcp_thp_order
Added early param "pcp_thp_order", which specifies the order of pcp used by THP.
This allows vendors to customize the order different from HPAGE_PMD_ORDER for
THP to use.

Bug: 431672372
Change-Id: Id2c8f3b03b74added54827ffbc33fd4e4bdf619e
Signed-off-by: Pengfei Li <pengfei.kernel@vivo.corp-partner.google.com>
2025-07-31 08:34:12 -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
Borislav Petkov (AMD) 7a0395f660 x86/bugs: Add a Transient Scheduler Attacks mitigation
Commit d8010d4ba43e9f790925375a7de100604a5e2dba upstream.

Add the required features detection glue to bugs.c et all in order to
support the TSA mitigation.

Co-developed-by: Kim Phillips <kim.phillips@amd.com>
Signed-off-by: Kim Phillips <kim.phillips@amd.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Reviewed-by: Pawan Gupta <pawan.kumar.gupta@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-07-10 16:05:14 +02: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
Srinivasarao Pathipati 273b788415 FROMLIST: arm64: perf: Make exporting of pmu events configurable
The PMU export bit (PMCR_EL0.X) is getting reset during pmu reset,
Make is configurable using sysctls to enable/disable at runtime.
It can also be enabled at early bootup with kernel arguments.

Bug: 230559577
Bug: 427401803
Change-Id: I35dcfeed23e64ec9493f9a15dbb43e9966108664
Link: https://lore.kernel.org/lkml/1653306574-20946-1-git-send-email-quic_c_spathi@quicinc.com/
Signed-off-by: Srinivasarao Pathipati <quic_spathi@quicinc.com>
2025-06-26 02:30:39 -07: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
Xi Ruoyao 0b0551f1f0 BACKPORT: FROMGIT: arm64: Add override for MPAM
As the message of the commit 09e6b306f3ba ("arm64: cpufeature: discover
CPU support for MPAM") already states, if a buggy firmware fails to
either enable MPAM or emulate the trap as if it were disabled, the
kernel will just fail to boot.  While upgrading the firmware should be
the best solution, we have some hardware of which the vendor have made
no response 2 months after we requested a firmware update.  Allow
overriding it so our devices don't become some e-waste.

Cc: James Morse <james.morse@arm.com>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Will Deacon <will@kernel.org>
Cc: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com>
Cc: Mingcong Bai <jeffbai@aosc.io>
Cc: Shaopeng Tan <tan.shaopeng@fujitsu.com>
Cc: Ben Horgan <ben.horgan@arm.com>
Signed-off-by: Xi Ruoyao <xry111@xry111.site>
Reviewed-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250602043723.216338-1-xry111@xry111.site
Signed-off-by: Will Deacon <will@kernel.org>
(cherry picked from commit 10f885d63a0efd50b0d22bf27eb3cf727838e99e
 arm64 for-next/core)
Bug: 228613614
[willdeacon@: Preserve SYS_MPAM2_EL2 initialisation in el2_setup.h]
Signed-off-by: Will Deacon <willdeacon@google.com>
Change-Id: I73fc3fba7466173b3159c5729d998bd1741d4ce9
2025-06-16 02:29:55 -07:00
Greg Kroah-Hartman 651f2e4fca Merge 6.12.29 into android16-6.12-lts
GKI (arm64) relevant 44 out of 185 changes, affecting 54 files +634/-365
  b32411f045 dm: add missing unlock on in dm_keyslot_evict() [1 file, +2/-1]
  61e0fc3312 fs/erofs/fileio: call erofs_onlinefolio_split() after bio_add_folio() [1 file, +2/-2]
  14ee85b748 firmware: arm_scmi: Fix timeout checks on polling path [1 file, +8/-5]
  98cd7ed927 sch_htb: make htb_deactivate() idempotent [1 file, +6/-9]
  35be4c0cdf gre: Fix again IPv6 link-local address generation. [1 file, +9/-6]
  c33927f385 can: gw: fix RCU/BH usage in cgw_create_job() [1 file, +90/-59]
  4555c4a13a wifi: mac80211: fix the type of status_code for negotiated TID to Link Mapping [2 files, +7/-7]
  64385c0d02 erofs: ensure the extra temporary copy is valid for shortened bvecs [1 file, +14/-17]
  b37e54259c bpf: Scrub packet on bpf_redirect_peer [1 file, +1/-0]
  bb8f86f40e net: export a helper for adding up queue stats [2 files, +56/-19]
  302a0cd0bb Input: xpad - fix Share button on Xbox One controllers [1 file, +20/-15]
  bf239d3835 Input: xpad - add support for 8BitDo Ultimate 2 Wireless Controller [1 file, +1/-0]
  38bb0170d6 Input: xpad - fix two controller table values [1 file, +2/-2]
  2910019b04 mm: vmalloc: support more granular vrealloc() sizing [2 files, +25/-7]
  6166c3cf40 mm/huge_memory: fix dereferencing invalid pmd migration entry [1 file, +8/-3]
  b543a5a73b mm/userfaultfd: fix uninitialized output field for -EAGAIN race [1 file, +22/-6]
  7f37e31483 io_uring: ensure deferred completions are flushed for multishot [1 file, +8/-0]
  abbc99e898 arm64: cpufeature: Move arm64_use_ng_mappings to the .data section to prevent wrong idmap generation [1 file, +8/-1]
  d66a22f6a4 memblock: Accept allocated memory before use in memblock_double_array() [1 file, +8/-1]
  d63851049f module: ensure that kobject_put() is safe for module type kobjects [1 file, +3/-1]
  75f23e49ad usb: gadget: f_ecm: Add get_status callback [1 file, +7/-0]
  d1c8fa4c6e usb: gadget: Use get_status callback to set remote wakeup capability [1 file, +5/-7]
  3366a19948 usb: typec: tcpm: delay SNK_TRY_WAIT_DEBOUNCE to SRC_TRYWAIT transition [1 file, +1/-1]
  5ad298d6d4 usb: typec: ucsi: displayport: Fix NULL pointer access [1 file, +2/-0]
  afe8849597 types: Complement the aligned types with signed 64-bit one [2 files, +3/-1]
  02a77b3020 loop: Use bdev limit helpers for configuring discard [1 file, +4/-4]
  722f6dece7 loop: Simplify discard granularity calc [1 file, +1/-2]
  0558ce095b loop: Fix ABBA locking race [1 file, +15/-15]
  5e1470b276 loop: refactor queue limits updates [1 file, +20/-16]
  a781ffe410 loop: factor out a loop_assign_backing_file helper [1 file, +10/-10]
  184b147b9f loop: Add sanity check for read/write_iter [1 file, +23/-0]
  19fa2a4830 nvme: unblock ctrl state transition for firmware update [1 file, +2/-1]
  3edac2949e io_uring/sqpoll: Increase task_work submission batch size [1 file, +1/-1]
  cd010271a9 do_umount(): add missing barrier before refcount checks in sync case [1 file, +2/-1]
  2482f7705b io_uring: always arm linked timeouts prior to issue [1 file, +15/-35]
  564d25b1a6 mm: page_alloc: don't steal single pages from biggest buddy [1 file, +34/-46]
  16bae58f73 mm: page_alloc: speed up fallbacks in rmqueue_bulk() [1 file, +80/-33]
  86b37810fa sched/eevdf: Fix se->slice being set to U64_MAX and resulting crash [1 file, +1/-3]
  2a3915e861 arm64: insn: Add support for encoding DSB [2 files, +38/-23]
  ec5bca57af arm64: proton-pack: Expose whether the platform is mitigated by firmware [2 files, +6/-0]
  f2aebb8ec6 arm64: proton-pack: Expose whether the branchy loop k value [2 files, +6/-0]
  38c345fd54 arm64: bpf: Add BHB mitigation to the epilogue for cBPF programs [3 files, +52/-5]
  e5f5100f1c arm64: bpf: Only mitigate cBPF programs loaded by unprivileged users [1 file, +3/-0]
  2176530849 arm64: proton-pack: Add new CPUs 'k' values for branch mitigation [2 files, +3/-0]

Changes in 6.12.29
	dm: add missing unlock on in dm_keyslot_evict()
	fs/erofs/fileio: call erofs_onlinefolio_split() after bio_add_folio()
	Revert "btrfs: canonicalize the device path before adding it"
	arm64: dts: imx8mm-verdin: Link reg_usdhc2_vqmmc to usdhc2
	firmware: arm_scmi: Fix timeout checks on polling path
	can: mcan: m_can_class_unregister(): fix order of unregistration calls
	s390/pci: Fix missing check for zpci_create_device() error return
	wifi: cfg80211: fix out-of-bounds access during multi-link element defragmentation
	vfio/pci: Align huge faults to order
	s390/pci: Fix duplicate pci_dev_put() in disable_slot() when PF has child VFs
	can: mcp251xfd: mcp251xfd_remove(): fix order of unregistration calls
	can: rockchip_canfd: rkcanfd_remove(): fix order of unregistration calls
	ksmbd: prevent rename with empty string
	ksmbd: prevent out-of-bounds stream writes by validating *pos
	ksmbd: Fix UAF in __close_file_table_ids
	openvswitch: Fix unsafe attribute parsing in output_userspace()
	ksmbd: fix memory leak in parse_lease_state()
	s390/entry: Fix last breaking event handling in case of stack corruption
	sch_htb: make htb_deactivate() idempotent
	virtio_net: xsk: bind/unbind xsk for tx
	virtio-net: free xsk_buffs on error in virtnet_xsk_pool_enable()
	gre: Fix again IPv6 link-local address generation.
	net: ethernet: mtk_eth_soc: reset all TX queues on DMA free
	net: ethernet: mtk_eth_soc: do not reset PSE when setting FE
	can: m_can: m_can_class_allocate_dev(): initialize spin lock on device probe
	can: mcp251xfd: fix TDC setting for low data bit rates
	can: gw: fix RCU/BH usage in cgw_create_job()
	wifi: mac80211: fix the type of status_code for negotiated TID to Link Mapping
	ice: Initial support for E825C hardware in ice_adapter
	ice: use DSN instead of PCI BDF for ice_adapter index
	erofs: ensure the extra temporary copy is valid for shortened bvecs
	ipvs: fix uninit-value for saddr in do_output_route4
	netfilter: ipset: fix region locking in hash types
	bpf: Scrub packet on bpf_redirect_peer
	net: dsa: b53: allow leaky reserved multicast
	net: dsa: b53: keep CPU port always tagged again
	net: dsa: b53: fix clearing PVID of a port
	net: dsa: b53: fix flushing old pvid VLAN on pvid change
	net: dsa: b53: fix VLAN ID for untagged vlan on bridge leave
	net: dsa: b53: always rejoin default untagged VLAN on bridge leave
	net: dsa: b53: do not allow to configure VLAN 0
	net: dsa: b53: do not program vlans when vlan filtering is off
	net: dsa: b53: fix toggling vlan_filtering
	net: dsa: b53: fix learning on VLAN unaware bridges
	net: dsa: b53: do not set learning and unicast/multicast on up
	fbnic: Fix initialization of mailbox descriptor rings
	fbnic: Gate AXI read/write enabling on FW mailbox
	fbnic: Actually flush_tx instead of stalling out
	fbnic: Improve responsiveness of fbnic_mbx_poll_tx_ready
	fbnic: Pull fbnic_fw_xmit_cap_msg use out of interrupt context
	fbnic: Do not allow mailbox to toggle to ready outside fbnic_mbx_poll_tx_ready
	net: export a helper for adding up queue stats
	virtio-net: fix total qstat values
	Input: cyttsp5 - ensure minimum reset pulse width
	Input: cyttsp5 - fix power control issue on wakeup
	Input: mtk-pmic-keys - fix possible null pointer dereference
	Input: xpad - fix Share button on Xbox One controllers
	Input: xpad - add support for 8BitDo Ultimate 2 Wireless Controller
	Input: xpad - fix two controller table values
	Input: synaptics - enable InterTouch on Dynabook Portege X30-D
	Input: synaptics - enable InterTouch on Dynabook Portege X30L-G
	Input: synaptics - enable InterTouch on Dell Precision M3800
	Input: synaptics - enable SMBus for HP Elitebook 850 G1
	Input: synaptics - enable InterTouch on TUXEDO InfinityBook Pro 14 v5
	rust: clean Rust 1.88.0's `unnecessary_transmutes` lint
	objtool/rust: add one more `noreturn` Rust function for Rust 1.87.0
	rust: clean Rust 1.88.0's warning about `clippy::disallowed_macros` configuration
	staging: iio: adc: ad7816: Correct conditional logic for store mode
	staging: bcm2835-camera: Initialise dev in v4l2_dev
	staging: axis-fifo: Remove hardware resets for user errors
	staging: axis-fifo: Correct handling of tx_fifo_depth for size validation
	x86/mm: Eliminate window where TLB flushes may be inadvertently skipped
	mm: fix folio_pte_batch() on XEN PV
	mm: vmalloc: support more granular vrealloc() sizing
	mm/huge_memory: fix dereferencing invalid pmd migration entry
	mm/userfaultfd: fix uninitialized output field for -EAGAIN race
	selftests/mm: compaction_test: support platform with huge mount of memory
	selftests/mm: fix a build failure on powerpc
	KVM: SVM: Forcibly leave SMM mode on SHUTDOWN interception
	drm/amd/display: Shift DMUB AUX reply command if necessary
	io_uring: ensure deferred completions are flushed for multishot
	iio: adc: ad7606: fix serial register access
	iio: adc: rockchip: Fix clock initialization sequence
	iio: adis16201: Correct inclinometer channel resolution
	iio: imu: inv_mpu6050: align buffer for timestamp
	iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_fifo
	iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_tagged_fifo
	drm/v3d: Add job to pending list if the reset was skipped
	drm/xe: Add page queue multiplier
	drm/amdgpu/vcn: using separate VCN1_AON_SOC offset
	drm/amd/display: Fix invalid context error in dml helper
	drm/amd/display: more liberal vmin/vmax update for freesync
	drm/amd/display: Fix the checking condition in dmub aux handling
	drm/amd/display: Remove incorrect checking in dmub aux handler
	drm/amd/display: Fix wrong handling for AUX_DEFER case
	drm/amd/display: Copy AUX read reply data whenever length > 0
	drm/amdgpu/hdp4: use memcfg register to post the write for HDP flush
	drm/amdgpu/hdp5.2: use memcfg register to post the write for HDP flush
	drm/amdgpu/hdp5: use memcfg register to post the write for HDP flush
	drm/amdgpu/hdp6: use memcfg register to post the write for HDP flush
	drm/amdgpu/hdp7: use memcfg register to post the write for HDP flush
	usb: uhci-platform: Make the clock really optional
	smb: client: Avoid race in open_cached_dir with lease breaks
	xen: swiotlb: Use swiotlb bouncing if kmalloc allocation demands it
	xenbus: Use kref to track req lifetime
	accel/ivpu: Increase state dump msg timeout
	arm64: cpufeature: Move arm64_use_ng_mappings to the .data section to prevent wrong idmap generation
	clocksource/i8253: Use raw_spinlock_irqsave() in clockevent_i8253_disable()
	memblock: Accept allocated memory before use in memblock_double_array()
	module: ensure that kobject_put() is safe for module type kobjects
	x86/microcode: Consolidate the loader enablement checking
	ocfs2: fix the issue with discontiguous allocation in the global_bitmap
	ocfs2: switch osb->disable_recovery to enum
	ocfs2: implement handshaking with ocfs2 recovery thread
	ocfs2: stop quota recovery before disabling quotas
	usb: dwc3: gadget: Make gadget_wakeup asynchronous
	usb: cdnsp: Fix issue with resuming from L1
	usb: cdnsp: fix L1 resume issue for RTL_REVISION_NEW_LPM version
	usb: gadget: f_ecm: Add get_status callback
	usb: gadget: tegra-xudc: ACK ST_RC after clearing CTRL_RUN
	usb: gadget: Use get_status callback to set remote wakeup capability
	usb: host: tegra: Prevent host controller crash when OTG port is used
	usb: misc: onboard_usb_dev: fix support for Cypress HX3 hubs
	usb: typec: tcpm: delay SNK_TRY_WAIT_DEBOUNCE to SRC_TRYWAIT transition
	usb: typec: ucsi: displayport: Fix NULL pointer access
	USB: usbtmc: use interruptible sleep in usbtmc_read
	usb: usbtmc: Fix erroneous get_stb ioctl error returns
	usb: usbtmc: Fix erroneous wait_srq ioctl return
	usb: usbtmc: Fix erroneous generic_read ioctl return
	iio: accel: adxl367: fix setting odr for activity time update
	iio: temp: maxim-thermocouple: Fix potential lack of DMA safe buffer.
	types: Complement the aligned types with signed 64-bit one
	iio: accel: adxl355: Make timestamp 64-bit aligned using aligned_s64
	iio: adc: dln2: Use aligned_s64 for timestamp
	MIPS: Fix MAX_REG_OFFSET
	riscv: misaligned: Add handling for ZCB instructions
	loop: Use bdev limit helpers for configuring discard
	loop: Simplify discard granularity calc
	loop: Fix ABBA locking race
	loop: refactor queue limits updates
	loop: factor out a loop_assign_backing_file helper
	loop: Add sanity check for read/write_iter
	drm/panel: simple: Update timings for AUO G101EVN010
	nvme: unblock ctrl state transition for firmware update
	riscv: misaligned: factorize trap handling
	riscv: misaligned: enable IRQs while handling misaligned accesses
	drm/xe/tests/mocs: Update xe_force_wake_get() return handling
	drm/xe/tests/mocs: Hold XE_FORCEWAKE_ALL for LNCF regs
	io_uring/sqpoll: Increase task_work submission batch size
	do_umount(): add missing barrier before refcount checks in sync case
	Revert "um: work around sched_yield not yielding in time-travel mode"
	rust: allow Rust 1.87.0's `clippy::ptr_eq` lint
	rust: clean Rust 1.88.0's `clippy::uninlined_format_args` lint
	io_uring: always arm linked timeouts prior to issue
	Bluetooth: btmtk: Remove resetting mt7921 before downloading the fw
	Bluetooth: btmtk: Remove the resetting step before downloading the fw
	mm: page_alloc: don't steal single pages from biggest buddy
	mm: page_alloc: speed up fallbacks in rmqueue_bulk()
	sched/eevdf: Fix se->slice being set to U64_MAX and resulting crash
	arm64: insn: Add support for encoding DSB
	arm64: proton-pack: Expose whether the platform is mitigated by firmware
	arm64: proton-pack: Expose whether the branchy loop k value
	arm64: bpf: Add BHB mitigation to the epilogue for cBPF programs
	arm64: bpf: Only mitigate cBPF programs loaded by unprivileged users
	arm64: proton-pack: Add new CPUs 'k' values for branch mitigation
	x86/bpf: Call branch history clearing sequence on exit
	x86/bpf: Add IBHF call at end of classic BPF
	x86/bhi: Do not set BHI_DIS_S in 32-bit mode
	x86/speculation: Simplify and make CALL_NOSPEC consistent
	x86/speculation: Add a conditional CS prefix to CALL_NOSPEC
	x86/speculation: Remove the extra #ifdef around CALL_NOSPEC
	Documentation: x86/bugs/its: Add ITS documentation
	x86/its: Enumerate Indirect Target Selection (ITS) bug
	x86/its: Add support for ITS-safe indirect thunk
	x86/its: Add support for ITS-safe return thunk
	x86/its: Enable Indirect Target Selection mitigation
	x86/its: Add "vmexit" option to skip mitigation on some CPUs
	x86/its: Add support for RSB stuffing mitigation
	x86/its: Align RETs in BHB clear sequence to avoid thunking
	x86/ibt: Keep IBT disabled during alternative patching
	x86/its: Use dynamic thunks for indirect branches
	selftest/x86/bugs: Add selftests for ITS
	x86/its: Fix build errors when CONFIG_MODULES=n
	x86/its: FineIBT-paranoid vs ITS
	Linux 6.12.29

Change-Id: I00ff9cc212474331d43028ec90a190dcd1dfa697
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2025-06-05 11:52:13 +00:00
Breno Leitao e7e30a4a37 x86/bugs: Make spectre user default depend on MITIGATION_SPECTRE_V2
[ Upstream commit 98fdaeb296f51ef08e727a7cc72e5b5c864c4f4d ]

Change the default value of spectre v2 in user mode to respect the
CONFIG_MITIGATION_SPECTRE_V2 config option.

Currently, user mode spectre v2 is set to auto
(SPECTRE_V2_USER_CMD_AUTO) by default, even if
CONFIG_MITIGATION_SPECTRE_V2 is disabled.

Set the spectre_v2 value to auto (SPECTRE_V2_USER_CMD_AUTO) if the
Spectre v2 config (CONFIG_MITIGATION_SPECTRE_V2) is enabled, otherwise
set the value to none (SPECTRE_V2_USER_CMD_NONE).

Important to say the command line argument "spectre_v2_user" overwrites
the default value in both cases.

When CONFIG_MITIGATION_SPECTRE_V2 is not set, users have the flexibility
to opt-in for specific mitigations independently. In this scenario,
setting spectre_v2= will not enable spectre_v2_user=, and command line
options spectre_v2_user and spectre_v2 are independent when
CONFIG_MITIGATION_SPECTRE_V2=n.

Signed-off-by: Breno Leitao <leitao@debian.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Reviewed-by: Pawan Gupta <pawan.kumar.gupta@linux.intel.com>
Acked-by: Josh Poimboeuf <jpoimboe@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: David Kaplan <David.Kaplan@amd.com>
Link: https://lore.kernel.org/r/20241031-x86_bugs_last_v2-v2-2-b7ff1dab840e@debian.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-05-29 11:02:33 +02:00
Pawan Gupta 9f132c0397 x86/its: Add support for RSB stuffing mitigation
commit facd226f7e0c8ca936ac114aba43cb3e8b94e41e upstream.

When retpoline mitigation is enabled for spectre-v2, enabling
call-depth-tracking and RSB stuffing also mitigates ITS. Add cmdline option
indirect_target_selection=stuff to allow enabling RSB stuffing mitigation.

When retpoline mitigation is not enabled, =stuff option is ignored, and
default mitigation for ITS is deployed.

Signed-off-by: Pawan Gupta <pawan.kumar.gupta@linux.intel.com>
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Reviewed-by: Josh Poimboeuf <jpoimboe@kernel.org>
Reviewed-by: Alexandre Chartre <alexandre.chartre@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-18 08:24:59 +02:00
Pawan Gupta 4dc1902fde x86/its: Add "vmexit" option to skip mitigation on some CPUs
commit 2665281a07e19550944e8354a2024635a7b2714a upstream.

Ice Lake generation CPUs are not affected by guest/host isolation part of
ITS. If a user is only concerned about KVM guests, they can now choose a
new cmdline option "vmexit" that will not deploy the ITS mitigation when
CPU is not affected by guest/host isolation. This saves the performance
overhead of ITS mitigation on Ice Lake gen CPUs.

When "vmexit" option selected, if the CPU is affected by ITS guest/host
isolation, the default ITS mitigation is deployed.

Signed-off-by: Pawan Gupta <pawan.kumar.gupta@linux.intel.com>
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Reviewed-by: Josh Poimboeuf <jpoimboe@kernel.org>
Reviewed-by: Alexandre Chartre <alexandre.chartre@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-18 08:24:59 +02:00
Pawan Gupta 68d59e9ba3 x86/its: Enable Indirect Target Selection mitigation
commit f4818881c47fd91fcb6d62373c57c7844e3de1c0 upstream.

Indirect Target Selection (ITS) is a bug in some pre-ADL Intel CPUs with
eIBRS. It affects prediction of indirect branch and RETs in the
lower half of cacheline. Due to ITS such branches may get wrongly predicted
to a target of (direct or indirect) branch that is located in the upper
half of the cacheline.

Scope of impact
===============

Guest/host isolation
--------------------
When eIBRS is used for guest/host isolation, the indirect branches in the
VMM may still be predicted with targets corresponding to branches in the
guest.

Intra-mode
----------
cBPF or other native gadgets can be used for intra-mode training and
disclosure using ITS.

User/kernel isolation
---------------------
When eIBRS is enabled user/kernel isolation is not impacted.

Indirect Branch Prediction Barrier (IBPB)
-----------------------------------------
After an IBPB, indirect branches may be predicted with targets
corresponding to direct branches which were executed prior to IBPB. This is
mitigated by a microcode update.

Add cmdline parameter indirect_target_selection=off|on|force to control the
mitigation to relocate the affected branches to an ITS-safe thunk i.e.
located in the upper half of cacheline. Also add the sysfs reporting.

When retpoline mitigation is deployed, ITS safe-thunks are not needed,
because retpoline sequence is already ITS-safe. Similarly, when call depth
tracking (CDT) mitigation is deployed (retbleed=stuff), ITS safe return
thunk is not used, as CDT prevents RSB-underflow.

To not overcomplicate things, ITS mitigation is not supported with
spectre-v2 lfence;jmp mitigation. Moreover, it is less practical to deploy
lfence;jmp mitigation on ITS affected parts anyways.

Signed-off-by: Pawan Gupta <pawan.kumar.gupta@linux.intel.com>
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Reviewed-by: Josh Poimboeuf <jpoimboe@kernel.org>
Reviewed-by: Alexandre Chartre <alexandre.chartre@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-05-18 08:24:59 +02: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
Niklas Cassel b1e0b4f494 ata: libata-core: Add 'external' to the libata.force kernel parameter
[ Upstream commit deca423213cb33feda15e261e7b5b992077a6a08 ]

Commit ae1f3db006 ("ata: ahci: do not enable LPM on external ports")
changed so that LPM is not enabled on external ports (hotplug-capable or
eSATA ports).

This is because hotplug and LPM are mutually exclusive, see 7.3.1 Hot Plug
Removal Detection and Power Management Interaction in AHCI 1.3.1.

This does require that firmware has set the appropate bits (HPCP or ESP)
in PxCMD (which is a per port register in the AHCI controller).

If the firmware has failed to mark a port as hotplug-capable or eSATA in
PxCMD, then there is currently not much a user can do.

If LPM is enabled on the port, hotplug insertions and removals will not be
detected on that port.

In order to allow a user to fix up broken firmware, add 'external' to the
libata.force kernel parameter.

libata.force can be specified either on the kernel command line, or as a
kernel module parameter.

For more information, see Documentation/admin-guide/kernel-parameters.txt.

Reviewed-by: Damien Le Moal <dlemoal@kernel.org>
Link: https://lore.kernel.org/r/20250130133544.219297-4-cassel@kernel.org
Signed-off-by: Niklas Cassel <cassel@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-04-20 10:15:16 +02:00
Donghyeok Choe 7526d28b1e FROMGIT: printk/panic: Add option to allow non-panic CPUs to write to the ring buffer.
Commit 779dbc2e78 ("printk: Avoid non-panic CPUs writing to ringbuffer")
aimed to isolate panic-related messages. However, when panic() itself
malfunctions, messages from non-panic CPUs become crucial for debugging.

While commit bcc954c6ca ("printk/panic: Allow cpu backtraces to
be written into ringbuffer during panic") enables non-panic CPU
backtraces, it may not provide sufficient diagnostic information.

Introduce the "debug_non_panic_cpus" command-line option, enabling
non-panic CPU messages to be stored in the ring buffer during a panic.
This also prevents discarding non-finalized messages from non-panic CPUs
during console flushing, providing a more comprehensive view of system
state during critical failures.

Link: https://lore.kernel.org/all/Z8cLEkqLL2IOyNIj@pathway/
Signed-off-by: Donghyeok Choe <d7271.choe@samsung.com>
Reviewed-by: Petr Mladek <pmladek@suse.com>
Link: https://lore.kernel.org/r/20250318022320.2428155-1-d7271.choe@samsung.com
[pmladek@suse.com: Added documentation, added module_parameter, removed printk_ prefix.]
Tested-by: Petr Mladek <pmladek@suse.com>
Signed-off-by: Petr Mladek <pmladek@suse.com>

Bug: 406038942
(cherry picked from commit c1aa3daa517292303d98ff61f0440c354669f948
 https://git.kernel.org/pub/scm/linux/kernel/git/printk/linux.git for-6.15)
Change-Id: I1952093c2af99cb20c935a2de45cea9aec5cfda3
Signed-off-by: Donghyeok Choe <d7271.choe@samsung.com>
2025-03-26 16:30:48 -07:00
Vincent Donnefort 3fc1e21902 ANDROID: KVM: arm64: Introduce kvm-arm.protected_prefault parameter
On a protected-guest page-fault, preemptively fault a bigger region.
This region is defined by the protected_prefault parameter which is an
order.

Bug: 357781595
Bug: 361026567
Change-Id: I57565399f37ef1bc3f30098b82ba03ad4fb7cff7
Signed-off-by: Vincent Donnefort <vdonnefort@google.com>
2025-03-14 03:23:09 -07:00
Quentin Perret badb424ffc ANDROID: KVM: arm64: Configure size of pKVM linear map on the cmdline
We currently reserve enough memory for pKVM to construct a stage-1
page-table that maps all of memory at page granularity. However, in
practice the amount of memory actually mapped into EL2 stage-1 is quite
small as it mainly consists of the hypervisor itself and guest metadata
(kvm, kvm_vcpu and related, plus stage-2 page-tables).

To avoid the waste, introduce a new kernel cmdline parameter that
defines how much memory can be mapped in total into the hypervisor
linear map at any point in time. This value should be set conservatively,
as allocation failures in the hypervisor are likely to be fatal.

Bug: 357781595
Bug: 239674049
Change-Id: I979fa07fa14566793f990d7e1ad9c8c3644cba9a
Signed-off-by: Quentin Perret <qperret@google.com>
2025-02-17 02:12:40 -08:00
John Stultz 16693ee216 FROMLIST: sched: Add CONFIG_SCHED_PROXY_EXEC & boot argument to enable/disable
Add a CONFIG_SCHED_PROXY_EXEC option, along with a boot argument
sched_proxy_exec= that can be used to disable the feature at boot
time if CONFIG_SCHED_PROXY_EXEC was enabled.

Cc: Joel Fernandes <joelaf@google.com>
Cc: Qais Yousef <qyousef@layalina.io>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Juri Lelli <juri.lelli@redhat.com>
Cc: Vincent Guittot <vincent.guittot@linaro.org>
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com>
Cc: Valentin Schneider <vschneid@redhat.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Ben Segall <bsegall@google.com>
Cc: Zimuzo Ezeozue <zezeozue@google.com>
Cc: Mel Gorman <mgorman@suse.de>
Cc: Will Deacon <will@kernel.org>
Cc: Waiman Long <longman@redhat.com>
Cc: Boqun Feng <boqun.feng@gmail.com>
Cc: "Paul E. McKenney" <paulmck@kernel.org>
Cc: Metin Kaya <Metin.Kaya@arm.com>
Cc: Xuewen Yan <xuewen.yan94@gmail.com>
Cc: K Prateek Nayak <kprateek.nayak@amd.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: kernel-team@android.com
Tested-by: K Prateek Nayak <kprateek.nayak@amd.com>
Change-Id: Ie1d941d96abf762e886ae460f2852133fea8cbc9
Signed-off-by: John Stultz <jstultz@google.com>
Link: https://lore.kernel.org/lkml/20241125195204.2374458-2-jstultz@google.com/
Bug: 306081722
---
v7:
* Switch to CONFIG_SCHED_PROXY_EXEC/sched_proxy_exec= as
  suggested by Metin Kaya.
* Switch boot arg from =disable/enable to use kstrtobool(),
  which supports =yes|no|1|0|true|false|on|off, as also
  suggested by Metin Kaya, and print a message when a boot
  argument is used.
v8:
* Move CONFIG_SCHED_PROXY_EXEC under Scheduler Features as
  Suggested by Metin
* Minor rework reordering with split sched contexts patch
v12:
* Rework for selected -> donor renaming
v14:
* Depend on !PREEMPT_RT to avoid build issues for now
2024-12-13 10:01:53 -08:00
Aleksei Vetrov c0d49d6694 Merge branch 'aosp/android-mainline' into 'android16-6.12'
This catches up android16-6.12 with android-mainline to 6.12-rc7.

Bug: 367265496
Change-Id: I072760fe7a0f14fcfb67d4e4992939db4b810b63
Signed-off-by: Matthias Maennich <maennich@google.com>
Signed-off-by: Aleksei Vetrov <vvvvvv@google.com>
2024-11-20 15:02:21 +00:00
Greg Kroah-Hartman 1cf5180bc7 Merge 0a9b9d17f3 ("Merge tag 'pm-6.12-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm") into android-mainline
Steps on the way to 6.12-final

Change-Id: I91b51b7db5887e4fba193c8db3322cd672fdd6c0
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2024-11-15 07:48:22 +00:00
Vincent Donnefort 55e68d178b ANDROID: KVM: arm64: pKVM module loading before deprivilege
kvm-arm.protected_modules="" takes a list of modules that pKVM will load
before de-privileging the host. This is necessary as no loading will be
allowed later.

We can't rely on request_module() that might be disabled by umh's
configuration. Instead, create our own version, locked by the pKVM/KVM
static keys and marked as __init to be cleared once the kernel init is
done. Belt and braces.

Keep the previous kvm-arm.protected_modules for compatibility.

Bug: 357781595
Bug: 254835242
Change-Id: Ia6881b4c7a60cf81d19ead12c5d4638a27eff3eb
Signed-off-by: Vincent Donnefort <vdonnefort@google.com>
2024-11-14 15:19:24 +00:00
Will Deacon 68468ba8cd ANDROID: Documentation: KVM: Add some documentation for Protected KVM on arm64
Add some initial documentation for the Protected KVM (pKVM) feature on
arm64, describing the user ABI for creating protected VMs as well as
their limitations.

Bug: 357781595
Change-Id: I152af404f24b9aba3cc9be6acd8e26afcfa4b0a5
Signed-off-by: Will Deacon <will@kernel.org>
2024-11-14 15:19:00 +00:00
Jarkko Sakkinen 27184f8905 tpm: Opt-in in disable PCR integrity protection
The initial HMAC session feature added TPM bus encryption and/or integrity
protection to various in-kernel TPM operations. This can cause performance
bottlenecks with IMA, as it heavily utilizes PCR extend operations.

In order to mitigate this performance issue, introduce a kernel
command-line parameter to the TPM driver for disabling the integrity
protection for PCR extend operations (i.e. TPM2_PCR_Extend).

Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
Link: https://lore.kernel.org/linux-integrity/20241015193916.59964-1-zohar@linux.ibm.com/
Fixes: 6519fea6fd ("tpm: add hmac checks to tpm2_pcr_extend()")
Tested-by: Mimi Zohar <zohar@linux.ibm.com>
Co-developed-by: Roberto Sassu <roberto.sassu@huawei.com>
Signed-off-by: Roberto Sassu <roberto.sassu@huawei.com>
Co-developed-by: Mimi Zohar <zohar@linux.ibm.com>
Signed-off-by: Mimi Zohar <zohar@linux.ibm.com>
Signed-off-by: Jarkko Sakkinen <jarkko@kernel.org>
2024-11-13 21:10:45 +02:00
Matthias Maennich 7566a425e3 Merge 'v6.12-rc7' into android-mainline
* aosp/upstream-master:
  Linux 6.12-rc7
  filemap: Fix bounds checking in filemap_read()
  i2c: designware: do not hold SCL low when I2C_DYNAMIC_TAR_UPDATE is not set
  mailmap: add entry for Thorsten Blum
  ocfs2: remove entry once instead of null-ptr-dereference in ocfs2_xa_remove()
  signal: restore the override_rlimit logic
  fs/proc: fix compile warning about variable 'vmcore_mmap_ops'
  ucounts: fix counter leak in inc_rlimit_get_ucounts()
  selftests: hugetlb_dio: check for initial conditions to skip in the start
  mm: fix docs for the kernel parameter ``thp_anon=``
  mm/damon/core: avoid overflow in damon_feed_loop_next_input()
  mm/damon/core: handle zero schemes apply interval
  mm/damon/core: handle zero {aggregation,ops_update} intervals
  mm/mlock: set the correct prev on failure
  objpool: fix to make percpu slot allocation more robust
  mm/page_alloc: keep track of free highatomic
  irqchip/gic-v3: Force propagation of the active state with a read-back
  USB: serial: qcserial: add support for Sierra Wireless EM86xx
  mm: resolve faulty mmap_region() error path behaviour
  mm: refactor arch_calc_vm_flag_bits() and arm64 MTE handling
  mm: refactor map_deny_write_exec()
  mm: unconditionally close VMAs on error
  mm: avoid unsafe VMA hook invocation when error arises on mmap hook
  mm/thp: fix deferred split unqueue naming and locking
  mm/thp: fix deferred split queue not partially_mapped
  thunderbolt: Fix connection issue with Pluggable UD-4VPD dock
  i2c: muxes: Fix return value check in mule_i2c_mux_probe()
  usb: typec: fix potential out of bounds in ucsi_ccg_update_set_new_cam_cmd()
  usb: dwc3: fix fault at system suspend if device was already runtime suspended
  usb: typec: qcom-pmic: init value of hdr_len/txbuf_len earlier
  usb: musb: sunxi: Fix accessing an released usb phy
  USB: serial: io_edgeport: fix use after free in debug printk
  USB: serial: option: add Quectel RG650V
  USB: serial: option: add Fibocom FG132 0x0112 composition
  thunderbolt: Add only on-board retimers when !CONFIG_USB4_DEBUGFS_MARGINING
  clk: qcom: gcc-x1e80100: Fix USB MP SS1 PHY GDSC pwrsts flags
  staging: vchiq_arm: Use devm_kzalloc() for drv_mgmt allocation
  staging: vchiq_arm: Use devm_kzalloc() for vchiq_arm_state allocation
  clk: qcom: gcc-x1e80100: Fix halt_check for pipediv2 clocks
  clk: qcom: clk-alpha-pll: Fix pll post div mask when width is not set
  clk: qcom: videocc-sm8350: use HW_CTRL_TRIGGER for vcodec GDSCs

Bug: 367265496
Change-Id: I2069d21f2ff30329744951db7e93f5bad9eb9abe
Signed-off-by: Matthias Maennich <maennich@google.com>
2024-11-11 10:45:31 +00:00
Maíra Canal 652e1a5146 mm: fix docs for the kernel parameter `thp_anon=`
If we add ``thp_anon=32,64K:always`` to the kernel command line, we
will see the following error:

[    0.000000] huge_memory: thp_anon=32,64K:always: error parsing string, ignoring setting

This happens because the correct format isn't ``thp_anon=<size>,<size>[KMG]:<state>```,
as [KMG] must follow each number to especify its unit. So, the correct
format is ``thp_anon=<size>[KMG],<size>[KMG]:<state>```.

Therefore, adjust the documentation to reflect the correct format of the
parameter ``thp_anon=``.

Link: https://lkml.kernel.org/r/20241101165719.1074234-3-mcanal@igalia.com
Fixes: dd4d30d1cd ("mm: override mTHP "enabled" defaults at kernel cmdline")
Signed-off-by: Maíra Canal <mcanal@igalia.com>
Acked-by: Barry Song <baohua@kernel.org>
Acked-by: David Hildenbrand <david@redhat.com>
Cc: Baolin Wang <baolin.wang@linux.alibaba.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Lance Yang <ioworker0@gmail.com>
Cc: Ryan Roberts <ryan.roberts@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2024-11-07 14:14:59 -08:00
Chris Goldsworthy a1dfc257ae ANDROID: arm64/mm: Add command line option to make ZONE_DMA32 empty
ZONE_DMA32 is enabled by default, yet it is not
needed for all devices, nor is it desirable to have if not needed. For
instance, if a partner in GKI 1.0 did not use ZONE_DMA32, memory can
be lower for ZONE_NORMAL relative to older targets, such that memory
would run out more quickly in ZONE_NORMAL leading kswapd to be invoked
unnecessarily.

Correspondingly, provide a means of making ZONE_DMA32 empty via the
kernel command line when it is compiled in via CONFIG_ZONE_DMA32.

P.S. The following two patches are squashed into this one,
1. bf96382 ("ANDROID: dma-direct: Make DMA32 disablement work for CONFIG_NUMA")
2. 135406c ("ANDROID: dma-direct: Document disable_dma32")

Additionally, for kernels 6.6+, ensure that arm64_dma_phys_limit
is set correctly by letting it be set to the highest possible
physical address when disable_dma32 is present on the kernel
command line.

This allows SWIOTLB allocations to be satisfied from anywhere within
the physical memory space, as opposed to restricting these
allocations to the lower 32-bit addressable physical memory space.
It is important that SWIOTLB allocations use the correct addressing
limits, as SWIOTLB buffers can now be allocated at runtime--not just
boot. Using the correct addressing limits can help increase the amount
of memory available for SWIOTLB allocations, increasing the likelihood
of success.

This also aligns the behavior of disable_dma32 to what would happen if
CONFIG_ZONE_DMA32 were disabled.

Bug: 199917449
Bug: 268587627
Bug: 296282294
Bug: 372371001
Change-Id: I70ec76914b92e518d61a61072f0b3cb41cb28646
Signed-off-by: Chris Goldsworthy <quic_cgoldswo@quicinc.com>
Signed-off-by: Sudarshan Rajagopalan <quic_sudaraja@quicinc.com>
Signed-off-by: Chinwen Chang <chinwen.chang@mediatek.com>
[isaacmanjarres: Updated commit message to note that this
version of the patch treats arm64_phys_dma_limit differently
than the original version of the patch.]
Signed-off-by: Isaac J. Manjarres <isaacmanjarres@google.com>
Signed-off-by: Chinwen Chang <chinwen.chang@mediatek.com>
2024-10-10 21:06:42 +00:00
Matthias Maennich 63a18b7e0d Merge 3efc57369a ("Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm") into android-mainline
Steps on the way to 6.12-rc1

Bug: 367265496
Change-Id: I267a0c6bfbc8e3742e3d1b8ef43d11f3ed1725eb
Signed-off-by: Matthias Maennich <maennich@google.com>
2024-10-04 00:18:42 +00:00
Matthias Maennich d915a11b1e Merge f8eb5bd9a8 ("mm: fix build on 32-bit targets without MAX_PHYSMEM_BITS") into android-mainline
Steps on the way to 6.12-rc1

Bug: 367265496
Change-Id: Ifd47581e267cffcb07297153a2a3cf3b0a93d575
Signed-off-by: Matthias Maennich <maennich@google.com>
2024-09-30 20:27:29 +00:00
Matthias Maennich e9d92621d7 Merge 7856a56541 ("Merge tag 'mm-nonmm-stable-2024-09-21-07-52' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm") into android-mainline
Steps on the way to 6.12-rc1

Bug: 367265496
Change-Id: Ia778d96b2e701765c170e2f4e920e850ceedec0e
Signed-off-by: Matthias Maennich <maennich@google.com>
2024-09-30 16:20:19 +00:00
Linus Torvalds 3efc57369a Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm
Pull x86 kvm updates from Paolo Bonzini:
 "x86:

   - KVM currently invalidates the entirety of the page tables, not just
     those for the memslot being touched, when a memslot is moved or
     deleted.

     This does not traditionally have particularly noticeable overhead,
     but Intel's TDX will require the guest to re-accept private pages
     if they are dropped from the secure EPT, which is a non starter.

     Actually, the only reason why this is not already being done is a
     bug which was never fully investigated and caused VM instability
     with assigned GeForce GPUs, so allow userspace to opt into the new
     behavior.

   - Advertise AVX10.1 to userspace (effectively prep work for the
     "real" AVX10 functionality that is on the horizon)

   - Rework common MSR handling code to suppress errors on userspace
     accesses to unsupported-but-advertised MSRs

     This will allow removing (almost?) all of KVM's exemptions for
     userspace access to MSRs that shouldn't exist based on the vCPU
     model (the actual cleanup is non-trivial future work)

   - Rework KVM's handling of x2APIC ICR, again, because AMD (x2AVIC)
     splits the 64-bit value into the legacy ICR and ICR2 storage,
     whereas Intel (APICv) stores the entire 64-bit value at the ICR
     offset

   - Fix a bug where KVM would fail to exit to userspace if one was
     triggered by a fastpath exit handler

   - Add fastpath handling of HLT VM-Exit to expedite re-entering the
     guest when there's already a pending wake event at the time of the
     exit

   - Fix a WARN caused by RSM entering a nested guest from SMM with
     invalid guest state, by forcing the vCPU out of guest mode prior to
     signalling SHUTDOWN (the SHUTDOWN hits the VM altogether, not the
     nested guest)

   - Overhaul the "unprotect and retry" logic to more precisely identify
     cases where retrying is actually helpful, and to harden all retry
     paths against putting the guest into an infinite retry loop

   - Add support for yielding, e.g. to honor NEED_RESCHED, when zapping
     rmaps in the shadow MMU

   - Refactor pieces of the shadow MMU related to aging SPTEs in
     prepartion for adding multi generation LRU support in KVM

   - Don't stuff the RSB after VM-Exit when RETPOLINE=y and AutoIBRS is
     enabled, i.e. when the CPU has already flushed the RSB

   - Trace the per-CPU host save area as a VMCB pointer to improve
     readability and cleanup the retrieval of the SEV-ES host save area

   - Remove unnecessary accounting of temporary nested VMCB related
     allocations

   - Set FINAL/PAGE in the page fault error code for EPT violations if
     and only if the GVA is valid. If the GVA is NOT valid, there is no
     guest-side page table walk and so stuffing paging related metadata
     is nonsensical

   - Fix a bug where KVM would incorrectly synthesize a nested VM-Exit
     instead of emulating posted interrupt delivery to L2

   - Add a lockdep assertion to detect unsafe accesses of vmcs12
     structures

   - Harden eVMCS loading against an impossible NULL pointer deref
     (really truly should be impossible)

   - Minor SGX fix and a cleanup

   - Misc cleanups

  Generic:

   - Register KVM's cpuhp and syscore callbacks when enabling
     virtualization in hardware, as the sole purpose of said callbacks
     is to disable and re-enable virtualization as needed

   - Enable virtualization when KVM is loaded, not right before the
     first VM is created

     Together with the previous change, this simplifies a lot the logic
     of the callbacks, because their very existence implies
     virtualization is enabled

   - Fix a bug that results in KVM prematurely exiting to userspace for
     coalesced MMIO/PIO in many cases, clean up the related code, and
     add a testcase

   - Fix a bug in kvm_clear_guest() where it would trigger a buffer
     overflow _if_ the gpa+len crosses a page boundary, which thankfully
     is guaranteed to not happen in the current code base. Add WARNs in
     more helpers that read/write guest memory to detect similar bugs

  Selftests:

   - Fix a goof that caused some Hyper-V tests to be skipped when run on
     bare metal, i.e. NOT in a VM

   - Add a regression test for KVM's handling of SHUTDOWN for an SEV-ES
     guest

   - Explicitly include one-off assets in .gitignore. Past Sean was
     completely wrong about not being able to detect missing .gitignore
     entries

   - Verify userspace single-stepping works when KVM happens to handle a
     VM-Exit in its fastpath

   - Misc cleanups"

* tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (127 commits)
  Documentation: KVM: fix warning in "make htmldocs"
  s390: Enable KVM_S390_UCONTROL config in debug_defconfig
  selftests: kvm: s390: Add VM run test case
  KVM: SVM: let alternatives handle the cases when RSB filling is required
  KVM: VMX: Set PFERR_GUEST_{FINAL,PAGE}_MASK if and only if the GVA is valid
  KVM: x86/mmu: Use KVM_PAGES_PER_HPAGE() instead of an open coded equivalent
  KVM: x86/mmu: Add KVM_RMAP_MANY to replace open coded '1' and '1ul' literals
  KVM: x86/mmu: Fold mmu_spte_age() into kvm_rmap_age_gfn_range()
  KVM: x86/mmu: Morph kvm_handle_gfn_range() into an aging specific helper
  KVM: x86/mmu: Honor NEED_RESCHED when zapping rmaps and blocking is allowed
  KVM: x86/mmu: Add a helper to walk and zap rmaps for a memslot
  KVM: x86/mmu: Plumb a @can_yield parameter into __walk_slot_rmaps()
  KVM: x86/mmu: Move walk_slot_rmaps() up near for_each_slot_rmap_range()
  KVM: x86/mmu: WARN on MMIO cache hit when emulating write-protected gfn
  KVM: x86/mmu: Detect if unprotect will do anything based on invalid_list
  KVM: x86/mmu: Subsume kvm_mmu_unprotect_page() into the and_retry() version
  KVM: x86: Rename reexecute_instruction()=>kvm_unprotect_and_retry_on_failure()
  KVM: x86: Update retry protection fields when forcing retry on emulation failure
  KVM: x86: Apply retry protection to "unprotect on failure" path
  KVM: x86: Check EMULTYPE_WRITE_PF_TO_SP before unprotecting gfn
  ...
2024-09-28 09:20:14 -07:00
Matthias Maennich f5bf391ca4 Merge 4a39ac5b7d ("Merge tag 'random-6.12-rc1-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/crng/random") into android-mainline
Steps on the way to 6.12-rc1

Bug: 367265496
Change-Id: I115d487c6294c249dd30b708b3164f34be34d874
Signed-off-by: Matthias Maennich <maennich@google.com>
2024-09-27 02:18:36 +00:00
Matthias Maennich df2ebc4bcb Merge efdfcd40ad ("Merge tag 'lkmm.2024.09.14b' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu") into android-mainline
Steps on the way to 6.12-rc1

Bug: 367265496
Change-Id: I0a0d83175270f57ba857b91e7c1c403e939fa34f
Signed-off-by: Matthias Maennich <maennich@google.com>
2024-09-27 01:47:34 +00:00
Matthias Maennich 8ab8a434ea Merge d58db3f3a0 ("Merge tag 'docs-6.12' of git://git.lwn.net/linux") into android-mainline
Steps on the way to 6.12-rc1

Bug: 367265496
Change-Id: If60ec1a650903bc7f1e176954ae2cc19590f580c
Signed-off-by: Matthias Maennich <maennich@google.com>
2024-09-25 09:06:53 +00:00
Matthias Maennich 03aa4ffa14 Merge a430d95c5e ("Merge tag 'lsm-pr-20240911' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/lsm") into android-mainline
Steps on the way to 6.12-rc1

Bug: 367265496
Change-Id: I2d1107f51e1fc2cf7df866a66009097a1f26061f
Signed-off-by: Matthias Maennich <maennich@google.com>
2024-09-24 11:37:33 +00:00
Matthias Maennich 3461bbdefd Merge 35219bc5c7 ("Merge tag 'vfs-6.12.netfs' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs") into android-mainline
Steps on the way to 6.12-rc1

Bug: 367265496
Change-Id: I37a904f83857c7847142c7273b3c2771b5125cfc
Signed-off-by: Matthias Maennich <maennich@google.com>
2024-09-24 11:06:32 +00:00
Linus Torvalds af9c191ac2 Merge tag 'trace-ring-buffer-v6.12' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace
Pull ring-buffer updates from Steven Rostedt:

 - tracing/ring-buffer: persistent buffer across reboots

   This allows for the tracing instance ring buffer to stay persistent
   across reboots. The way this is done is by adding to the kernel
   command line:

     trace_instance=boot_map@0x285400000:12M

   This will reserve 12 megabytes at the address 0x285400000, and then
   map the tracing instance "boot_map" ring buffer to that memory. This
   will appear as a normal instance in the tracefs system:

     /sys/kernel/tracing/instances/boot_map

   A user could enable tracing in that instance, and on reboot or kernel
   crash, if the memory is not wiped by the firmware, it will recreate
   the trace in that instance. For example, if one was debugging a
   shutdown of a kernel reboot:

     # cd /sys/kernel/tracing
     # echo function > instances/boot_map/current_tracer
     # reboot
     [..]
     # cd /sys/kernel/tracing
     # tail instances/boot_map/trace
           swapper/0-1       [000] d..1.   164.549800: restore_boot_irq_mode <-native_machine_shutdown
           swapper/0-1       [000] d..1.   164.549801: native_restore_boot_irq_mode <-native_machine_shutdown
           swapper/0-1       [000] d..1.   164.549802: disconnect_bsp_APIC <-native_machine_shutdown
           swapper/0-1       [000] d..1.   164.549811: hpet_disable <-native_machine_shutdown
           swapper/0-1       [000] d..1.   164.549812: iommu_shutdown_noop <-native_machine_restart
           swapper/0-1       [000] d..1.   164.549813: native_machine_emergency_restart <-__do_sys_reboot
           swapper/0-1       [000] d..1.   164.549813: tboot_shutdown <-native_machine_emergency_restart
           swapper/0-1       [000] d..1.   164.549820: acpi_reboot <-native_machine_emergency_restart
           swapper/0-1       [000] d..1.   164.549821: acpi_reset <-acpi_reboot
           swapper/0-1       [000] d..1.   164.549822: acpi_os_write_port <-acpi_reboot

   On reboot, the buffer is examined to make sure it is valid. The
   validation check even steps through every event to make sure the meta
   data of the event is correct. If any test fails, it will simply reset
   the buffer, and the buffer will be empty on boot.

 - Allow the tracing persistent boot buffer to use the "reserve_mem"
   option

   Instead of having the admin find a physical address to store the
   persistent buffer, which can be very tedious if they have to
   administrate several different machines, allow them to use the
   "reserve_mem" option that will find a location for them. It is not as
   reliable because of KASLR, as the loading of the kernel in different
   locations can cause the memory allocated to be inconsistent. Booting
   with "nokaslr" can make reserve_mem more reliable.

 - Have function graph tracer handle offsets from a previous boot.

   The ring buffer output from a previous boot may have different
   addresses due to kaslr. Have the function graph tracer handle these
   by using the delta from the previous boot to the new boot address
   space.

 - Only reset the saved meta offset when the buffer is started or reset

   In the persistent memory meta data, it holds the previous address
   space information, so that it can calculate the delta to have
   function tracing work. But this gets updated after being read to hold
   the new address space. But if the buffer isn't used for that boot, on
   reboot, the delta is now calculated from the previous boot and not
   the boot that holds the data in the ring buffer. This causes the
   functions not to be shown. Do not save the address space information
   of the current kernel until it is being recorded.

 - Add a magic variable to test the valid meta data

   Add a magic variable in the meta data that can also be used for
   validation. The validator of the previous buffer doesn't need this
   magic data, but it can be used if the meta data is changed by a new
   kernel, which may have the same format that passes the validator but
   is used differently. This magic number can also be used as a
   "versioning" of the meta data.

 - Align user space mapped ring buffer sub buffers to improve TLB
   entries

   Linus mentioned that the mapped ring buffer sub buffers were
   misaligned between the meta page and the sub-buffers, so that if the
   sub-buffers were bigger than PAGE_SIZE, it wouldn't allow the TLB to
   use bigger entries.

 - Add new kernel command line "traceoff" to disable tracing on boot for
   instances

   If tracing is enabled for a boot instance, there needs a way to be
   able to disable it on boot so that new events do not get entered into
   the ring buffer and be mixed with events from a previous boot, as
   that can be confusing.

 - Allow trace_printk() to go to other instances

   Currently, trace_printk() can only go to the top level instance. When
   debugging with a persistent buffer, it is really useful to be able to
   add trace_printk() to go to that buffer, so that you have access to
   them after a crash.

 - Do not use "bin_printk()" for traces to a boot instance

   The bin_printk() saves only a pointer to the printk format in the
   ring buffer, as the reader of the buffer can still have access to it.
   But this is not the case if the buffer is from a previous boot. If
   the trace_printk() is going to a "persistent" buffer, it will use the
   slower version that writes the printk format into the buffer.

 - Add command line option to allow trace_printk() to go to an instance

   Allow the kernel command line to define which instance the
   trace_printk() goes to, instead of forcing the admin to set it for
   every boot via the tracefs options.

 - Start a document that explains how to use tracefs to debug the kernel

 - Add some more kernel selftests to test user mapped ring buffer

* tag 'trace-ring-buffer-v6.12' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace: (28 commits)
  selftests/ring-buffer: Handle meta-page bigger than the system
  selftests/ring-buffer: Verify the entire meta-page padding
  tracing/Documentation: Start a document on how to debug with tracing
  tracing: Add option to set an instance to be the trace_printk destination
  tracing: Have trace_printk not use binary prints if boot buffer
  tracing: Allow trace_printk() to go to other instance buffers
  tracing: Add "traceoff" flag to boot time tracing instances
  ring-buffer: Align meta-page to sub-buffers for improved TLB usage
  ring-buffer: Add magic and struct size to boot up meta data
  ring-buffer: Don't reset persistent ring-buffer meta saved addresses
  tracing/fgraph: Have fgraph handle previous boot function addresses
  tracing: Allow boot instances to use reserve_mem boot memory
  tracing: Fix ifdef of snapshots to not prevent last_boot_info file
  ring-buffer: Use vma_pages() helper function
  tracing: Fix NULL vs IS_ERR() check in enable_instances()
  tracing: Add last boot delta offset for stack traces
  tracing: Update function tracing output for previous boot buffer
  tracing: Handle old buffer mappings for event strings and functions
  tracing/ring-buffer: Add last_boot_info file to boot instance
  ring-buffer: Save text and data locations in mapped meta data
  ...
2024-09-22 09:47:16 -07:00
Linus Torvalds 617a814f14 Merge tag 'mm-stable-2024-09-20-02-31' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
Pull MM updates from Andrew Morton:
 "Along with the usual shower of singleton patches, notable patch series
  in this pull request are:

   - "Align kvrealloc() with krealloc()" from Danilo Krummrich. Adds
     consistency to the APIs and behaviour of these two core allocation
     functions. This also simplifies/enables Rustification.

   - "Some cleanups for shmem" from Baolin Wang. No functional changes -
     mode code reuse, better function naming, logic simplifications.

   - "mm: some small page fault cleanups" from Josef Bacik. No
     functional changes - code cleanups only.

   - "Various memory tiering fixes" from Zi Yan. A small fix and a
     little cleanup.

   - "mm/swap: remove boilerplate" from Yu Zhao. Code cleanups and
     simplifications and .text shrinkage.

   - "Kernel stack usage histogram" from Pasha Tatashin and Shakeel
     Butt. This is a feature, it adds new feilds to /proc/vmstat such as

       $ grep kstack /proc/vmstat
       kstack_1k 3
       kstack_2k 188
       kstack_4k 11391
       kstack_8k 243
       kstack_16k 0

     which tells us that 11391 processes used 4k of stack while none at
     all used 16k. Useful for some system tuning things, but
     partivularly useful for "the dynamic kernel stack project".

   - "kmemleak: support for percpu memory leak detect" from Pavel
     Tikhomirov. Teaches kmemleak to detect leaksage of percpu memory.

   - "mm: memcg: page counters optimizations" from Roman Gushchin. "3
     independent small optimizations of page counters".

   - "mm: split PTE/PMD PT table Kconfig cleanups+clarifications" from
     David Hildenbrand. Improves PTE/PMD splitlock detection, makes
     powerpc/8xx work correctly by design rather than by accident.

   - "mm: remove arch_make_page_accessible()" from David Hildenbrand.
     Some folio conversions which make arch_make_page_accessible()
     unneeded.

   - "mm, memcg: cg2 memory{.swap,}.peak write handlers" fro David
     Finkel. Cleans up and fixes our handling of the resetting of the
     cgroup/process peak-memory-use detector.

   - "Make core VMA operations internal and testable" from Lorenzo
     Stoakes. Rationalizaion and encapsulation of the VMA manipulation
     APIs. With a view to better enable testing of the VMA functions,
     even from a userspace-only harness.

   - "mm: zswap: fixes for global shrinker" from Takero Funaki. Fix
     issues in the zswap global shrinker, resulting in improved
     performance.

   - "mm: print the promo watermark in zoneinfo" from Kaiyang Zhao. Fill
     in some missing info in /proc/zoneinfo.

   - "mm: replace follow_page() by folio_walk" from David Hildenbrand.
     Code cleanups and rationalizations (conversion to folio_walk())
     resulting in the removal of follow_page().

   - "improving dynamic zswap shrinker protection scheme" from Nhat
     Pham. Some tuning to improve zswap's dynamic shrinker. Significant
     reductions in swapin and improvements in performance are shown.

   - "mm: Fix several issues with unaccepted memory" from Kirill
     Shutemov. Improvements to the new unaccepted memory feature,

   - "mm/mprotect: Fix dax puds" from Peter Xu. Implements mprotect on
     DAX PUDs. This was missing, although nobody seems to have notied
     yet.

   - "Introduce a store type enum for the Maple tree" from Sidhartha
     Kumar. Cleanups and modest performance improvements for the maple
     tree library code.

   - "memcg: further decouple v1 code from v2" from Shakeel Butt. Move
     more cgroup v1 remnants away from the v2 memcg code.

   - "memcg: initiate deprecation of v1 features" from Shakeel Butt.
     Adds various warnings telling users that memcg v1 features are
     deprecated.

   - "mm: swap: mTHP swap allocator base on swap cluster order" from
     Chris Li. Greatly improves the success rate of the mTHP swap
     allocation.

   - "mm: introduce numa_memblks" from Mike Rapoport. Moves various
     disparate per-arch implementations of numa_memblk code into generic
     code.

   - "mm: batch free swaps for zap_pte_range()" from Barry Song. Greatly
     improves the performance of munmap() of swap-filled ptes.

   - "support large folio swap-out and swap-in for shmem" from Baolin
     Wang. With this series we no longer split shmem large folios into
     simgle-page folios when swapping out shmem.

   - "mm/hugetlb: alloc/free gigantic folios" from Yu Zhao. Nice
     performance improvements and code reductions for gigantic folios.

   - "support shmem mTHP collapse" from Baolin Wang. Adds support for
     khugepaged's collapsing of shmem mTHP folios.

   - "mm: Optimize mseal checks" from Pedro Falcato. Fixes an mprotect()
     performance regression due to the addition of mseal().

   - "Increase the number of bits available in page_type" from Matthew
     Wilcox. Increases the number of bits available in page_type!

   - "Simplify the page flags a little" from Matthew Wilcox. Many legacy
     page flags are now folio flags, so the page-based flags and their
     accessors/mutators can be removed.

   - "mm: store zero pages to be swapped out in a bitmap" from Usama
     Arif. An optimization which permits us to avoid writing/reading
     zero-filled zswap pages to backing store.

   - "Avoid MAP_FIXED gap exposure" from Liam Howlett. Fixes a race
     window which occurs when a MAP_FIXED operqtion is occurring during
     an unrelated vma tree walk.

   - "mm: remove vma_merge()" from Lorenzo Stoakes. Major rotorooting of
     the vma_merge() functionality, making ot cleaner, more testable and
     better tested.

   - "misc fixups for DAMON {self,kunit} tests" from SeongJae Park.
     Minor fixups of DAMON selftests and kunit tests.

   - "mm: memory_hotplug: improve do_migrate_range()" from Kefeng Wang.
     Code cleanups and folio conversions.

   - "Shmem mTHP controls and stats improvements" from Ryan Roberts.
     Cleanups for shmem controls and stats.

   - "mm: count the number of anonymous THPs per size" from Barry Song.
     Expose additional anon THP stats to userspace for improved tuning.

   - "mm: finish isolate/putback_lru_page()" from Kefeng Wang: more
     folio conversions and removal of now-unused page-based APIs.

   - "replace per-quota region priorities histogram buffer with
     per-context one" from SeongJae Park. DAMON histogram
     rationalization.

   - "Docs/damon: update GitHub repo URLs and maintainer-profile" from
     SeongJae Park. DAMON documentation updates.

   - "mm/vdpa: correct misuse of non-direct-reclaim __GFP_NOFAIL and
     improve related doc and warn" from Jason Wang: fixes usage of page
     allocator __GFP_NOFAIL and GFP_ATOMIC flags.

   - "mm: split underused THPs" from Yu Zhao. Improve THP=always policy.
     This was overprovisioning THPs in sparsely accessed memory areas.

   - "zram: introduce custom comp backends API" frm Sergey Senozhatsky.
     Add support for zram run-time compression algorithm tuning.

   - "mm: Care about shadow stack guard gap when getting an unmapped
     area" from Mark Brown. Fix up the various arch_get_unmapped_area()
     implementations to better respect guard areas.

   - "Improve mem_cgroup_iter()" from Kinsey Ho. Improve the reliability
     of mem_cgroup_iter() and various code cleanups.

   - "mm: Support huge pfnmaps" from Peter Xu. Extends the usage of huge
     pfnmap support.

   - "resource: Fix region_intersects() vs add_memory_driver_managed()"
     from Huang Ying. Fix a bug in region_intersects() for systems with
     CXL memory.

   - "mm: hwpoison: two more poison recovery" from Kefeng Wang. Teaches
     a couple more code paths to correctly recover from the encountering
     of poisoned memry.

   - "mm: enable large folios swap-in support" from Barry Song. Support
     the swapin of mTHP memory into appropriately-sized folios, rather
     than into single-page folios"

* tag 'mm-stable-2024-09-20-02-31' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (416 commits)
  zram: free secondary algorithms names
  uprobes: turn xol_area->pages[2] into xol_area->page
  uprobes: introduce the global struct vm_special_mapping xol_mapping
  Revert "uprobes: use vm_special_mapping close() functionality"
  mm: support large folios swap-in for sync io devices
  mm: add nr argument in mem_cgroup_swapin_uncharge_swap() helper to support large folios
  mm: fix swap_read_folio_zeromap() for large folios with partial zeromap
  mm/debug_vm_pgtable: Use pxdp_get() for accessing page table entries
  set_memory: add __must_check to generic stubs
  mm/vma: return the exact errno in vms_gather_munmap_vmas()
  memcg: cleanup with !CONFIG_MEMCG_V1
  mm/show_mem.c: report alloc tags in human readable units
  mm: support poison recovery from copy_present_page()
  mm: support poison recovery from do_cow_fault()
  resource, kunit: add test case for region_intersects()
  resource: make alloc_free_mem_region() works for iomem_resource
  mm: z3fold: deprecate CONFIG_Z3FOLD
  vfio/pci: implement huge_fault support
  mm/arm64: support large pfn mappings
  mm/x86: support large pfn mappings
  ...
2024-09-21 07:29:05 -07:00
Linus Torvalds eec91e22fe Merge tag 'iommu-updates-v6.12' of git://git.kernel.org/pub/scm/linux/kernel/git/iommu/linux
Pull iommu updates from Joerg Roedel:
 "Core changes:
   - Allow ATS on VF when parent device is identity mapped
   - Optimize unmap path on ARM io-pagetable implementation
   - Use of_property_present()

  ARM-SMMU changes:
   - SMMUv2:
       - Devicetree binding updates for Qualcomm MMU-500 implementations
       - Extend workarounds for broken Qualcomm hypervisor to avoid
         touching features that are not available (e.g. 16KiB page
         support, reserved context banks)
   - SMMUv3:
       - Support for NVIDIA's custom virtual command queue hardware
       - Fix Stage-2 stall configuration and extend tests to cover this
         area
       - A bunch of driver cleanups, including simplification of the
         master rbtree code
   - Minor cleanups and fixes across both drivers

  Intel VT-d changes:
   - Retire si_domain and convert to use static identity domain
   - Batched IOTLB/dev-IOTLB invalidation
   - Small code refactoring and cleanups

  AMD-Vi changes:
   - Cleanup and refactoring of io-pagetable code
   - Add parameter to limit the used io-pagesizes
   - Other cleanups and fixes"

* tag 'iommu-updates-v6.12' of git://git.kernel.org/pub/scm/linux/kernel/git/iommu/linux: (77 commits)
  dt-bindings: arm-smmu: Add compatible for QCS8300 SoC
  iommu/amd: Test for PAGING domains before freeing a domain
  iommu/amd: Fix argument order in amd_iommu_dev_flush_pasid_all()
  iommu/amd: Add kernel parameters to limit V1 page-sizes
  iommu/arm-smmu-v3: Reorganize struct arm_smmu_ctx_desc_cfg
  iommu/arm-smmu-v3: Add types for each level of the CD table
  iommu/arm-smmu-v3: Shrink the cdtab l1_desc array
  iommu/arm-smmu-v3: Do not use devm for the cd table allocations
  iommu/arm-smmu-v3: Remove strtab_base/cfg
  iommu/arm-smmu-v3: Reorganize struct arm_smmu_strtab_cfg
  iommu/arm-smmu-v3: Add types for each level of the 2 level stream table
  iommu/arm-smmu-v3: Add arm_smmu_strtab_l1/2_idx()
  iommu/arm-smmu-qcom: apply num_context_bank fixes for SDM630 / SDM660
  iommu/arm-smmu-v3: Use the new rb tree helpers
  dt-bindings: arm-smmu: document the support on SA8255p
  iommu/tegra241-cmdqv: Do not allocate vcmdq until dma_set_mask_and_coherent
  iommu/tegra241-cmdqv: Drop static at local variable
  iommu/tegra241-cmdqv: Fix ioremap() error handling in probe()
  iommu/amd: Do not set the D bit on AMD v2 table entries
  iommu/amd: Correct the reported page sizes from the V1 table
  ...
2024-09-18 12:45:52 +02:00
Linus Torvalds 067610ebaa Merge tag 'rcu.release.v6.12' of git://git.kernel.org/pub/scm/linux/kernel/git/rcu/linux
Pull RCU updates from Neeraj Upadhyay:
 "Context tracking:
   - rename context tracking state related symbols and remove references
     to "dynticks" in various context tracking state variables and
     related helpers
   - force context_tracking_enabled_this_cpu() to be inlined to avoid
     leaving a noinstr section

  CSD lock:
   - enhance CSD-lock diagnostic reports
   - add an API to provide an indication of ongoing CSD-lock stall

  nocb:
   - update and simplify RCU nocb code to handle (de-)offloading of
     callbacks only for offline CPUs
   - fix RT throttling hrtimer being armed from offline CPU

  rcutorture:
   - remove redundant rcu_torture_ops get_gp_completed fields
   - add SRCU ->same_gp_state and ->get_comp_state functions
   - add generic test for NUM_ACTIVE_*RCU_POLL* for testing RCU and SRCU
     polled grace periods
   - add CFcommon.arch for arch-specific Kconfig options
   - print number of update types in rcu_torture_write_types()
   - add rcutree.nohz_full_patience_delay testing to the TREE07 scenario
   - add a stall_cpu_repeat module parameter to test repeated CPU stalls
   - add argument to limit number of CPUs a guest OS can use in
     torture.sh

  rcustall:
   - abbreviate RCU CPU stall warnings during CSD-lock stalls
   - Allow dump_cpu_task() to be called without disabling preemption
   - defer printing stall-warning backtrace when holding rcu_node lock

  srcu:
   - make SRCU gp seq wrap-around faster
   - add KCSAN checks for concurrent updates to ->srcu_n_exp_nodelay and
     ->reschedule_count which are used in heuristics governing
     auto-expediting of normal SRCU grace periods and
     grace-period-state-machine delays
   - mark idle SRCU-barrier callbacks to help identify stuck
     SRCU-barrier callback

  rcu tasks:
   - remove RCU Tasks Rude asynchronous APIs as they are no longer used
   - stop testing RCU Tasks Rude asynchronous APIs
   - fix access to non-existent percpu regions
   - check processor-ID assumptions during chosen CPU calculation for
     callback enqueuing
   - update description of rtp->tasks_gp_seq grace-period sequence
     number
   - add rcu_barrier_cb_is_done() to identify whether a given
     rcu_barrier callback is stuck
   - mark idle Tasks-RCU-barrier callbacks
   - add *torture_stats_print() functions to print detailed diagnostics
     for Tasks-RCU variants
   - capture start time of rcu_barrier_tasks*() operation to help
     distinguish a hung barrier operation from a long series of barrier
     operations

  refscale:
   - add a TINY scenario to support tests of Tiny RCU and Tiny
     SRCU
   - optimize process_durations() operation

  rcuscale:
   - dump stacks of stalled rcu_scale_writer() instances and
     grace-period statistics when rcu_scale_writer() stalls
   - mark idle RCU-barrier callbacks to identify stuck RCU-barrier
     callbacks
   - print detailed grace-period and barrier diagnostics on
     rcu_scale_writer() hangs for Tasks-RCU variants
   - warn if async module parameter is specified for RCU implementations
     that do not have async primitives such as RCU Tasks Rude
   - make all writer tasks report upon hang
   - tolerate repeated GFP_KERNEL failure in rcu_scale_writer()
   - use special allocator for rcu_scale_writer()
   - NULL out top-level pointers to heap memory to avoid double-free
     bugs on modprobe failures
   - maintain per-task instead of per-CPU callbacks count to avoid any
     issues with migration of either tasks or callbacks
   - constify struct ref_scale_ops

  Fixes:
   - use system_unbound_wq for kfree_rcu work to avoid disturbing
     isolated CPUs

  Misc:
   - warn on unexpected rcu_state.srs_done_tail state
   - better define "atomic" for list_replace_rcu() and
     hlist_replace_rcu() routines
   - annotate struct kvfree_rcu_bulk_data with __counted_by()"

* tag 'rcu.release.v6.12' of git://git.kernel.org/pub/scm/linux/kernel/git/rcu/linux: (90 commits)
  rcu: Defer printing stall-warning backtrace when holding rcu_node lock
  rcu/nocb: Remove superfluous memory barrier after bypass enqueue
  rcu/nocb: Conditionally wake up rcuo if not already waiting on GP
  rcu/nocb: Fix RT throttling hrtimer armed from offline CPU
  rcu/nocb: Simplify (de-)offloading state machine
  context_tracking: Tag context_tracking_enabled_this_cpu() __always_inline
  context_tracking, rcu: Rename rcu_dyntick trace event into rcu_watching
  rcu: Update stray documentation references to rcu_dynticks_eqs_{enter, exit}()
  rcu: Rename rcu_momentary_dyntick_idle() into rcu_momentary_eqs()
  rcu: Rename rcu_implicit_dynticks_qs() into rcu_watching_snap_recheck()
  rcu: Rename dyntick_save_progress_counter() into rcu_watching_snap_save()
  rcu: Rename struct rcu_data .exp_dynticks_snap into .exp_watching_snap
  rcu: Rename struct rcu_data .dynticks_snap into .watching_snap
  rcu: Rename rcu_dynticks_zero_in_eqs() into rcu_watching_zero_in_eqs()
  rcu: Rename rcu_dynticks_in_eqs_since() into rcu_watching_snap_stopped_since()
  rcu: Rename rcu_dynticks_in_eqs() into rcu_watching_snap_in_eqs()
  rcu: Rename rcu_dynticks_eqs_online() into rcu_watching_online()
  context_tracking, rcu: Rename rcu_dynticks_curr_cpu_in_eqs() into rcu_is_watching_curr_cpu()
  context_tracking, rcu: Rename rcu_dynticks_task*() into rcu_task*()
  refscale: Constify struct ref_scale_ops
  ...
2024-09-18 07:52:24 +02:00
Linus Torvalds 85a77db95a Merge tag 'wq-for-6.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq
Pull workqueue updates from Tejun Heo:
 "Nothing major:

   - workqueue.panic_on_stall boot param added

   - alloc_workqueue_lockdep_map() added (used by DRM)

   - Other cleanusp and doc updates"

* tag 'wq-for-6.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
  kernel/workqueue.c: fix DEFINE_PER_CPU_SHARED_ALIGNED expansion
  workqueue: Fix another htmldocs build warning
  workqueue: fix null-ptr-deref on __alloc_workqueue() error
  workqueue: Don't call va_start / va_end twice
  workqueue: Fix htmldocs build warning
  workqueue: Add interface for user-defined workqueue lockdep map
  workqueue: Change workqueue lockdep map to pointer
  workqueue: Split alloc_workqueue into internal function and lockdep init
  Documentation: kernel-parameters: add workqueue.panic_on_stall
  workqueue: add cmdline parameter workqueue.panic_on_stall
2024-09-18 06:59:44 +02:00
Linus Torvalds d58db3f3a0 Merge tag 'docs-6.12' of git://git.lwn.net/linux
Pull documentation update from Jonathan Corbet:
 "Another relatively mundane cycle for docs:

   - The beginning of an EEVDF scheduler document

   - More Chinese translations

   - A rethrashing of our bisection documentation

  ...plus the usual array of smaller fixes, and more than the usual
  number of typo fixes"

* tag 'docs-6.12' of git://git.lwn.net/linux: (48 commits)
  Remove duplicate "and" in 'Linux NVMe docs.
  docs:filesystems: fix spelling and grammar mistakes
  docs:filesystem: fix mispelled words on autofs page
  docs:mm: fixed spelling and grammar mistakes on vmalloc kernel stack page
  Documentation: PCI: fix typo in pci.rst
  docs/zh_CN: add the translation of kbuild/gcc-plugins.rst
  docs/process: fix typos
  docs:mm: fix spelling mistakes in heterogeneous memory management page
  accel/qaic: Fix a typo
  docs/zh_CN: update the translation of security-bugs
  docs: block: Fix grammar and spelling mistakes in bfq-iosched.rst
  Documentation: Fix spelling mistakes
  Documentation/gpu: Fix typo in Documentation/gpu/komeda-kms.rst
  scripts: sphinx-pre-install: remove unnecessary double check for $cur_version
  Loongarch: KVM: Add KVM hypercalls documentation for LoongArch
  Documentation: Document the kernel flag bdev_allow_write_mounted
  docs: scheduler: completion: Update member of struct completion
  docs: kerneldoc-preamble.sty: Suppress extra spaces in CJK literal blocks
  docs: submitting-patches: Advertise b4
  docs: update dev-tools/kcsan.rst url about KTSAN
  ...
2024-09-17 16:44:08 +02:00
Linus Torvalds a430d95c5e Merge tag 'lsm-pr-20240911' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/lsm
Pull lsm updates from Paul Moore:

 - Move the LSM framework to static calls

   This transitions the vast majority of the LSM callbacks into static
   calls. Those callbacks which haven't been converted were left as-is
   due to the general ugliness of the changes required to support the
   static call conversion; we can revisit those callbacks at a future
   date.

 - Add the Integrity Policy Enforcement (IPE) LSM

   This adds a new LSM, Integrity Policy Enforcement (IPE). There is
   plenty of documentation about IPE in this patches, so I'll refrain
   from going into too much detail here, but the basic motivation behind
   IPE is to provide a mechanism such that administrators can restrict
   execution to only those binaries which come from integrity protected
   storage, e.g. a dm-verity protected filesystem. You will notice that
   IPE requires additional LSM hooks in the initramfs, dm-verity, and
   fs-verity code, with the associated patches carrying ACK/review tags
   from the associated maintainers. We couldn't find an obvious
   maintainer for the initramfs code, but the IPE patchset has been
   widely posted over several years.

   Both Deven Bowers and Fan Wu have contributed to IPE's development
   over the past several years, with Fan Wu agreeing to serve as the IPE
   maintainer moving forward. Once IPE is accepted into your tree, I'll
   start working with Fan to ensure he has the necessary accounts, keys,
   etc. so that he can start submitting IPE pull requests to you
   directly during the next merge window.

 - Move the lifecycle management of the LSM blobs to the LSM framework

   Management of the LSM blobs (the LSM state buffers attached to
   various kernel structs, typically via a void pointer named "security"
   or similar) has been mixed, some blobs were allocated/managed by
   individual LSMs, others were managed by the LSM framework itself.

   Starting with this pull we move management of all the LSM blobs,
   minus the XFRM blob, into the framework itself, improving consistency
   across LSMs, and reducing the amount of duplicated code across LSMs.
   Due to some additional work required to migrate the XFRM blob, it has
   been left as a todo item for a later date; from a practical
   standpoint this omission should have little impact as only SELinux
   provides a XFRM LSM implementation.

 - Fix problems with the LSM's handling of F_SETOWN

   The LSM hook for the fcntl(F_SETOWN) operation had a couple of
   problems: it was racy with itself, and it was disconnected from the
   associated DAC related logic in such a way that the LSM state could
   be updated in cases where the DAC state would not. We fix both of
   these problems by moving the security_file_set_fowner() hook into the
   same section of code where the DAC attributes are updated. Not only
   does this resolve the DAC/LSM synchronization issue, but as that code
   block is protected by a lock, it also resolve the race condition.

 - Fix potential problems with the security_inode_free() LSM hook

   Due to use of RCU to protect inodes and the placement of the LSM hook
   associated with freeing the inode, there is a bit of a challenge when
   it comes to managing any LSM state associated with an inode. The VFS
   folks are not open to relocating the LSM hook so we have to get
   creative when it comes to releasing an inode's LSM state.
   Traditionally we have used a single LSM callback within the hook that
   is triggered when the inode is "marked for death", but not actually
   released due to RCU.

   Unfortunately, this causes problems for LSMs which want to take an
   action when the inode's associated LSM state is actually released; so
   we add an additional LSM callback, inode_free_security_rcu(), that is
   called when the inode's LSM state is released in the RCU free
   callback.

 - Refactor two LSM hooks to better fit the LSM return value patterns

   The vast majority of the LSM hooks follow the "return 0 on success,
   negative values on failure" pattern, however, there are a small
   handful that have unique return value behaviors which has caused
   confusion in the past and makes it difficult for the BPF verifier to
   properly vet BPF LSM programs. This includes patches to
   convert two of these"special" LSM hooks to the common 0/-ERRNO pattern.

 - Various cleanups and improvements

   A handful of patches to remove redundant code, better leverage the
   IS_ERR_OR_NULL() helper, add missing "static" markings, and do some
   minor style fixups.

* tag 'lsm-pr-20240911' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/lsm: (40 commits)
  security: Update file_set_fowner documentation
  fs: Fix file_set_fowner LSM hook inconsistencies
  lsm: Use IS_ERR_OR_NULL() helper function
  lsm: remove LSM_COUNT and LSM_CONFIG_COUNT
  ipe: Remove duplicated include in ipe.c
  lsm: replace indirect LSM hook calls with static calls
  lsm: count the LSMs enabled at compile time
  kernel: Add helper macros for loop unrolling
  init/main.c: Initialize early LSMs after arch code, static keys and calls.
  MAINTAINERS: add IPE entry with Fan Wu as maintainer
  documentation: add IPE documentation
  ipe: kunit test for parser
  scripts: add boot policy generation program
  ipe: enable support for fs-verity as a trust provider
  fsverity: expose verified fsverity built-in signatures to LSMs
  lsm: add security_inode_setintegrity() hook
  ipe: add support for dm-verity as a trust provider
  dm-verity: expose root hash digest and signature data to LSMs
  block,lsm: add LSM blob and new LSM hooks for block devices
  ipe: add permissive toggle
  ...
2024-09-16 18:19:47 +02:00
Linus Torvalds e8fc317dfc Merge tag 'vfs-6.12.procfs' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs
Pull procfs updates from Christian Brauner:
 "This contains the following changes for procfs:

   - Add config options and parameters to block forcing memory writes.

     This adds a Kconfig option and boot param to allow removing the
     FOLL_FORCE flag from /proc/<pid>/mem write calls as this can be
     used in various attacks.

     The traditional forcing behavior is kept as default because it can
     break GDB and some other use cases.

     This is the simpler version that you had requested.

   - Restrict overmounting of ephemeral entities.

     It is currently possible to mount on top of various ephemeral
     entities in procfs. This specifically includes magic links. To
     recap, magic links are links of the form /proc/<pid>/fd/<nr>. They
     serve as references to a target file and during path lookup they
     cause a jump to the target path. Such magic links disappear if the
     corresponding file descriptor is closed.

     Currently it is possible to overmount such magic links. This is
     mostly interesting for an attacker that wants to somehow trick a
     process into e.g., reopening something that it didn't intend to
     reopen or to hide a malicious file descriptor.

     But also it risks leaking mounts for long-running processes. When
     overmounting a magic link like above, the mount will not be
     detached when the file descriptor is closed. Only the target
     mountpoint will disappear. Which has the consequence of making it
     impossible to unmount that mount afterwards. So the mount will
     stick around until the process exits and the /proc/<pid>/ directory
     is cleaned up during proc_flush_pid() when the dentries are pruned
     and invalidated.

     That in turn means it's possible for a program to accidentally leak
     mounts and it's also possible to make a task leak mounts without
     it's knowledge if the attacker just keeps overmounting things under
     /proc/<pid>/fd/<nr>.

     Disallow overmounting of such ephemeral entities.

   - Cleanup the readdir method naming in some procfs file operations.

   - Replace kmalloc() and strcpy() with a simple kmemdup() call"

* tag 'vfs-6.12.procfs' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs:
  proc: fold kmalloc() + strcpy() into kmemdup()
  proc: block mounting on top of /proc/<pid>/fdinfo/*
  proc: block mounting on top of /proc/<pid>/fd/*
  proc: block mounting on top of /proc/<pid>/map_files/*
  proc: add proc_splice_unmountable()
  proc: proc_readfdinfo() -> proc_fdinfo_iterate()
  proc: proc_readfd() -> proc_fd_iterate()
  proc: add config & param to block forcing mem writes
2024-09-16 09:36:59 +02:00
Joerg Roedel f0295913c4 iommu/amd: Add kernel parameters to limit V1 page-sizes
Add two new kernel command line parameters to limit the page-sizes
used for v1 page-tables:

	nohugepages     - Limits page-sizes to 4KiB

	v2_pgsizes_only - Limits page-sizes to 4Kib/2Mib/1GiB; The
	                  same as the sizes used with v2 page-tables

This is needed for multiple scenarios. When assigning devices to
SEV-SNP guests the IOMMU page-sizes need to match the sizes in the RMP
table, otherwise the device will not be able to access all shared
memory.

Also, some ATS devices do not work properly with arbitrary IO
page-sizes as supported by AMD-Vi, so limiting the sizes used by the
driver is a suitable workaround.

All-in-all, these parameters are only workarounds until the IOMMU core
and related APIs gather the ability to negotiate the page-sizes in a
better way.

Signed-off-by: Joerg Roedel <jroedel@suse.de>
Reviewed-by: Vasant Hegde <vasant.hegde@amd.com>
Link: https://lore.kernel.org/r/20240905072240.253313-1-joro@8bytes.org
2024-09-10 11:48:57 +02:00
Neeraj Upadhyay 355debb83b Merge branches 'context_tracking.15.08.24a', 'csd.lock.15.08.24a', 'nocb.09.09.24a', 'rcutorture.14.08.24a', 'rcustall.09.09.24a', 'srcu.12.08.24a', 'rcu.tasks.14.08.24a', 'rcu_scaling_tests.15.08.24a', 'fixes.12.08.24a' and 'misc.11.08.24a' into next.09.09.24a 2024-09-09 00:09:47 +05:30
Guilherme G. Piccoli e04eb52bfa Documentation: Document the kernel flag bdev_allow_write_mounted
Commit ed5cc702d3 ("block: Add config option to not allow writing to mounted
devices") added a Kconfig option along with a kernel command-line tuning to
control writes to mounted block devices, as a means to deal with fuzzers like
Syzkaller, that provokes kernel crashes by directly writing on block devices
bypassing the filesystem (so the FS has no awareness and cannot cope with that).

The patch just missed adding such kernel command-line option to the kernel
documentation, so let's fix that.

Cc: Bart Van Assche <bvanassche@acm.org>
Cc: Darrick J. Wong <djwong@kernel.org>
Cc: Jens Axboe <axboe@kernel.dk>
Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Guilherme G. Piccoli <gpiccoli@igalia.com>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Link: https://lore.kernel.org/r/20240828145045.309835-1-gpiccoli@igalia.com
2024-09-05 14:18:28 -06:00
Sean Christopherson b4886fab6f KVM: Add a module param to allow enabling virtualization when KVM is loaded
Add an on-by-default module param, enable_virt_at_load, to let userspace
force virtualization to be enabled in hardware when KVM is initialized,
i.e. just before /dev/kvm is exposed to userspace.  Enabling virtualization
during KVM initialization allows userspace to avoid the additional latency
when creating/destroying the first/last VM (or more specifically, on the
0=>1 and 1=>0 edges of creation/destruction).

Now that KVM uses the cpuhp framework to do per-CPU enabling, the latency
could be non-trivial as the cpuhup bringup/teardown is serialized across
CPUs, e.g. the latency could be problematic for use case that need to spin
up VMs quickly.

Prior to commit 10474ae894 ("KVM: Activate Virtualization On Demand"),
KVM _unconditionally_ enabled virtualization during load, i.e. there's no
fundamental reason KVM needs to dynamically toggle virtualization.  These
days, the only known argument for not enabling virtualization is to allow
KVM to be autoloaded without blocking other out-of-tree hypervisors, and
such use cases can simply change the module param, e.g. via command line.

Note, the aforementioned commit also mentioned that enabling SVM (AMD's
virtualization extensions) can result in "using invalid TLB entries".
It's not clear whether the changelog was referring to a KVM bug, a CPU
bug, or something else entirely.  Regardless, leaving virtualization off
by default is not a robust "fix", as any protection provided is lost the
instant userspace creates the first VM.

Reviewed-by: Chao Gao <chao.gao@intel.com>
Acked-by: Kai Huang <kai.huang@intel.com>
Reviewed-by: Kai Huang <kai.huang@intel.com>
Tested-by: Farrah Chen <farrah.chen@intel.com>
Signed-off-by: Sean Christopherson <seanjc@google.com>
Message-ID: <20240830043600.127750-8-seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2024-09-04 11:02:33 -04:00
Mike Rapoport (Microsoft) 101d647080 docs: move numa=fake description to kernel-parameters.txt
NUMA emulation can be now enabled on arm64 and riscv in addition to x86.

Move description of numa=fake parameters from x86 documentation of
admin-guide/kernel-parameters.txt

Link: https://lkml.kernel.org/r/20240807064110.1003856-27-rppt@kernel.org
Suggested-by: Zi Yan <ziy@nvidia.com>
Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Tested-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> [arm64 + CXL via QEMU]
Acked-by: Dan Williams <dan.j.williams@intel.com>
Acked-by: David Hildenbrand <david@redhat.com>
Cc: Alexander Gordeev <agordeev@linux.ibm.com>
Cc: Andreas Larsson <andreas@gaisler.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Davidlohr Bueso <dave@stgolabs.net>
Cc: David S. Miller <davem@davemloft.net>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Heiko Carstens <hca@linux.ibm.com>
Cc: Huacai Chen <chenhuacai@kernel.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jiaxun Yang <jiaxun.yang@flygoat.com>
Cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Rafael J. Wysocki <rafael@kernel.org>
Cc: Rob Herring (Arm) <robh@kernel.org>
Cc: Samuel Holland <samuel.holland@sifive.com>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vasily Gorbik <gor@linux.ibm.com>
Cc: Will Deacon <will@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2024-09-03 21:15:32 -07:00
Lee Jones c16fe0a335 Merge tag 'v6.11-rc2' into android-mainline
Linux 6.11-rc2

Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I7804b8c76ae8da613bc3a2e1a876b3092655d5b7
2024-09-02 15:32:27 +00:00
Ryan Roberts dd4d30d1cd mm: override mTHP "enabled" defaults at kernel cmdline
Add thp_anon= cmdline parameter to allow specifying the default enablement
of each supported anon THP size.  The parameter accepts the following
format and can be provided multiple times to configure each size:

thp_anon=<size>,<size>[KMG]:<value>;<size>-<size>[KMG]:<value>

An example:

thp_anon=16K-64K:always;128K,512K:inherit;256K:madvise;1M-2M:never

See Documentation/admin-guide/mm/transhuge.rst for more details.

Configuring the defaults at boot time is useful to allow early user space
to take advantage of mTHP before its been configured through sysfs.

[v-songbaohua@oppo.com: use get_oder() and check size is is_power_of_2]
  Link: https://lkml.kernel.org/r/20240814224635.43272-1-21cnbao@gmail.com
[ryan.roberts@arm.com: some minor cleanup according to David's comments]
  Link: https://lkml.kernel.org/r/20240820105244.62703-1-21cnbao@gmail.com
Link: https://lkml.kernel.org/r/20240814020247.67297-1-21cnbao@gmail.com
Signed-off-by: Ryan Roberts <ryan.roberts@arm.com>
Co-developed-by: Barry Song <v-songbaohua@oppo.com>
Signed-off-by: Barry Song <v-songbaohua@oppo.com>
Reviewed-by: Baolin Wang <baolin.wang@linux.alibaba.com>
Tested-by: Baolin Wang <baolin.wang@linux.alibaba.com>
Acked-by: David Hildenbrand <david@redhat.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Lance Yang <ioworker0@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2024-09-01 20:26:18 -07:00