lkml.org 
[lkml]   [2021]   [Jun]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH v11 00/10] Add support for SVM atomics in Nouveau
    Date
    Hi Andrew,

    This is my series to add support for SVM atomics in Nouveau rebased onto
    v5.13-rc6-mmots-2021-06-15-20-28. Functionally there are no changes from
    the previous v10, however some changes were made during the rebase. If
    anyone would like to see a diff-of-diffs I can post it but my exhaustive
    (assuming I didn't miss anything in the diff-of-diff) summary below is
    probably easier to read.

    Hugh - based on our previous disscussion I'm reasonably confident I haven't
    missed anything from you in the rebase, but patch 4 ("Split migration into
    its own function") might be worth looking at as that contained the largest
    conflicts. Thanks.

    [PATCH 01/10] mm: Remove special swap entry functions

    - Fixed migration_entry_to_page() reference in __split_huge_pmd_locked()
    introduced by Hugh's "mm/thp: fix __split_huge_pmd_locked() on shmem
    migration entry".

    - Fixed migration_entry_to_page() reference in page_vma_mapped_walk()
    changed by Hugh in "mm: page_vma_mapped_walk(): prettify PVMW_MIGRATION
    block"

    [PATCH 02/10] mm/swapops: Rework swap entry manipulation code

    - No changes required.

    [PATCH 03/10] mm/rmap: Split try_to_munlock from try_to_unmap

    - No changes required.

    [PATCH 04/10] mm/rmap: Split migration into its own function

    - Updated try_to_migrate_one() and try_to_migrate() to accept TTU_SYNC
    flag.

    - Updated mmu notifier range calculation in try_to_migrate_one() to use
    vma_address_end() introduced by Hugh in "mm/thp: fix vma_address() if
    virtual address below file offset".

    - Update to unmap_page() in mm/hugh_memory.c to pass TTU_SYNC and check
    page_mapped() now that try_to_{unmap|migrate} return void.

    [PATCH 05/10] mm: Rename migrate_pgmap_owner

    - Added Peter's Reviewed-by.

    [PATCH 06/10] mm/memory.c: Allow different return codes for copy_non_present_pte()

    - Updated call to copy_nonpresent_pte() for extra arguments added by Peter
    in "mm/userfaultfd: fix uffd-wp special cases for fork()".

    - Added Peter's Reviewed-by.

    [PATCH 07/10] mm: Device exclusive memory access

    - s/vma/src_vma/ in copy_nonpresent_pte() due to "mm/userfaultfd: fix
    uffd-wp special cases for fork()".

    - Skip calling rmap_walk on tail pages.

    [PATCH 08/10] mm: Selftests for exclusive device memory

    - Squashed in a fix from Colin King (see
    https://lore.kernel.org/kernel-janitors/20210526170530.3766167-1-colin.king@canonical.com/).
    Not sure what the best way of attributing that is though given it was
    against next.

    [PATCH 09/10] nouveau/svm: Refactor nouveau_range_fault

    - No changes.

    [PATCH 10/10] nouveau/svm: Implement atomic SVM access

    - No changes.

    Alistair Popple (10):
    mm: Remove special swap entry functions
    mm/swapops: Rework swap entry manipulation code
    mm/rmap: Split try_to_munlock from try_to_unmap
    mm/rmap: Split migration into its own function
    mm: Rename migrate_pgmap_owner
    mm/memory.c: Allow different return codes for copy_nonpresent_pte()
    mm: Device exclusive memory access
    mm: Selftests for exclusive device memory
    nouveau/svm: Refactor nouveau_range_fault
    nouveau/svm: Implement atomic SVM access

    Documentation/vm/hmm.rst | 19 +-
    Documentation/vm/unevictable-lru.rst | 33 +-
    arch/s390/mm/pgtable.c | 2 +-
    drivers/gpu/drm/nouveau/include/nvif/if000c.h | 1 +
    drivers/gpu/drm/nouveau/nouveau_svm.c | 156 ++++-
    drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.h | 1 +
    .../drm/nouveau/nvkm/subdev/mmu/vmmgp100.c | 6 +
    fs/proc/task_mmu.c | 23 +-
    include/linux/mmu_notifier.h | 26 +-
    include/linux/rmap.h | 11 +-
    include/linux/swap.h | 13 +-
    include/linux/swapops.h | 123 ++--
    lib/test_hmm.c | 127 +++-
    lib/test_hmm_uapi.h | 2 +
    mm/debug_vm_pgtable.c | 12 +-
    mm/hmm.c | 12 +-
    mm/huge_memory.c | 48 +-
    mm/hugetlb.c | 10 +-
    mm/memcontrol.c | 2 +-
    mm/memory.c | 175 ++++-
    mm/migrate.c | 51 +-
    mm/mlock.c | 12 +-
    mm/mprotect.c | 18 +-
    mm/page_vma_mapped.c | 15 +-
    mm/rmap.c | 612 +++++++++++++++---
    tools/testing/selftests/vm/hmm-tests.c | 158 +++++
    26 files changed, 1341 insertions(+), 327 deletions(-)

    --
    2.20.1

    \
     
     \ /
      Last update: 2021-06-16 13:00    [W:4.102 / U:0.052 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site