diff --git a/[refs] b/[refs] index bbbda26d84e2..514e58ab6bae 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: db0480b3a61bd6ad86ead3b8bbad094ab0996932 +refs/heads/master: 71f72525dfaaec012e23089c73331654ea7b12d3 diff --git a/trunk/mm/memory.c b/trunk/mm/memory.c index a54b2c498444..db09106ed44b 100644 --- a/trunk/mm/memory.c +++ b/trunk/mm/memory.c @@ -2553,6 +2553,10 @@ static int do_swap_page(struct mm_struct *mm, struct vm_area_struct *vma, ret = VM_FAULT_MAJOR; count_vm_event(PGMAJFAULT); } else if (PageHWPoison(page)) { + /* + * hwpoisoned dirty swapcache pages are kept for killing + * owner processes (which may be unknown at hwpoison time) + */ ret = VM_FAULT_HWPOISON; delayacct_clear_flag(DELAYACCT_PF_SWAPIN); goto out_release;