[v4,0/2] mm: mempolicy: fix mbind()'s inconsistent behavior for unmovable pages
mbox series

Message ID 1563556862-54056-1-git-send-email-yang.shi@linux.alibaba.com
Headers show
  • mm: mempolicy: fix mbind()'s inconsistent behavior for unmovable pages
Related show


Yang Shi July 19, 2019, 5:21 p.m. UTC
v4: * Fixed the comments from Vlastimil.
    * Collected Vlastimil's Reviewed-by.
v3: * Adopted the suggestions from Vlastimil.  Saved another 20 lines.
      Using flag in struct queue_pages looks not outperform renumbering retval
      too much since we still have to return 1 to tell the caller there are
      unmovable pages.  So just renumber the retval.
    * Manpage is not very clear about shared pages when MPOL_MF_MOVE is
      specified, just leave it as it is for now till it gets clarified.
v2: * Fixed the inconsistent behavior by not aborting !vma_migratable()
      immediately by a separate patch (patch 1/2), and this is also the
      preparation for patch 2/2. For the details please see the commit
      log.  Per Vlastimil.
    * Not abort immediately if unmovable page is met. This should handle
      non-LRU movable pages and temporary off-LRU pages more friendly.
      Per Vlastimil and Michal Hocko.

Yang Shi (2):
      mm: mempolicy: make the behavior consistent when MPOL_MF_MOVE* and MPOL_MF_STRICT were specified
      mm: mempolicy: handle vma with unmovable pages mapped correctly in mbind

 mm/mempolicy.c | 100 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------
 1 file changed, 73 insertions(+), 27 deletions(-)