Re: [PATCH 15/19] perf: Fix perf_mmap() failure path

From: Ingo Molnar
Date: Sat Mar 01 2025 - 14:17:19 EST



* Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:

> When f_ops->mmap() returns failure, m_ops->close() is *not* called.
>
> Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
> ---
> kernel/events/core.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> --- a/kernel/events/core.c
> +++ b/kernel/events/core.c
> @@ -6830,7 +6830,7 @@ static int perf_mmap(struct file *file,
> vm_flags_set(vma, VM_DONTCOPY | VM_DONTEXPAND | VM_DONTDUMP);
> vma->vm_ops = &perf_mmap_vmops;
>
> - if (event->pmu->event_mapped)
> + if (!ret && event->pmu->event_mapped)
> event->pmu->event_mapped(event, vma->vm_mm);
>
> return ret;

I'm wondering whether this fix is still relevant in context of this
recent commit:

b709eb872e19 perf: map pages in advance

Thanks,

Ingo