Thanks for a lot of valuable input! I've read through all the replies and got somewhat lost. What are the changes I need to do to this series? 1. Should I move untagging for memory syscalls back to the generic code so other arches would make use of it as well, or should I keep the arm64 specific memory syscalls wrappers and address the comments on that patch? 2. Should I make untagging opt-in and controlled by a command line argument? 3. Should I "add Documentation/core-api/user-addresses.rst to describe proper care and handling of user space pointers with untagged_addr(), with examples based on all the cases seen so far in this series"? Which examples specifically should it cover? Is there something else?