Re: [PATCH v18 00/15] arm64: untag user pointers passed to the kernel

Catalin Marinas
2019-06-26T17:18:19Z

Hi Andrew,

On Mon, Jun 24, 2019 at 04:32:45PM +0200, Andrey Konovalov wrote:
> Andrey Konovalov (14):
> arm64: untag user pointers in access_ok and __uaccess_mask_ptr
> lib: untag user pointers in strn*_user
> mm: untag user pointers passed to memory syscalls
> mm: untag user pointers in mm/gup.c
> mm: untag user pointers in get_vaddr_frames
> fs/namespace: untag user pointers in copy_mount_options
> userfaultfd: untag user pointers
> drm/amdgpu: untag user pointers
> drm/radeon: untag user pointers in radeon_gem_userptr_ioctl
> IB/mlx4: untag user pointers in mlx4_get_umem_mr
> media/v4l2-core: untag user pointers in videobuf_dma_contig_user_get
> tee/shm: untag user pointers in tee_shm_register
> vfio/type1: untag user pointers in vaddr_get_pfn
> selftests, arm64: add a selftest for passing tagged pointers to kernel
>
> Catalin Marinas (1):
> arm64: Introduce prctl() options to control the tagged user addresses
> ABI
>
> arch/arm64/Kconfig | 9 +++
> arch/arm64/include/asm/processor.h | 8 +++
> arch/arm64/include/asm/thread_info.h | 1 +
> arch/arm64/include/asm/uaccess.h | 12 +++-
> arch/arm64/kernel/process.c | 72 +++++++++++++++++++
> .../gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 2 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 2 +
> drivers/gpu/drm/radeon/radeon_gem.c | 2 +
> drivers/infiniband/hw/mlx4/mr.c | 7 +-
> drivers/media/v4l2-core/videobuf-dma-contig.c | 9 +--
> drivers/tee/tee_shm.c | 1 +
> drivers/vfio/vfio_iommu_type1.c | 2 +
> fs/namespace.c | 2 +-
> fs/userfaultfd.c | 22 +++---
> include/uapi/linux/prctl.h | 5 ++
> kernel/sys.c | 12 ++++
> lib/strncpy_from_user.c | 3 +-
> lib/strnlen_user.c | 3 +-
> mm/frame_vector.c | 2 +
> mm/gup.c | 4 ++
> mm/madvise.c | 2 +
> mm/mempolicy.c | 3 +
> mm/migrate.c | 2 +-
> mm/mincore.c | 2 +
> mm/mlock.c | 4 ++
> mm/mprotect.c | 2 +
> mm/mremap.c | 7 ++
> mm/msync.c | 2 +
> tools/testing/selftests/arm64/.gitignore | 1 +
> tools/testing/selftests/arm64/Makefile | 11 +++
> .../testing/selftests/arm64/run_tags_test.sh | 12 ++++
> tools/testing/selftests/arm64/tags_test.c | 29 ++++++++
> 32 files changed, 232 insertions(+), 25 deletions(-)

It looks like we got to an agreement on how to deal with tagged user
addresses between SPARC ADI and ARM Memory Tagging. If there are no
other objections, what's your preferred way of getting this series into
-next first and then mainline? Are you ok to merge them into the mm
tree?

Thanks.

--
Catalin