On Thu, Nov 17, 2022 at 2:58 PM Kees Cook keescook@chromium.org wrote:
Oh, er, why does get_arg_page() even need FOLL_FORCE? This is writing the new stack contents to the nascent brpm->vma, which was newly allocated with VM_STACK_FLAGS, which an arch can override, but they all appear to include VM_WRITE | VM_MAYWRITE.
Yeah, it does seem entirely superfluous.
It's been there since the very beginning (although in that original commit b6a2fea39318 it was there as a '1' to the 'force' argument to get_user_pages()).
I *think* it can be just removed. But as long as it exists, it should most definitely not be renamed to FOLL_PTRACE.
There's a slight worry that it currently hides some other setup issue that makes it matter, since it's been that way so long, but I can't see what it is.
Linus