]> git.baikalelectronics.ru Git - kernel.git/commit
vmscan: let GFP_NOFS go to swap again
authorHugh Dickins <hugh@veritas.com>
Wed, 19 Nov 2008 23:36:37 +0000 (15:36 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 20 Nov 2008 02:49:59 +0000 (18:49 -0800)
commitb1d0d47bd88a199ad228c8a5d7f4d1af8cf00d75
tree5370a3080b8f20ae27904a3c36646f79b26c6665
parent9360c24b6052037119fe140c91734036338b1324
vmscan: let GFP_NOFS go to swap again

In the past, GFP_NOFS (but of course not GFP_NOIO) was allowed to reclaim
by writing to swap.  That got partially broken in 2.6.23, when may_enter_fs
initialization was moved up before the allocation of swap, so its
PageSwapCache test was failing the first time around,

Fix it by setting may_enter_fs when add_to_swap() succeeds with
__GFP_IO.  In fact, check __GFP_IO before calling add_to_swap():
allocating swap we're not ready to use just increases disk seeking.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Cc: Rik van Riel <riel@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/vmscan.c