Re: [PATCH 09/18] ipc, shm: make shmem attach/detach wait for mmap_sem killable

From: Michal Hocko
Date: Wed Mar 09 2016 - 05:17:08 EST


On Tue 08-03-16 11:15:50, Davidlohr Bueso wrote:
> On Mon, 29 Feb 2016, Michal Hocko wrote:
>
> >From: Michal Hocko <mhocko@xxxxxxxx>
> >
> >shmat and shmdt rely on mmap_sem for write. If the waiting task
> >gets killed by the oom killer it would block oom_reaper from
> >asynchronous address space reclaim and reduce the chances of timely
> >OOM resolving. Wait for the lock in the killable mode and return with
> >EINTR if the task got killed while waiting.
> >
> >Cc: Davidlohr Bueso <dave@xxxxxxxxxxxx>
> >Cc: Hugh Dickins <hughd@xxxxxxxxxx>
> >Signed-off-by: Michal Hocko <mhocko@xxxxxxxx>
>
> I have no objection to this perse, just one comment below.
>
> Acked-by: Davidlohr Bueso <dave@xxxxxxxxxxxx>

Thanks!

[...]
> >- down_write(&current->mm->mmap_sem);
> >+ if (down_write_killable(&current->mm->mmap_sem)) {
> >+ err = -EINVAL;
> >+ goto out_fput;
> >+ }
>
> This should be EINTR, no?

Of course. Thanks for catching that.
--
Michal Hocko
SUSE Labs