1. 23 6月, 2006 6 次提交
  2. 02 5月, 2006 1 次提交
    • C
      [PATCH] page migration: Fix fallback behavior for dirty pages · 4c28f811
      Christoph Lameter 提交于
      Currently we check PageDirty() in order to make the decision to swap out
      the page.  However, the dirty information may be only be contained in the
      ptes pointing to the page.  We need to first unmap the ptes before checking
      for PageDirty().  If unmap is successful then the page count of the page
      will also be decreased so that pageout() works properly.
      
      This is a fix necessary for 2.6.17.  Without this fix we may migrate dirty
      pages for filesystems without migration functions.  Filesystems may keep
      pointers to dirty pages.  Migration of dirty pages can result in the
      filesystem keeping pointers to freed pages.
      
      Unmapping is currently not be separated out from removing all the
      references to a page and moving the mapping.  Therefore try_to_unmap will
      be called again in migrate_page() if the writeout is successful.  However,
      it wont do anything since the ptes are already removed.
      
      The coming updates to the page migration code will restructure the code
      so that this is no longer necessary.
      Signed-off-by: NChristoph Lameter <clameter@sgi.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      4c28f811
  3. 11 4月, 2006 2 次提交
  4. 22 3月, 2006 1 次提交
    • C
      [PATCH] page migration reorg · b20a3503
      Christoph Lameter 提交于
      Centralize the page migration functions in anticipation of additional
      tinkering.  Creates a new file mm/migrate.c
      
      1. Extract buffer_migrate_page() from fs/buffer.c
      
      2. Extract central migration code from vmscan.c
      
      3. Extract some components from mempolicy.c
      
      4. Export pageout() and remove_from_swap() from vmscan.c
      
      5. Make it possible to configure NUMA systems without page migration
         and non-NUMA systems with page migration.
      
      I had to so some #ifdeffing in mempolicy.c that may need a cleanup.
      Signed-off-by: NChristoph Lameter <clameter@sgi.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      b20a3503