proc: put check_mem_permission after __get_free_page in mem_write
It whould be better if put check_mem_permission after __get_free_page in
mem_write, to be same as function mem_read.
Hugh Dickins explained the reason.
    check_mem_permission gets a reference to the mm.  If we __get_free_page
    after check_mem_permission, imagine what happens if the system is out
    of memory, and the mm we're looking at is selected for killing by the
    OOM killer: while we wait in __get_free_page for more memory, no memory
    is freed from the selected mm because it cannot reach exit_mmap while
    we hold that reference.
Reported-by:  Jovi Zhang <bookjovi@gmail.com>
Signed-off-by:
Jovi Zhang <bookjovi@gmail.com>
Signed-off-by:  KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Acked-by:
KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Acked-by:  Hugh Dickins <hughd@google.com>
Reviewed-by:
Hugh Dickins <hughd@google.com>
Reviewed-by:  Stephen Wilson <wilsons@start.ca>
Cc: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by:
Stephen Wilson <wilsons@start.ca>
Cc: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by:  Andrew Morton <akpm@linux-foundation.org>
Signed-off-by:
Andrew Morton <akpm@linux-foundation.org>
Signed-off-by:  Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds <torvalds@linux-foundation.org>
Loading
Please register or sign in to comment
