"Kiryl Shutsemau (Meta)" <[email protected]>: > +/* > + * Test that GUP resolves through protnone PTEs (async mode). > + * vmsplice() into a pipe pins user pages via get_user_pages_fast() -- > + * unlike write(), which goes through copy_from_user() and ordinary > + * hardware page faults -- so it exercises gup_can_follow_protnone() on > + * the RW-protected PTE. In async mode the kernel auto-restores > + * permissions and GUP returns the page. > + */
Note that I recently submitted a patch, which makes vmsplice equivalent to preadv2/pwritev2, and it was accepted to next. For now it is just an experiment, it is possible it will be reverted. https://lore.kernel.org/all/20260601-aufweichen-dissens-ausrechnen-0d9b84728113@brauner/ -- Askar Safin

