From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
patches@lists.linux.dev,
"Peter Zijlstra (Intel)" <peterz@infradead.org>,
Ravi Bangoria <ravi.bangoria@amd.com>,
Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.12 215/220] perf: Unify perf_event_free_task() / perf_event_exit_task_context()
Date: Thu, 20 Aug 2026 16:56:45 +0200 [thread overview]
Message-ID: <20260820145229.998399777@linuxfoundation.org> (raw)
In-Reply-To: <20260820145223.480031205@linuxfoundation.org>
6.12-stable review patch. If anyone has any objections, please let me know.
------------------
From: Peter Zijlstra <peterz@infradead.org>
commit 90661365021a6d0d7f3a2c5046ebe33e4df53b92 upstream.
Both perf_event_free_task() and perf_event_exit_task_context() are
very similar, except perf_event_exit_task_context() is a little more
generic / makes less assumptions.
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Ravi Bangoria <ravi.bangoria@amd.com>
Link: https://lkml.kernel.org/r/20250307193723.274039710@infradead.org
Stable-dep-of: 42c5ca1f0a28 ("perf/core: Fix group leader use-after-free after sibling detach")
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
kernel/events/core.c | 93 +++++++++++++--------------------------------------
1 file changed, 25 insertions(+), 68 deletions(-)
--- a/kernel/events/core.c
+++ b/kernel/events/core.c
@@ -13522,13 +13522,11 @@ perf_event_exit_event(struct perf_event
perf_event_wakeup(event);
}
-static void perf_event_exit_task_context(struct task_struct *child)
+static void perf_event_exit_task_context(struct task_struct *child, bool exit)
{
struct perf_event_context *child_ctx, *clone_ctx = NULL;
struct perf_event *child_event, *next;
- WARN_ON_ONCE(child != current);
-
child_ctx = perf_pin_task_context(child);
if (!child_ctx)
return;
@@ -13551,7 +13549,8 @@ static void perf_event_exit_task_context
* in.
*/
raw_spin_lock_irq(&child_ctx->lock);
- task_ctx_sched_out(child_ctx, NULL, EVENT_ALL);
+ if (exit)
+ task_ctx_sched_out(child_ctx, NULL, EVENT_ALL);
/*
* Now that the context is inactive, destroy the task <-> ctx relation
@@ -13560,7 +13559,7 @@ static void perf_event_exit_task_context
RCU_INIT_POINTER(child->perf_event_ctxp, NULL);
put_ctx(child_ctx); /* cannot be last */
WRITE_ONCE(child_ctx->task, TASK_TOMBSTONE);
- put_task_struct(current); /* cannot be last */
+ put_task_struct(child); /* cannot be last */
clone_ctx = unclone_ctx(child_ctx);
raw_spin_unlock_irq(&child_ctx->lock);
@@ -13573,13 +13572,31 @@ static void perf_event_exit_task_context
* won't get any samples after PERF_RECORD_EXIT. We can however still
* get a few PERF_RECORD_READ events.
*/
- perf_event_task(child, child_ctx, 0);
+ if (exit)
+ perf_event_task(child, child_ctx, 0);
list_for_each_entry_safe(child_event, next, &child_ctx->event_list, event_entry)
perf_event_exit_event(child_event, child_ctx, 0);
mutex_unlock(&child_ctx->mutex);
+ if (!exit) {
+ /*
+ * perf_event_release_kernel() could still have a reference on
+ * this context. In that case we must wait for these events to
+ * have been freed (in particular all their references to this
+ * task must've been dropped).
+ *
+ * Without this copy_process() will unconditionally free this
+ * task (irrespective of its reference count) and
+ * _free_event()'s put_task_struct(event->hw.target) will be a
+ * use-after-free.
+ *
+ * Wait for all events to drop their context reference.
+ */
+ wait_var_event(&child_ctx->refcount,
+ refcount_read(&child_ctx->refcount) == 1);
+ }
put_ctx(child_ctx);
}
@@ -13607,7 +13624,7 @@ void perf_event_exit_task(struct task_st
}
mutex_unlock(&child->perf_event_mutex);
- perf_event_exit_task_context(child);
+ perf_event_exit_task_context(child, true);
/*
* The perf_event_exit_task_context calls perf_event_task
@@ -13618,25 +13635,6 @@ void perf_event_exit_task(struct task_st
perf_event_task(child, NULL, 0);
}
-static void perf_free_event(struct perf_event *event,
- struct perf_event_context *ctx)
-{
- struct perf_event *parent = event->parent;
-
- if (WARN_ON_ONCE(!parent))
- return;
-
- mutex_lock(&parent->child_mutex);
- list_del_init(&event->child_list);
- mutex_unlock(&parent->child_mutex);
-
- raw_spin_lock_irq(&ctx->lock);
- perf_group_detach(event);
- list_del_event(event, ctx);
- raw_spin_unlock_irq(&ctx->lock);
- put_event(event);
-}
-
/*
* Free a context as created by inheritance by perf_event_init_task() below,
* used by fork() in case of fail.
@@ -13646,48 +13644,7 @@ static void perf_free_event(struct perf_
*/
void perf_event_free_task(struct task_struct *task)
{
- struct perf_event_context *ctx;
- struct perf_event *event, *tmp;
-
- ctx = rcu_access_pointer(task->perf_event_ctxp);
- if (!ctx)
- return;
-
- mutex_lock(&ctx->mutex);
- raw_spin_lock_irq(&ctx->lock);
- /*
- * Destroy the task <-> ctx relation and mark the context dead.
- *
- * This is important because even though the task hasn't been
- * exposed yet the context has been (through child_list).
- */
- RCU_INIT_POINTER(task->perf_event_ctxp, NULL);
- WRITE_ONCE(ctx->task, TASK_TOMBSTONE);
- put_task_struct(task); /* cannot be last */
- raw_spin_unlock_irq(&ctx->lock);
-
-
- list_for_each_entry_safe(event, tmp, &ctx->event_list, event_entry)
- perf_free_event(event, ctx);
-
- mutex_unlock(&ctx->mutex);
-
- /*
- * perf_event_release_kernel() could've stolen some of our
- * child events and still have them on its free_list. In that
- * case we must wait for these events to have been freed (in
- * particular all their references to this task must've been
- * dropped).
- *
- * Without this copy_process() will unconditionally free this
- * task (irrespective of its reference count) and
- * _free_event()'s put_task_struct(event->hw.target) will be a
- * use-after-free.
- *
- * Wait for all events to drop their context reference.
- */
- wait_var_event(&ctx->refcount, refcount_read(&ctx->refcount) == 1);
- put_ctx(ctx); /* must be last */
+ perf_event_exit_task_context(task, false);
}
void perf_event_delayed_put(struct task_struct *task)
next prev parent reply other threads:[~2026-08-20 17:34 UTC|newest]
Thread overview: 224+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-20 14:53 [PATCH 6.12 000/220] 6.12.105-rc1 review Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 001/220] block: stop the timeout timer when releasing a never added disk Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 002/220] bpf: Fix linked reg delta tracking when src_reg == dst_reg Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 003/220] bpf: Clear delta when clearing reg id for non-{add,sub} ops Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 004/220] selftests/bpf: Add tests for delta tracking when src_reg == dst_reg Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 005/220] selftests/bpf: Add tests for stale delta leaking through id reassignment Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 006/220] f2fs: fix UAF issue in f2fs_merge_page_bio() Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 007/220] mtd: ubi: skip programming unused bits in ubi headers Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 008/220] ubi: fastmap: fix ubi->fm memory leak Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 009/220] mm/damon/ops-common: putback folios on invalid migrate nid Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 010/220] mm/damon: adjust isolated pages stat for DAMOS_MIGRATE_{HOT,COLD} Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 011/220] igc: fix netdev not re-attached after resume if interface is down Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 012/220] ipvs: separate destination availability state Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 013/220] net: mana: Fix EQ leak in mana_remove on NULL port Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 014/220] crypto: ccp: Add external API interface for PSP module initialization Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 015/220] KVM: SVM: Ensure PSP module is initialized if KVM module is built-in Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 016/220] selinux: require every boolean value to be defined Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 017/220] selinux: reject a class permission count below its inherited common Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 018/220] selinux: do not cancel a policy conversion that never started Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 019/220] selinux: reject an unclaimed class value in security_get_classes() Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 020/220] selftests: mptcp: join: mark tests with data corruption as failed Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 021/220] mptcp: avoid combining some incoming suboptions Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 022/220] mptcp: options: reset DSS fields in case of unexpected size Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 023/220] mptcp: fastopen: only mark MPTFO subflows with SYN data Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 024/220] s390/qeth: validate user buffer length in SNMP and ARP query ioctls Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 025/220] ASoC: SOF: sof-audio: Fix error path in sof_widget_setup_unlocked() Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 026/220] ASoC: cs4265: sort the register default table Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 027/220] ASoC: cs35l45: " Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 028/220] ASoC: cs35l41: " Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 029/220] ASoC: codecs: lpass-wsa-macro: Fix enum kcontrol accesses Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 030/220] fbdev: core: Fix pointer desynchronization in fb_io_read() Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 031/220] drm/panthor: skip zero-sized firmware sections Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 032/220] drm/amdgpu: reject oversized IBs with per-ring packet limits Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 033/220] drm/amdgpu: read TRUNCATE_COORD_MODE on gfx12 Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 034/220] drm/amdgpu: fix aperture iounmap skipped on device removal Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 035/220] ASoC: SOF: topology: Use acpi mach from the machine driver Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 036/220] Input: xpad - add support for ZENAIM LEVERLESS Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 037/220] Input: cs40l50-vibra - validate custom data from user space Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 038/220] powerpc/pseries: pci - logic bug Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 039/220] Input: synaptics-rmi4 - fix F55 transmitter electrode count typo Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 040/220] Input: focaltech - fix array out-of-bounds in focaltech_process_rel_packet Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 041/220] Input: psxpad-spi - set driver data before use Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 042/220] Input: atkbd - skip deactivate for Xiaomi Book Pro 14s internal keyboard Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 043/220] Input: iforce - validate input packet lengths Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 044/220] powerpc/pseries: lparcfg - fix kbuf[] underflow Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 045/220] Input: synaptics-rmi4 - zero report size on F54 work error Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 046/220] Input: synaptics-rmi4 - bound the F54 report size to the allocated buffer Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 047/220] Input: synaptics-rmi4 - block s_input when F54 queue is busy Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 048/220] Input: synaptics-rmi4 - propagate F54 worker errors to V4L2 queue Greg Kroah-Hartman
2026-08-20 14:53 ` [PATCH 6.12 049/220] Input: hynitron_cstxxx - validate touch count and finger IDs Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 050/220] crypto: starfive - use scatterlist length before DMA mapping Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 051/220] crypto: qce - fix error path in devm_qce_register_algs Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 052/220] gpio: sloppy-logic-analyzer: fix use-after-free via debugfs trigger on unbind Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 053/220] pmdomain: arm: Fix -EINVAL from scmi_pd_set_perf_state() on state 0 Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 054/220] libceph: fix multiple unsafe decodes in decode_locker() Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 055/220] ftrace: Protect direct_functions in ftrace_find_rec_direct Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 056/220] ftrace: Fix off-by-one fentry site disable in ftrace_free_mem() Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 057/220] openrisc: signal: do not restore privileged SR bits on sigreturn Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 058/220] Input: sur40 - fix input device registration ordering Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 059/220] Input: sur40 - fix V4L error path cleanup Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 060/220] libceph: Avoid using invalid osd indices from primary_temp Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 061/220] ceph: fix MDS random selection readiness predicate Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 062/220] libceph: tolerate addrvecs with multiple entries of the same type Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 063/220] mmc: omap_hsmmc: fix busy_timeout overflow in ns conversion on 32-bit Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 064/220] mmc: sdhci: unmap the bounce buffer before device release Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 065/220] mmc: sdhci: make tuning_err a signed int Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 066/220] mmc: atmel-mci: Fix use-after-free in atmci_remove due to race condition Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 067/220] drm/connector/hdmi: Fix out of bounds memory read Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 068/220] drm/xe: Order ring writes before ring tail updates Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 069/220] drm/radeon: fix autosuspend cleanup during teardown Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 070/220] s390/vfio_ccw: Free all memory if cp_init() fails Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 071/220] s390/vfio_ccw: Limit the number of channel program segments Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 072/220] s390/vfio_ccw: Cancel existing workqueues Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 073/220] s390/vfio_ccw: Ensure index for read/write regions are within range Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 074/220] s390/vfio_ccw: Ensure first IDAW remains constant Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 075/220] s390/vfio_ccw: Fix out of bounds check on CCW array Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 076/220] s390/vfio_ccw: Move cp cleanup out of not operational Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 077/220] s390/vfio_ccw: Selectively expand io_mutex Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 078/220] s390/vfio_ccw: Calculate idal length based on idaw type Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 079/220] s390/vfio_ccw: Implement a crw lock Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 080/220] drm/amd/display: fix BT.2020 YCbCr limited output CSC matrix Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 081/220] drm/amd/display: fix BT.2020 YCbCr output CSC matrices for DCE Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 082/220] drm/amdgpu: Reject UVD message with invalid number of h265 refs Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 083/220] drm/amdgpu: fix nbif 6.3.1 l1 low power not functional Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 084/220] drm/amdgpu: check ASPM on the dGPU host link Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 085/220] drm/amdgpu: validate GEM_CREATE domain combinations Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 086/220] drm/amdgpu: Reject UVD message with dimensions above 4096 Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 087/220] drm/amdgpu: Implement insert_end for VCE 3 Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 088/220] drm/amdgpu: Fix UVD min buffer sizes Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 089/220] drm/amdgpu: Fix UVD dpb min size calculation for H264 Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 090/220] drm/amdgpu: Fix UVD decode image min size calculation Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 091/220] drm/amdgpu: disallow multiple FENCE chunks in one submit Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 092/220] xfs: clear zapped attr fork state when bmap repair finds no attr fork Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 093/220] xfs: zero i_nlink before repair puts inode on unlinked list Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 094/220] xfs: only check mergeability of bnobt records Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 095/220] xfs: dont double-lock when deleting a self-referential directory Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 096/220] xfs: set the prev pointer when reinserting an inode on the unlinked list Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 097/220] xfs: pass runtime errors from xrep_iunlink_mark_ondisk_rec up to callers Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 098/220] xfs: nlink scrub must take IOLOCK before determining ILOCK state Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 099/220] xfs: load next_agino from the correct xfarray in xrep_iunlink_relink_prev Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 100/220] xfs: fix ilock leak on error in xfs_dq_get_next_id Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 101/220] xfs: dont zap the attr fork on repair when there are queued pptr updates Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 102/220] xfs: dont walk off the end of a null sc->sa.agi_bp in AGI repair Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 103/220] xfs: fix allocated inodes that show up in the unlinked list Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 104/220] xfs: fix another iunlink infinite loop bug in online fsck Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 105/220] xfs: dont return EFSCORRUPTED when scrubbing corrupt parent pointers Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 106/220] xfs: avoid UAF on sc->tempip in xrep_tempfile_create Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 107/220] xfs: fix exchange-range reflink flag clearing issue with INO1_WRITTEN Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 108/220] xfs: dont swallow dquot recovery verification errors Greg Kroah-Hartman
2026-08-20 14:54 ` [PATCH 6.12 109/220] xfs: check xfarray iteration errors when committing unlinked inode lists Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 110/220] xfs: check v5 superblock features early Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 111/220] ceph: Remove ceph_writepage() Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 112/220] ceph: Use a folio in ceph_page_mkwrite() Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 113/220] ceph: Convert ceph_find_incompatible() to take a folio Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 114/220] ceph: Convert writepage_nounlock() to write_folio_nounlock() Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 115/220] ceph: fix writeback_count leak in write_folio_nounlock() Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 116/220] ceph: avoid fs reclaim while using current->journal_info Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 117/220] ceph: fix hanging __ceph_get_caps() with stale mds_wanted Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 118/220] libceph: Amend checking to fix `make W=1` build breakage Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 119/220] libceph: bound pg_{temp,upmap,upmap_items} length to CEPH_PG_MAX_SIZE Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 120/220] mm/khugepaged: guard is_zero_pfn() calls with pte_present() Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 121/220] userfaultfd: prevent registration of special VMAs Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 122/220] libceph: fix two unsafe bare decodes in decode_lockers() Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 123/220] net/sched: serialize qdisc_rtab_list against concurrent get/put Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 124/220] super: remove pointless s_root checks Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 125/220] super: skip dying superblocks early Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 126/220] super: use a common iterator (Part 1) Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 127/220] super: use common iterator (Part 2) Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 128/220] fs/super: fix emergency thaw double-unlock of s_umount Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 129/220] super: fix emergency thaw deadlock on frozen block devices Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 130/220] smb: move smb_version_values to common/smbglob.h Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 131/220] smb: move get_rfc1002_len() " Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 132/220] smb/server: rename include guard in smb_common.h Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 133/220] ksmbd: rename smb2_get_msg to smb_get_msg Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 134/220] smb/server: fix minimum SMB1 PDU size Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 135/220] smb/server: fix minimum SMB2 " Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 136/220] ksmbd: validate minimum PDU size for transform requests Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 137/220] eventpoll: pin files while checking reverse paths Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 138/220] tcp: Pass flags to __tcp_send_ack Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 139/220] tcp: fast path functions later Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 140/220] tcp: reorganize tcp_sock_write_txrx group for variables later Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 141/220] tcp: challenge ACK for non-exact RST in SYN-RECEIVED Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 142/220] iommufd: Fix wrong hwpt passed to iommufd_auto_response_faults on replace Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 143/220] btrfs: add debug build only WARN Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 144/220] btrfs: add space_info argument to btrfs_chunk_alloc() Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 145/220] btrfs: remove fs_info argument from btrfs_zoned_activate_one_bg() Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 146/220] btrfs: zoned: fix missing chunk metadata reservation Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 147/220] KVM: x86: Cancel delayed I/O APIC EOI handling before destroying vCPUs Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 148/220] ASoC: tas2562: Validate values for volume writes Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 149/220] ata: libata-scsi: terminate deferred commands on time out Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 150/220] igc: remove napi_synchronize() in igc_down() Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 151/220] ksmbd: conn lock to serialize smb2 negotiate Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 152/220] ksmbd: reject repeated SMB2 NEGOTIATE requests Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 153/220] net: pktgen: fix code style (WARNING: Block comments) Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 154/220] net: pktgen: fix proc entry use-after-free Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 155/220] binfmt_misc: dont leak the user namespace when the mount fails Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 156/220] fsnotify, lsm: Decouple fsnotify from lsm Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 157/220] fsnotify: opt-in for permission events at file open time Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 158/220] fs: dont block write during exec on pre-content watched files Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 159/220] binfmt_misc: restore write access when removing an entry Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 160/220] vrf: Make pcpu_dstats update functions available to other modules Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 161/220] vxlan: Handle stats using NETDEV_PCPU_STAT_DSTATS Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 162/220] vxlan: use pskb_network_may_pull() for transmit path header pulls Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 163/220] ice: fix VF interrupts cleanup Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 164/220] include/linux/fs.h: add inode_lock_killable() Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 165/220] smb: client: fix race with fallocate(2) and AIO+DIO Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 166/220] cifs: add fscache_resize_cookie() to cifs_setsize() Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 167/220] can: rcar_canfd: change the initializing flow for clocks and resets Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 168/220] drm/amd/pm: Use same metric table for APU Greg Kroah-Hartman
2026-08-20 14:55 ` [PATCH 6.12 169/220] drm/amd/pm: Use macro to initialize metrics table Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 170/220] drm/amd/pm: fix torn gpu metrics reads Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 171/220] drm/amdgpu: remove unused function parameter Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 172/220] drm/amdgpu: move debug_vm handling to amdgpu_cs_parser_fini Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 173/220] drm/amd/pm: adjust the visibility of pp_table sysfs node Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 174/220] drm/amd/pm: fix pptable use-after-free Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 175/220] net: tap: set skb->dev before parsing virtio net header in tap_get_user_xdp() Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 176/220] drm/vmwgfx: take fman->lock around fence list mutation in fifo_down Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 177/220] ring-buffer: Simplify functions with __free(kfree) to free allocations Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 178/220] ring-buffer: Initialise reader page order in rb_allocate_cpu_buffer() Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 179/220] mm/pagewalk: split walk_page_range_novma() into kernel/user parts Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 180/220] mm/vmalloc: acquire init_mm lock on huge vmap to avoid ptdump UAF Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 181/220] mm/ptdump: always stabilise against page table freeing using init_mm Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 182/220] KVM: SVM: Serialize accesses to the owner and mirror list with separate lock Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 183/220] ring-buffer: Simplify ring_buffer_read_page() with guard() Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 184/220] ring-buffer: Make ring_buffer_{un}map() simpler with guard(mutex) Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 185/220] ring-buffer: Prevent resizing of persistent ring buffer Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 186/220] x86/mce: Remove __mcheck_cpu_init_early() Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 187/220] x86/mce: Set CR4.MCE last during init Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 188/220] x86/mce: Set up the polling timer before CMCI discovery Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 189/220] ipv4: start using dst_dev_rcu() Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 190/220] ASoC: SOF: ipc4-topology: Refresh copier IPC payload before widget setup Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 191/220] net/x25: fix use-after-free of the socket by its timers Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 192/220] arm64: tegra: Add EL2 virtual timer interrupt for Tegra194 Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 193/220] crypto: ccm - Set rfc4309 maxauthsize from child Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 194/220] crypto: tegra - fix rctx->cryptlen calculation in tegra_gcm_do_one_req() Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 195/220] netfilter: ipset: fix refcount race between list:set GC and swap Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 196/220] netfilter: nf_tables_offload: suppress WARN_ON_ONCE for ENOMEM in abort path Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 197/220] netfilter: flowtable: publish GC-visible tuple last Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 198/220] netfilter: ipset: fix list type element drift bug Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 199/220] netfilter: ipset: let destroy callbacks adjust ext mem size Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 200/220] ipvlan: inherit needed_headroom and needed_tailroom from phy_dev Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 201/220] macvlan: inherit needed_headroom and needed_tailroom from lowerdev Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 202/220] veth: fix queue index used to wake the peer txq in veth_poll Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 203/220] tcp: fix icsk_ack.ato bitfield overflow Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 204/220] net: packet: fix wrong transport_header when sending VLAN-tagged frame Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 205/220] net/tls: Fail tls_sw_splice_read() after a failed async decrypt Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 206/220] ASoC: xilinx: formatter_pcm: pass aud_drv_data to irq handlers Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 207/220] af_packet: Dont send zero-byte data in tpacket_snd() Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 208/220] net/sched: act_api: fix TOCTOU NULL deref on a->goto_chain Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 209/220] net/sched: cls_u32: skip hash tables in u32_bind_class() Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 210/220] m68k: Define NR_CPUS to 1 Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 211/220] net: ethernet: ti: am65-cpsw-nuss: Fix port_id extraction from SRC TAG Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 212/220] net/sched: cls_bpf: reject dev-bound programs bound to a different device Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 213/220] drm/xe/oa: Fix sync entry leak on OA config emit failure Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 214/220] erofs: fix EROFS_FS_ZIP_LZMA_DEFAULT_MAX_STREAMS on some UP platforms Greg Kroah-Hartman
2026-08-20 14:56 ` Greg Kroah-Hartman [this message]
2026-08-20 14:56 ` [PATCH 6.12 216/220] perf/core: Fix group leader use-after-free after sibling detach Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 217/220] fs: unlock the superblock during iterate_supers_type Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 218/220] binfmt_misc: use exe_file_deny_write_access() for the interpreter clone Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 219/220] net: harmonize tstats and dstats Greg Kroah-Hartman
2026-08-20 14:56 ` [PATCH 6.12 220/220] ip_tunnel: adapt iptunnel_xmit_stats() to NETDEV_PCPU_STAT_DSTATS Greg Kroah-Hartman
2026-08-20 18:31 ` [PATCH 6.12 000/220] 6.12.105-rc1 review Pavel Machek
2026-08-20 18:59 ` Florian Fainelli
2026-08-20 20:24 ` Brett A C Sheffield
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=20260820145229.998399777@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=patches@lists.linux.dev \
--cc=peterz@infradead.org \
--cc=ravi.bangoria@amd.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