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.

Reply via email to