On 02/29, Michal Hocko wrote:
>
> --- a/kernel/fork.c
> +++ b/kernel/fork.c
> @@ -413,7 +413,10 @@ static int dup_mmap(struct mm_struct *mm, struct
> mm_struct *oldmm)
> unsigned long charge;
>
> uprobe_start_dup_mmap();
> - down_write(&oldmm->mmap_sem);
> + if (down_write_killable(&oldmm->mmap_sem)) {
> + uprobe_end_dup_mmap();
> + return -EINTR;
> + }
This is really cosmetic and subjective, I won't insist if you prefer it this
way.
But perhaps it makes sense to add another "fail" label above
uprobe_end_dup_mmap()
we already have... IMO it is always better to avoid duplicating when it comes to
"unlock".
Oleg.