summaryrefslogtreecommitdiffstats
path: root/kernel/events/ring_buffer.c
diff options
context:
space:
mode:
authorpeterz@infradead.org <peterz@infradead.org>2020-08-28 14:37:20 +0200
committerPeter Zijlstra <peterz@infradead.org>2020-12-09 17:08:57 +0100
commit78af4dc949daaa37b3fcd5f348f373085b4e858f (patch)
treefc680c63d7cb4156603b7896d963ac2b272012f1 /kernel/events/ring_buffer.c
parente6e4f42eb773c1da869af4bad544c26c89cd01ab (diff)
downloadlinux-78af4dc949daaa37b3fcd5f348f373085b4e858f.tar.bz2
perf: Break deadlock involving exec_update_mutex
Syzbot reported a lock inversion involving perf. The sore point being perf holding exec_update_mutex() for a very long time, specifically across a whole bunch of filesystem ops in pmu::event_init() (uprobes) and anon_inode_getfile(). This then inverts against procfs code trying to take exec_update_mutex. Move the permission checks later, such that we need to hold the mutex over less code. Reported-by: syzbot+db9cdf3dd1f64252c6ef@syzkaller.appspotmail.com Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Diffstat (limited to 'kernel/events/ring_buffer.c')
0 files changed, 0 insertions, 0 deletions