diff --git a/mm/memory.c b/mm/memory.c index 350e646032f52ddaefa5c5ee44efa2376261f382..2302d228fe04f3926f8c52bf65965623f1caff05 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -1151,7 +1151,7 @@ int get_user_pages(struct task_struct *tsk, struct mm_struct *mm, * be processed until returning to user space. */ if (unlikely(test_tsk_thread_flag(tsk, TIF_MEMDIE))) - return -ENOMEM; + return i ? i : -ENOMEM; if (write) foll_flags |= FOLL_WRITE;