On 4/16/20 9:34 AM, Claudio Imbrenda wrote: >> Ahh, so this is *just* intended to precede I/O done on the page, when >> a non-host entity is touching the memory? > yep OK, so we've got to do an action that precedes *all* I/O to a page. That's not too bad. I still don't understand how this could work generally, though There are lots of places where I/O is done to a page without either going through __test_set_page_writeback() or gup() with FOLL_PIN set. sendfile() is probably the best example of this: fd = open("/normal/ext4/file", O_RDONLY); sendfile(socket_fd, fd, &off, count); There's no gup in sight since the file doesn't have an address and it's not being written to so there's no writeback. How does sendfile work?