From: Andrii Nakryiko Date: Fri, 22 Nov 2024 03:59:21 +0000 (-0800) Subject: uprobes: simplify find_active_uprobe_rcu() VMA checks X-Git-Tag: block-6.14-20240131~52^2~12 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=83e3dc9a5d4d7402adb24090a77327245d593129;p=linux-block.git uprobes: simplify find_active_uprobe_rcu() VMA checks At the point where find_active_uprobe_rcu() is used we know that VMA in question has triggered software breakpoint, so we don't need to validate vma->vm_flags. Keep only vma->vm_file NULL check. Suggested-by: Oleg Nesterov Signed-off-by: Andrii Nakryiko Signed-off-by: Peter Zijlstra (Intel) Reviewed-by: Masami Hiramatsu (Google) Acked-by: Oleg Nesterov Link: https://lkml.kernel.org/r/20241122035922.3321100-2-andrii@kernel.org --- diff --git a/kernel/events/uprobes.c b/kernel/events/uprobes.c index fa04b14a7d72..62c14dffa1ba 100644 --- a/kernel/events/uprobes.c +++ b/kernel/events/uprobes.c @@ -2304,7 +2304,7 @@ static struct uprobe *find_active_uprobe_rcu(unsigned long bp_vaddr, int *is_swb mmap_read_lock(mm); vma = vma_lookup(mm, bp_vaddr); if (vma) { - if (valid_vma(vma, false)) { + if (vma->vm_file) { struct inode *inode = file_inode(vma->vm_file); loff_t offset = vaddr_to_offset(vma, bp_vaddr);