mirror of
https://github.com/team-infusion-developers/android_kernel_samsung_msm8976.git
synced 2024-11-01 02:21:16 +00:00
thp: ksm: free swap when swapcache page is replaced
When a swapcache page is replaced by a ksm page, it's best to free that swap immediately. Reported-by: Andrea Arcangeli <aarcange@redhat.com> Signed-off-by: Hugh Dickins <hughd@google.com> Signed-off-by: Andrea Arcangeli <aarcange@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
240c879f20
commit
ae52a2adb5
1 changed files with 2 additions and 0 deletions
2
mm/ksm.c
2
mm/ksm.c
|
@ -800,6 +800,8 @@ static int replace_page(struct vm_area_struct *vma, struct page *page,
|
||||||
set_pte_at_notify(mm, addr, ptep, mk_pte(kpage, vma->vm_page_prot));
|
set_pte_at_notify(mm, addr, ptep, mk_pte(kpage, vma->vm_page_prot));
|
||||||
|
|
||||||
page_remove_rmap(page);
|
page_remove_rmap(page);
|
||||||
|
if (!page_mapped(page))
|
||||||
|
try_to_free_swap(page);
|
||||||
put_page(page);
|
put_page(page);
|
||||||
|
|
||||||
pte_unmap_unlock(ptep, ptl);
|
pte_unmap_unlock(ptep, ptl);
|
||||||
|
|
Loading…
Reference in a new issue