Re: [PATCH 2/7] uprobes: kill dup_mmap()->uprobe_mmap(), simplifyuprobe_mmap/munmap

From: Srikar Dronamraju
Date: Mon Aug 13 2012 - 09:21:31 EST


* Oleg Nesterov <oleg@xxxxxxxxxx> [2012-08-08 19:37:39]:

> 1. Kill dup_mmap()->uprobe_mmap(), it was only needed to calculate
> new_mm->uprobes_state.count removed by the previous patch.
>
> If the forking process has a pending uprobe (int3) in vma, it will
> be copied by copy_page_range(), note that it checks vma->anon_vma
> so "Don't copy ptes" is not possible after install_breakpoint()
> which does anon_vma_prepare().
>
> 2. Remove is_swbp_at_addr() and "int count" in uprobe_mmap(). Again,
> this was needed for uprobes_state.count.
>
> As a side effect this fixes the bug pointed out by Srikar,
> this code lacked the necessary put_uprobe().
>
> 3. uprobe_munmap() becomes a nop after the previous patch. Remove the
> meaningless code but do not remove the helper, we will need it.

We could have removed uprobe_munmap() for now and reintroduced it. But
its fine to keep it this way for now.

>
> Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>

Acked-by: Srikar Dronamraju <srikar@xxxxxxxxxxxxxxxxxx>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/