Re: [PATCH v5] mm/gup: disallow GUP writing to file-backed mappings by default

From: David Hildenbrand
Date: Fri Apr 28 2023 - 11:24:35 EST



Security is the primary case where we have historically closed uAPI
items.

As this patch

1) Does not tackle GUP-fast
2) Does not take care of !FOLL_LONGTERM

I am not convinced by the security argument in regard to this patch.


If we want to sells this as a security thing, we have to block it
*completely* and then CC stable.

Regarding GUP-fast, to fix the issue there as well, I guess we could do something similar as I did in gup_must_unshare():

If we're in GUP-fast (no VMA), and want to pin a !anon page writable, fallback to ordinary GUP. IOW, if we don't know, better be safe.

Of course, this would prevent hugetlb/shmem from getting pinned writable during gup-fast. Unless we're able to whitelist them somehow in there.


For FOLL_LONGTERM it might fairly uncontroversial. For everything else I'm not sure if there could be undesired side-effects.

--
Thanks,

David / dhildenb