All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lee Schermerhorn <Lee.Schermerhorn@hp.com>
To: Ying Han <yinghan@google.com>
Cc: linux-mm <linux-mm@kvack.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>,
	Oleg Nesterov <oleg@redhat.com>,
	Pekka Enberg <penberg@cs.helsinki.fi>,
	Paul Menage <menage@google.com>,
	Rohit Seth <rohitseth@google.com>
Subject: Re: [PATCH][V7]make get_user_pages interruptible
Date: Wed, 03 Dec 2008 10:03:40 -0500	[thread overview]
Message-ID: <1228316620.6693.34.camel@lts-notebook> (raw)
In-Reply-To: <604427e00812022117x6538553w8ceb24e6fa7f3a30@mail.gmail.com>

On Tue, 2008-12-02 at 21:17 -0800, Ying Han wrote:
> From: Ying Han <yinghan@google.com>
> 
> make get_user_pages interruptible
> The initial implementation of checking TIF_MEMDIE covers the cases of OOM
> killing. If the process has been OOM killed, the TIF_MEMDIE is set and it
> return immediately. This patch includes:
> 
> 1. add the case that the SIGKILL is sent by user processes. The process can
> try to get_user_pages() unlimited memory even if a user process has sent a
> SIGKILL to it(maybe a monitor find the process exceed its memory limit and
> try to kill it). In the old implementation, the SIGKILL won't be handled
> until the get_user_pages() returns.
> 
> 2. change the return value to be ERESTARTSYS. It makes no sense to return
> ENOMEM if the get_user_pages returned by getting a SIGKILL signal.
> Considering the general convention for a system call interrupted by a
> signal is ERESTARTNOSYS, so the current return value is consistant to that.
> 
> Signed-off-by:	Paul Menage <menage@google.com>
> Signed-off-by:	Ying Han <yinghan@google.com>
> 
<snip>

Couple of things:

* I tested your previous patch [that was "just too ugly to live
with" :)] overnight with my swap/unevictable-lru/mlocked-pages stress
test on both x86_64 and ia64.  I replaced the two patches in mmotm
081201 with the "ugly one".  Both systems ran for ~16:40 [hh:mm] without
error, before I stopped the tests.

* Your patch--bailing out of get_user_pages() when current has SIGKILL
pending--breaks munlock on exit when SIGKILL is pending.  This results
in freeing of mlocked pages [not so bad, I guess] and possibly leaving,
e.g., shared library pages mlocked and unevictable after last VM_LOCKED
vma is removed.  I noticed this because SIGKILL is how the test harness
kills off the running tests.  I have a patch that fixes this.  The
overnight runs included this patch.  I'll post it after rebasing and a
quick retest [he says optimistically] on mmotm-081203.  

Lee

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  parent reply	other threads:[~2008-12-03 15:03 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-12-03  5:17 [PATCH][V7]make get_user_pages interruptible Ying Han
2008-12-03  7:19 ` KOSAKI Motohiro
2008-12-03  8:21   ` Pekka Enberg
2008-12-03 15:03 ` Lee Schermerhorn [this message]
2008-12-03 20:25   ` Ying Han
2008-12-03 20:36     ` Lee Schermerhorn
2008-12-03 20:01 ` [PATCH] mmotm: ignore sigkill in get_user_pages during munlock Lee Schermerhorn
2008-12-04  0:30   ` KOSAKI Motohiro
2008-12-04  1:19     ` Ying Han
2008-12-04  1:49     ` Lee Schermerhorn

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1228316620.6693.34.camel@lts-notebook \
    --to=lee.schermerhorn@hp.com \
    --cc=akpm@linux-foundation.org \
    --cc=kosaki.motohiro@jp.fujitsu.com \
    --cc=linux-mm@kvack.org \
    --cc=menage@google.com \
    --cc=oleg@redhat.com \
    --cc=penberg@cs.helsinki.fi \
    --cc=rohitseth@google.com \
    --cc=yinghan@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.