userfaultfd.c (f81483aaeb59da530b286fe5d081e1705eb5c886) | userfaultfd.c (9a10064f5625d5572c3626c1516e0bebc6c9fe9b) |
---|---|
1// SPDX-License-Identifier: GPL-2.0-only 2/* 3 * fs/userfaultfd.c 4 * 5 * Copyright (C) 2007 Davide Libenzi <davidel@xmailserver.org> 6 * Copyright (C) 2008-2009 Red Hat, Inc. 7 * Copyright (C) 2015 Red Hat, Inc. 8 * --- 863 unchanged lines hidden (view full) --- 872 prev = vma; 873 continue; 874 } 875 new_flags = vma->vm_flags & ~__VM_UFFD_FLAGS; 876 prev = vma_merge(mm, prev, vma->vm_start, vma->vm_end, 877 new_flags, vma->anon_vma, 878 vma->vm_file, vma->vm_pgoff, 879 vma_policy(vma), | 1// SPDX-License-Identifier: GPL-2.0-only 2/* 3 * fs/userfaultfd.c 4 * 5 * Copyright (C) 2007 Davide Libenzi <davidel@xmailserver.org> 6 * Copyright (C) 2008-2009 Red Hat, Inc. 7 * Copyright (C) 2015 Red Hat, Inc. 8 * --- 863 unchanged lines hidden (view full) --- 872 prev = vma; 873 continue; 874 } 875 new_flags = vma->vm_flags & ~__VM_UFFD_FLAGS; 876 prev = vma_merge(mm, prev, vma->vm_start, vma->vm_end, 877 new_flags, vma->anon_vma, 878 vma->vm_file, vma->vm_pgoff, 879 vma_policy(vma), |
880 NULL_VM_UFFD_CTX); | 880 NULL_VM_UFFD_CTX, vma_anon_name(vma)); |
881 if (prev) 882 vma = prev; 883 else 884 prev = vma; 885 vma->vm_flags = new_flags; 886 vma->vm_userfaultfd_ctx = NULL_VM_UFFD_CTX; 887 } 888 mmap_write_unlock(mm); --- 542 unchanged lines hidden (view full) --- 1431 if (vma->vm_start > start) 1432 start = vma->vm_start; 1433 vma_end = min(end, vma->vm_end); 1434 1435 new_flags = (vma->vm_flags & ~__VM_UFFD_FLAGS) | vm_flags; 1436 prev = vma_merge(mm, prev, start, vma_end, new_flags, 1437 vma->anon_vma, vma->vm_file, vma->vm_pgoff, 1438 vma_policy(vma), | 881 if (prev) 882 vma = prev; 883 else 884 prev = vma; 885 vma->vm_flags = new_flags; 886 vma->vm_userfaultfd_ctx = NULL_VM_UFFD_CTX; 887 } 888 mmap_write_unlock(mm); --- 542 unchanged lines hidden (view full) --- 1431 if (vma->vm_start > start) 1432 start = vma->vm_start; 1433 vma_end = min(end, vma->vm_end); 1434 1435 new_flags = (vma->vm_flags & ~__VM_UFFD_FLAGS) | vm_flags; 1436 prev = vma_merge(mm, prev, start, vma_end, new_flags, 1437 vma->anon_vma, vma->vm_file, vma->vm_pgoff, 1438 vma_policy(vma), |
1439 ((struct vm_userfaultfd_ctx){ ctx })); | 1439 ((struct vm_userfaultfd_ctx){ ctx }), 1440 vma_anon_name(vma)); |
1440 if (prev) { 1441 vma = prev; 1442 goto next; 1443 } 1444 if (vma->vm_start < start) { 1445 ret = split_vma(mm, vma, start, 1); 1446 if (ret) 1447 break; --- 160 unchanged lines hidden (view full) --- 1608 range.len = vma_end - start; 1609 wake_userfault(vma->vm_userfaultfd_ctx.ctx, &range); 1610 } 1611 1612 new_flags = vma->vm_flags & ~__VM_UFFD_FLAGS; 1613 prev = vma_merge(mm, prev, start, vma_end, new_flags, 1614 vma->anon_vma, vma->vm_file, vma->vm_pgoff, 1615 vma_policy(vma), | 1441 if (prev) { 1442 vma = prev; 1443 goto next; 1444 } 1445 if (vma->vm_start < start) { 1446 ret = split_vma(mm, vma, start, 1); 1447 if (ret) 1448 break; --- 160 unchanged lines hidden (view full) --- 1609 range.len = vma_end - start; 1610 wake_userfault(vma->vm_userfaultfd_ctx.ctx, &range); 1611 } 1612 1613 new_flags = vma->vm_flags & ~__VM_UFFD_FLAGS; 1614 prev = vma_merge(mm, prev, start, vma_end, new_flags, 1615 vma->anon_vma, vma->vm_file, vma->vm_pgoff, 1616 vma_policy(vma), |
1616 NULL_VM_UFFD_CTX); | 1617 NULL_VM_UFFD_CTX, vma_anon_name(vma)); |
1617 if (prev) { 1618 vma = prev; 1619 goto next; 1620 } 1621 if (vma->vm_start < start) { 1622 ret = split_vma(mm, vma, start, 1); 1623 if (ret) 1624 break; --- 493 unchanged lines hidden --- | 1618 if (prev) { 1619 vma = prev; 1620 goto next; 1621 } 1622 if (vma->vm_start < start) { 1623 ret = split_vma(mm, vma, start, 1); 1624 if (ret) 1625 break; --- 493 unchanged lines hidden --- |