On Fri, Mar 22, 2019 at 12:44 PM Catalin Marinas <catalin.marinas@xxxxxxx> wrote: > > On Wed, Mar 20, 2019 at 03:51:18PM +0100, Andrey Konovalov wrote: > > This patch is a part of a series that extends arm64 kernel ABI to allow to > > pass tagged user pointers (with the top byte set to something else other > > than 0x00) as syscall arguments. > > > > This patch allows tagged pointers to be passed to the following memory > > syscalls: madvise, mbind, get_mempolicy, mincore, mlock, mlock2, brk, > > mmap_pgoff, old_mmap, munmap, remap_file_pages, mprotect, pkey_mprotect, > > mremap, msync and shmdt. > > > > This is done by untagging pointers passed to these syscalls in the > > prologues of their handlers. > > > > Signed-off-by: Andrey Konovalov <andreyknvl@xxxxxxxxxx> > > --- > > ipc/shm.c | 2 ++ > > mm/madvise.c | 2 ++ > > mm/mempolicy.c | 5 +++++ > > mm/migrate.c | 1 + > > mm/mincore.c | 2 ++ > > mm/mlock.c | 5 +++++ > > mm/mmap.c | 7 +++++++ > > mm/mprotect.c | 1 + > > mm/mremap.c | 2 ++ > > mm/msync.c | 2 ++ > > 10 files changed, 29 insertions(+) > > I wonder whether it's better to keep these as wrappers in the arm64 > code. I don't think I understand what you propose, could you elaborate?