]> git.hungrycats.org Git - linux/commit
[PATCH] shrink_list(): check PageSwapCache() after add_to_swap()
authorAndrew Morton <akpm@osdl.org>
Wed, 4 Feb 2004 02:49:23 +0000 (18:49 -0800)
committerLinus Torvalds <torvalds@home.osdl.org>
Wed, 4 Feb 2004 02:49:23 +0000 (18:49 -0800)
commit5b1116c33fc208a98f716a8eb255eea11ab5e6f4
tree7f2cd71e0fd9653f364b17956d9c5252bfc4bc6e
parented20552072b113ab3dfc10ff153b1274f3befc94
[PATCH] shrink_list(): check PageSwapCache() after add_to_swap()

From: Nikita Danilov <Nikita@Namesys.COM>

shrink_list() checks PageSwapCache() before calling add_to_swap(), this
means that anonymous page that is going to be added to the swap right
now these checks return false and:

 (*) it will be unaccounted for in nr_mapped, and

 (*) it won't be written to the swap if gfp_flags include __GFP_IO but
     not __GFP_FS.

(Both will happen only on the next round of scanning.)

Patch below just moves may_enter_fs initialization down. I am not sure
about (*nr_mapped) increase though.
mm/vmscan.c