• Caspar Zhang's avatar
    mm/mempolicy.c: fix pgoff in mbind vma merge · 8aacc9f5
    Caspar Zhang authored
    commit 9d8cebd4 ("mm: fix mbind vma merge problem") didn't really
    fix the mbind vma merge problem due to wrong pgoff value passing to
    vma_merge(), which made vma_merge() always return NULL.
    
    Before the patch applied, we are getting a result like:
    
      addr = 0x7fa58f00c000
      [snip]
      7fa58f00c000-7fa58f00d000 rw-p 00000000 00:00 0
      7fa58f00d000-7fa58f00e000 rw-p 00000000 00:00 0
      7fa58f00e000-7fa58f00f000 rw-p 00000000 00:00 0
    
    here 7fa58f00c000->7fa58f00f000 we get 3 VMAs which are expected to be
    merged described as described in commit 9d8cebd4.
    
    Re-testing the patched kernel with the reproducer provided in commit
    9d8cebd4, we get the correct result:
    
      addr = 0x7ffa5aaa2000
      [snip]
      7ffa5aaa2000-7ffa5aaa6000 rw-p 00000000 00:00 0
      7fffd556f000-7fffd5584000 rw-p 00000000 00:00 0                          [stack]
    Signed-off-by: default avatarCaspar Zhang <caspar@casparzhang.com>
    Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
    Cc: Christoph Lameter <cl@linux-foundation.org>
    Cc: Hugh Dickins <hugh.dickins@tiscali.co.uk>
    Cc: Mel Gorman <mel@csn.ul.ie>
    Cc: Lee Schermerhorn <lee.schermerhorn@hp.com>
    Cc: Minchan Kim <minchan.kim@gmail.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    8aacc9f5
mempolicy.c 64.2 KB