Commit a603abe3 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'perf_urgent_for_v6.13_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull perf fix from Borislav Petkov:

 - Fix a #GP in the perf user callchain code caused by a race between
   uprobe freeing the task and the bpf profiler unwinding the task's
   user stack

* tag 'perf_urgent_for_v6.13_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  uprobes: Fix race in uprobe_free_utask
parents f31acaef b583ef82
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1915,6 +1915,7 @@ void uprobe_free_utask(struct task_struct *t)
	if (!utask)
		return;

	t->utask = NULL;
	WARN_ON_ONCE(utask->active_uprobe || utask->xol_vaddr);

	timer_delete_sync(&utask->ri_timer);
@@ -1924,7 +1925,6 @@ void uprobe_free_utask(struct task_struct *t)
		ri = free_ret_instance(ri, true /* cleanup_hprobe */);

	kfree(utask);
	t->utask = NULL;
}

#define RI_TIMER_PERIOD (HZ / 10) /* 100 ms */