public inbox for stable@vger.kernel.org
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	patches@lists.linux.dev, Ryan Roberts <ryan.roberts@arm.com>,
	Kees Cook <kees@kernel.org>, Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.12 006/143] binfmt_elf: Move brk for static PIE even if ASLR disabled
Date: Tue, 20 May 2025 15:49:21 +0200	[thread overview]
Message-ID: <20250520125810.295222635@linuxfoundation.org> (raw)
In-Reply-To: <20250520125810.036375422@linuxfoundation.org>

6.12-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Kees Cook <kees@kernel.org>

[ Upstream commit 11854fe263eb1b9a8efa33b0c087add7719ea9b4 ]

In commit bbdc6076d2e5 ("binfmt_elf: move brk out of mmap when doing
direct loader exec"), the brk was moved out of the mmap region when
loading static PIE binaries (ET_DYN without INTERP). The common case
for these binaries was testing new ELF loaders, so the brk needed to
be away from mmap to avoid colliding with stack, future mmaps (of the
loader-loaded binary), etc. But this was only done when ASLR was enabled,
in an attempt to minimize changes to memory layouts.

After adding support to respect alignment requirements for static PIE
binaries in commit 3545deff0ec7 ("binfmt_elf: Honor PT_LOAD alignment
for static PIE"), it became possible to have a large gap after the
final PT_LOAD segment and the top of the mmap region. This means that
future mmap allocations might go after the last PT_LOAD segment (where
brk might be if ASLR was disabled) instead of before them (where they
traditionally ended up).

On arm64, running with ASLR disabled, Ubuntu 22.04's "ldconfig" binary,
a static PIE, has alignment requirements that leaves a gap large enough
after the last PT_LOAD segment to fit the vdso and vvar, but still leave
enough space for the brk (which immediately follows the last PT_LOAD
segment) to be allocated by the binary.

fffff7f20000-fffff7fde000 r-xp 00000000 fe:02 8110426 /sbin/ldconfig.real
fffff7fee000-fffff7ff5000 rw-p 000be000 fe:02 8110426 /sbin/ldconfig.real
fffff7ff5000-fffff7ffa000 rw-p 00000000 00:00 0
***[brk will go here at fffff7ffa000]***
fffff7ffc000-fffff7ffe000 r--p 00000000 00:00 0       [vvar]
fffff7ffe000-fffff8000000 r-xp 00000000 00:00 0       [vdso]
fffffffdf000-1000000000000 rw-p 00000000 00:00 0      [stack]

After commit 0b3bc3354eb9 ("arm64: vdso: Switch to generic storage
implementation"), the arm64 vvar grew slightly, and suddenly the brk
collided with the allocation.

fffff7f20000-fffff7fde000 r-xp 00000000 fe:02 8110426 /sbin/ldconfig.real
fffff7fee000-fffff7ff5000 rw-p 000be000 fe:02 8110426 /sbin/ldconfig.real
fffff7ff5000-fffff7ffa000 rw-p 00000000 00:00 0
***[oops, no room any more, vvar is at fffff7ffa000!]***
fffff7ffa000-fffff7ffe000 r--p 00000000 00:00 0       [vvar]
fffff7ffe000-fffff8000000 r-xp 00000000 00:00 0       [vdso]
fffffffdf000-1000000000000 rw-p 00000000 00:00 0      [stack]

The solution is to unconditionally move the brk out of the mmap region
for static PIE binaries. Whether ASLR is enabled or not does not change if
there may be future mmap allocation collisions with a growing brk region.

Update memory layout comments (with kernel-doc headings), consolidate
the setting of mm->brk to later (it isn't needed early), move static PIE
brk out of mmap unconditionally, and make sure brk(2) knows to base brk
position off of mm->start_brk not mm->end_data no matter what the cause of
moving it is (via current->brk_randomized).

For the CONFIG_COMPAT_BRK case, though, leave the logic unchanged, as we
can never safely move the brk. These systems, however, are not using
specially aligned static PIE binaries.

Reported-by: Ryan Roberts <ryan.roberts@arm.com>
Closes: https://lore.kernel.org/lkml/f93db308-4a0e-4806-9faf-98f890f5a5e6@arm.com/
Fixes: bbdc6076d2e5 ("binfmt_elf: move brk out of mmap when doing direct loader exec")
Link: https://lore.kernel.org/r/20250425224502.work.520-kees@kernel.org
Reviewed-by: Ryan Roberts <ryan.roberts@arm.com>
Tested-by: Ryan Roberts <ryan.roberts@arm.com>
Signed-off-by: Kees Cook <kees@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 fs/binfmt_elf.c | 71 ++++++++++++++++++++++++++++++++-----------------
 1 file changed, 47 insertions(+), 24 deletions(-)

diff --git a/fs/binfmt_elf.c b/fs/binfmt_elf.c
index 0a216a078c315..47335a0f4a618 100644
--- a/fs/binfmt_elf.c
+++ b/fs/binfmt_elf.c
@@ -825,6 +825,7 @@ static int load_elf_binary(struct linux_binprm *bprm)
 	struct elf_phdr *elf_ppnt, *elf_phdata, *interp_elf_phdata = NULL;
 	struct elf_phdr *elf_property_phdata = NULL;
 	unsigned long elf_brk;
+	bool brk_moved = false;
 	int retval, i;
 	unsigned long elf_entry;
 	unsigned long e_entry;
@@ -1092,15 +1093,19 @@ static int load_elf_binary(struct linux_binprm *bprm)
 			/* Calculate any requested alignment. */
 			alignment = maximum_alignment(elf_phdata, elf_ex->e_phnum);
 
-			/*
-			 * There are effectively two types of ET_DYN
-			 * binaries: programs (i.e. PIE: ET_DYN with PT_INTERP)
-			 * and loaders (ET_DYN without PT_INTERP, since they
-			 * _are_ the ELF interpreter). The loaders must
-			 * be loaded away from programs since the program
-			 * may otherwise collide with the loader (especially
-			 * for ET_EXEC which does not have a randomized
-			 * position). For example to handle invocations of
+			/**
+			 * DOC: PIE handling
+			 *
+			 * There are effectively two types of ET_DYN ELF
+			 * binaries: programs (i.e. PIE: ET_DYN with
+			 * PT_INTERP) and loaders (i.e. static PIE: ET_DYN
+			 * without PT_INTERP, usually the ELF interpreter
+			 * itself). Loaders must be loaded away from programs
+			 * since the program may otherwise collide with the
+			 * loader (especially for ET_EXEC which does not have
+			 * a randomized position).
+			 *
+			 * For example, to handle invocations of
 			 * "./ld.so someprog" to test out a new version of
 			 * the loader, the subsequent program that the
 			 * loader loads must avoid the loader itself, so
@@ -1113,6 +1118,9 @@ static int load_elf_binary(struct linux_binprm *bprm)
 			 * ELF_ET_DYN_BASE and loaders are loaded into the
 			 * independently randomized mmap region (0 load_bias
 			 * without MAP_FIXED nor MAP_FIXED_NOREPLACE).
+			 *
+			 * See below for "brk" handling details, which is
+			 * also affected by program vs loader and ASLR.
 			 */
 			if (interpreter) {
 				/* On ET_DYN with PT_INTERP, we do the ASLR. */
@@ -1229,8 +1237,6 @@ static int load_elf_binary(struct linux_binprm *bprm)
 	start_data += load_bias;
 	end_data += load_bias;
 
-	current->mm->start_brk = current->mm->brk = ELF_PAGEALIGN(elf_brk);
-
 	if (interpreter) {
 		elf_entry = load_elf_interp(interp_elf_ex,
 					    interpreter,
@@ -1286,27 +1292,44 @@ static int load_elf_binary(struct linux_binprm *bprm)
 	mm->end_data = end_data;
 	mm->start_stack = bprm->p;
 
-	if ((current->flags & PF_RANDOMIZE) && (snapshot_randomize_va_space > 1)) {
+	/**
+	 * DOC: "brk" handling
+	 *
+	 * For architectures with ELF randomization, when executing a
+	 * loader directly (i.e. static PIE: ET_DYN without PT_INTERP),
+	 * move the brk area out of the mmap region and into the unused
+	 * ELF_ET_DYN_BASE region. Since "brk" grows up it may collide
+	 * early with the stack growing down or other regions being put
+	 * into the mmap region by the kernel (e.g. vdso).
+	 *
+	 * In the CONFIG_COMPAT_BRK case, though, everything is turned
+	 * off because we're not allowed to move the brk at all.
+	 */
+	if (!IS_ENABLED(CONFIG_COMPAT_BRK) &&
+	    IS_ENABLED(CONFIG_ARCH_HAS_ELF_RANDOMIZE) &&
+	    elf_ex->e_type == ET_DYN && !interpreter) {
+		elf_brk = ELF_ET_DYN_BASE;
+		/* This counts as moving the brk, so let brk(2) know. */
+		brk_moved = true;
+	}
+	mm->start_brk = mm->brk = ELF_PAGEALIGN(elf_brk);
+
+	if ((current->flags & PF_RANDOMIZE) && snapshot_randomize_va_space > 1) {
 		/*
-		 * For architectures with ELF randomization, when executing
-		 * a loader directly (i.e. no interpreter listed in ELF
-		 * headers), move the brk area out of the mmap region
-		 * (since it grows up, and may collide early with the stack
-		 * growing down), and into the unused ELF_ET_DYN_BASE region.
+		 * If we didn't move the brk to ELF_ET_DYN_BASE (above),
+		 * leave a gap between .bss and brk.
 		 */
-		if (IS_ENABLED(CONFIG_ARCH_HAS_ELF_RANDOMIZE) &&
-		    elf_ex->e_type == ET_DYN && !interpreter) {
-			mm->brk = mm->start_brk = ELF_ET_DYN_BASE;
-		} else {
-			/* Otherwise leave a gap between .bss and brk. */
+		if (!brk_moved)
 			mm->brk = mm->start_brk = mm->brk + PAGE_SIZE;
-		}
 
 		mm->brk = mm->start_brk = arch_randomize_brk(mm);
+		brk_moved = true;
+	}
+
 #ifdef compat_brk_randomized
+	if (brk_moved)
 		current->brk_randomized = 1;
 #endif
-	}
 
 	if (current->personality & MMAP_PAGE_ZERO) {
 		/* Why this, you ask???  Well SVr4 maps page 0 as read-only,
-- 
2.39.5




  parent reply	other threads:[~2025-05-20 14:07 UTC|newest]

Thread overview: 156+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-05-20 13:49 [PATCH 6.12 000/143] 6.12.30-rc1 review Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 001/143] arm64: dts: rockchip: Assign RT5616 MCLK rate on rk3588-friendlyelec-cm3588 Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 002/143] fs/xattr.c: fix simple_xattr_list to always include security.* xattrs Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 003/143] drivers/platform/x86/amd: pmf: Check for invalid sideloaded Smart PC Policies Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 004/143] drivers/platform/x86/amd: pmf: Check for invalid " Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 005/143] riscv: dts: sophgo: fix DMA data-width configuration for CV18xx Greg Kroah-Hartman
2025-05-20 13:49 ` Greg Kroah-Hartman [this message]
2025-05-20 13:49 ` [PATCH 6.12 007/143] platform/x86/amd/pmc: Declare quirk_spurious_8042 for MECHREVO Wujie 14XA (GX4HRXL) Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 008/143] platform/x86: asus-wmi: Fix wlan_ctrl_by_user detection Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 009/143] arm64: dts: imx8mp-var-som: Fix LDO5 shutdown causing SD card timeout Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 010/143] cgroup/cpuset: Extend kthread_is_per_cpu() check to all PF_NO_SETAFFINITY tasks Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 011/143] tracing: probes: Fix a possible race in trace_probe_log APIs Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 012/143] tpm: tis: Double the timeout B to 4s Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 013/143] uio_hv_generic: Fix sysfs creation path for ring buffer Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 014/143] KVM: Add member to struct kvm_gfn_range to indicate private/shared Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 015/143] KVM: x86/mmu: Prevent installing hugepages when mem attributes are changing Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 016/143] iio: adc: ad7266: Fix potential timestamp alignment issue Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 017/143] iio: chemical: pms7003: use aligned_s64 for timestamp Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 018/143] iio: pressure: mprls0025pa: " Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 019/143] drm/amd: Add Suspend/Hibernate notification callback support Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 020/143] Revert "drm/amd: Stop evicting resources on APUs in suspend" Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 021/143] xhci: dbc: Improve performance by removing delay in transfer event polling Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 022/143] xhci: dbc: Avoid event polling busyloop if pending rx transfers are inactive Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 023/143] iio: adc: ad7768-1: Fix insufficient alignment of timestamp Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 024/143] iio: chemical: sps30: use aligned_s64 for timestamp Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 025/143] virtio_ring: add a func argument recycle_done to virtqueue_reset() Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 026/143] virtio_net: ensure netdev_tx_reset_queue is called on bind xsk for tx Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 027/143] RDMA/rxe: Fix slab-use-after-free Read in rxe_queue_cleanup bug Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 028/143] HID: thrustmaster: fix memory leak in thrustmaster_interrupts() Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 029/143] HID: uclogic: Add NULL check in uclogic_input_configured() Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 030/143] nfs: handle failure of nfs_get_lock_context in unlock path Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 031/143] spi: loopback-test: Do not split 1024-byte hexdumps Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 032/143] RDMA/core: Fix "KASAN: slab-use-after-free Read in ib_register_device" problem Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 033/143] Bluetooth: MGMT: Fix MGMT_OP_ADD_DEVICE invalid device flags Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 034/143] net_sched: Flush gso_skb list too during ->change() Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 035/143] tools/net/ynl: ethtool: fix crash when Hardware Clock info is missing Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 036/143] mctp: no longer rely on net->dev_index_head[] Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 037/143] net: mctp: Dont access ifa_index when missing Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 038/143] selftests: ncdevmem: Redirect all non-payload output to stderr Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 039/143] selftests: ncdevmem: Separate out dmabuf provider Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 040/143] selftests: ncdevmem: Unify error handling Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 041/143] selftests: ncdevmem: Make client_ip optional Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 042/143] selftests: ncdevmem: Switch to AF_INET6 Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 043/143] tests/ncdevmem: Fix double-free of queue array Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.12 044/143] net: mctp: Ensure keys maintain only one ref to corresponding dev Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 045/143] ALSA: seq: Fix delivery of UMP events to group ports Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 046/143] ALSA: ump: Fix a typo of snd_ump_stream_msg_device_info Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 047/143] net: cadence: macb: Fix a possible deadlock in macb_halt_tx Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 048/143] net: dsa: sja1105: discard incoming frames in BR_STATE_LISTENING Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 049/143] nvme-pci: make nvme_pci_npages_prp() __always_inline Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 050/143] nvme-pci: acquire cq_poll_lock in nvme_poll_irqdisable Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 051/143] ALSA: sh: SND_AICA should depend on SH_DMA_API Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 052/143] net: dsa: b53: prevent standalone from trying to forward to other ports Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 053/143] vsock/test: Fix occasional failure in SIOCOUTQ tests Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 054/143] net/mlx5e: Disable MACsec offload for uplink representor profile Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 055/143] qlcnic: fix memory leak in qlcnic_sriov_channel_cfg_cmd() Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 056/143] regulator: max20086: fix invalid memory access Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 057/143] drm/xe: Save CTX_TIMESTAMP mmio value instead of LRC value Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 058/143] netlink: specs: tc: fix a couple of attribute names Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 059/143] netlink: specs: tc: all actions are indexed arrays Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 060/143] octeontx2-pf: macsec: Fix incorrect max transmit size in TX secy Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 061/143] net: ethernet: mtk_eth_soc: fix typo for declaration MT7988 ESW capability Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 062/143] octeontx2-af: Fix CGX Receive counters Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 063/143] octeontx2-pf: Do not reallocate all ntuple filters Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 064/143] wifi: mac80211: Set n_channels after allocating struct cfg80211_scan_request Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 065/143] mlxsw: spectrum_router: Fix use-after-free when deleting GRE net devices Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 066/143] net/tls: fix kernel panic when alloc_page failed Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 067/143] tsnep: fix timestamping with a stacked DSA driver Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 068/143] NFSv4/pnfs: Reset the layout state after a layoutreturn Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 069/143] dmaengine: Revert "dmaengine: dmatest: Fix dmatest waiting less when interrupted" Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 070/143] sched_ext: bpf_iter_scx_dsq_new() should always initialize iterator Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 071/143] udf: Make sure i_lenExtents is uptodate on inode eviction Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 072/143] HID: bpf: abort dispatch if device destroyed Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 073/143] LoongArch: Prevent cond_resched() occurring within kernel-fpu Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 074/143] LoongArch: Move __arch_cpu_idle() to .cpuidle.text section Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 075/143] LoongArch: Save and restore CSR.CNTC for hibernation Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 076/143] LoongArch: Fix MAX_REG_OFFSET calculation Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 077/143] LoongArch: uprobes: Remove user_{en,dis}able_single_step() Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 078/143] LoongArch: uprobes: Remove redundant code about resume_era Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 079/143] btrfs: fix discard worker infinite loop after disabling discard Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 080/143] btrfs: fix folio leak in submit_one_async_extent() Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 081/143] btrfs: add back warning for mount option commit values exceeding 300 Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 082/143] Revert "drm/amd/display: Hardware cursor changes color when switched to software cursor" Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 083/143] drm/amdgpu: read back register after written for VCN v4.0.5 Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 084/143] drm/amdgpu: fix incorrect MALL size for GFX1151 Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 085/143] drm/amdgpu: csa unmap use uninterruptible lock Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 086/143] drm/amd/display: Correct the reply value when AUX write incomplete Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 087/143] drm/amd/display: Avoid flooding unnecessary info messages Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 088/143] MAINTAINERS: Update Alexey Makhalovs email address Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 089/143] gpio: pca953x: fix IRQ storm on system wake up Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 090/143] ACPI: PPTT: Fix processor subtable walk Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 091/143] ALSA: es1968: Add error handling for snd_pcm_hw_constraint_pow2() Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 092/143] ALSA: usb-audio: Add sample rate quirk for Audioengine D1 Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 093/143] ALSA: usb-audio: Add sample rate quirk for Microdia JP001 USB Camera Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 094/143] dma-buf: insert memory barrier before updating num_fences Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 095/143] hv_netvsc: Use vmbus_sendpacket_mpb_desc() to send VMBus messages Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 096/143] hv_netvsc: Preserve contiguous PFN grouping in the page buffer array Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 097/143] hv_netvsc: Remove rmsg_pgcnt Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 098/143] arm64: dts: amlogic: dreambox: fix missing clkc_audio node Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 099/143] arm64: dts: rockchip: Remove overdrive-mode OPPs from RK3588J SoC dtsi Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 100/143] Drivers: hv: Allow vmbus_sendpacket_mpb_desc() to create multiple ranges Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 101/143] Drivers: hv: vmbus: Remove vmbus_sendpacket_pagebuffer() Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 102/143] kbuild: Disable -Wdefault-const-init-unsafe Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 103/143] ftrace: Fix preemption accounting for stacktrace trigger command Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.12 104/143] ftrace: Fix preemption accounting for stacktrace filter command Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 105/143] tracing: samples: Initialize trace_array_printk() with the correct function Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 106/143] phy: tegra: xusb: Use a bitmask for UTMI pad power state tracking Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 107/143] phy: Fix error handling in tegra_xusb_port_init Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 108/143] phy: renesas: rcar-gen3-usb2: Fix role detection on unbind/bind Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 109/143] phy: renesas: rcar-gen3-usb2: Set timing registers only once Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 110/143] scsi: sd_zbc: block: Respect bio vector limits for REPORT ZONES buffer Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 111/143] smb: client: fix memory leak during error handling for POSIX mkdir Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 112/143] spi: tegra114: Use value to check for invalid delays Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 113/143] tpm: Mask TPM RC in tpm2_start_auth_session() Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 114/143] wifi: mt76: disable napi on driver removal Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 115/143] ring-buffer: Fix persistent buffer when commit page is the reader page Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 116/143] net: qede: Initialize qede_ll_ops with designated initializer Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 117/143] mm: userfaultfd: correct dirty flags set for both present and swap pte Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 118/143] dmaengine: ti: k3-udma: Add missing locking Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 119/143] dmaengine: ti: k3-udma: Use cap_mask directly from dma_device structure instead of a local copy Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 120/143] dmaengine: idxd: fix memory leak in error handling path of idxd_setup_wqs Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 121/143] dmaengine: idxd: fix memory leak in error handling path of idxd_setup_engines Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 122/143] dmaengine: idxd: fix memory leak in error handling path of idxd_setup_groups Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 123/143] dmaengine: idxd: Add missing cleanup for early error out in idxd_setup_internals Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 124/143] dmaengine: idxd: Add missing cleanups in cleanup internals Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 125/143] dmaengine: idxd: Add missing idxd cleanup to fix memory leak in remove call Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 126/143] dmaengine: idxd: fix memory leak in error handling path of idxd_alloc Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 127/143] dmaengine: idxd: fix memory leak in error handling path of idxd_pci_probe Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 128/143] dmaengine: idxd: Refactor remove call with idxd_cleanup() helper Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 129/143] CIFS: New mount option for cifs.upcall namespace resolution Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 130/143] drm/xe/gsc: do not flush the GSC worker from the reset path Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 131/143] mm/page_alloc: fix race condition in unaccepted memory handling Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 132/143] accel/ivpu: Rename ivpu_log_level to fw_log_level Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 133/143] accel/ivpu: Reset fw log on cold boot Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 134/143] accel/ivpu: Refactor functions in ivpu_fw_log.c Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 135/143] accel/ivpu: Fix fw log printing Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 136/143] iio: light: opt3001: fix deadlock due to concurrent flag access Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 137/143] Bluetooth: btnxpuart: Fix kernel panic during FW release Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 138/143] drm/fbdev-dma: Support struct drm_driver.fbdev_probe Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 139/143] drm/panel-mipi-dbi: Run DRM default client setup Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 140/143] drm/tiny: panel-mipi-dbi: Use drm_client_setup_with_fourcc() Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 141/143] usb: typec: ucsi: displayport: Fix deadlock Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 142/143] phy: tegra: xusb: remove a stray unlock Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.12 143/143] drm/amdgpu: fix pm notifier handling Greg Kroah-Hartman
2025-05-20 18:48 ` [PATCH 6.12 000/143] 6.12.30-rc1 review Florian Fainelli
2025-05-20 19:25 ` Miguel Ojeda
2025-05-20 21:14 ` Shuah Khan
2025-05-21  1:33 ` Ron Economos
2025-05-21  8:31 ` Jon Hunter
2025-05-21 10:49 ` Naresh Kamboju
2025-05-21 13:35 ` Brett Mastbergen
2025-05-21 15:38 ` Pavel Machek
2025-05-21 16:48 ` Peter Schneider
2025-05-21 17:37 ` Markus Reichelt
2025-05-21 18:17 ` Mark Brown
2025-05-22  5:03 ` Hardik Garg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250520125810.295222635@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=kees@kernel.org \
    --cc=patches@lists.linux.dev \
    --cc=ryan.roberts@arm.com \
    --cc=sashal@kernel.org \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox