• Hugh Dickins's avatar
    ksm: no debug in page_dup_rmap() · 21333b2b
    Hugh Dickins authored
    page_dup_rmap(), used on each mapped page when forking, was originally
    just an inline atomic_inc of mapcount.  2.6.22 added CONFIG_DEBUG_VM
    out-of-line checks to it, which would need to be ever-so-slightly
    complicated to allow for the PageKsm() we're about to define.
    
    But I think these checks never caught anything.  And if it's coding errors
    we're worried about, such checks should be in page_remove_rmap() too, not
    just when forking; whereas if it's pagetable corruption we're worried
    about, then they shouldn't be limited to CONFIG_DEBUG_VM.
    
    Oh, just revert page_dup_rmap() to an inline atomic_inc of mapcount.
    Signed-off-by: default avatarHugh Dickins <hugh.dickins@tiscali.co.uk>
    Signed-off-by: default avatarChris Wright <chrisw@redhat.com>
    Signed-off-by: default avatarIzik Eidus <ieidus@redhat.com>
    Cc: Nick Piggin <npiggin@suse.de>
    Cc: Andrea Arcangeli <aarcange@redhat.com>
    Cc: Rik van Riel <riel@redhat.com>
    Cc: Wu Fengguang <fengguang.wu@intel.com>
    Cc: Balbir Singh <balbir@in.ibm.com>
    Cc: Hugh Dickins <hugh.dickins@tiscali.co.uk>
    Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
    Cc: Lee Schermerhorn <lee.schermerhorn@hp.com>
    Cc: Avi Kivity <avi@redhat.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    21333b2b
rmap.c 34.2 KB