On Fri, 15 Sep 2023 18:28:25 +0100 "Matthew Wilcox (Oracle)" <willy@xxxxxxxxxxxxx> wrote: > We introduced arch_make_folio_accessible() a couple of years > ago, and it's in use in the page writeback path. GUP still uses > arch_make_page_accessible(), which means that we can succeed in making > a single page of a folio accessible, then fail to make the rest of the > folio accessible when it comes time to do writeback and it's too late > to do anything about it. I'm not sure how much of a real problem this is. > > Switching everything around to arch_make_folio_accessible() also lets > us switch the page flag to be per-folio instead of per-page, which is > a good step towards dynamically allocated folios. > > Build-tested only. > > Matthew Wilcox (Oracle) (3): > mm: Use arch_make_folio_accessible() in gup_pte_range() > mm: Convert follow_page_pte() to use a folio > s390: Convert arch_make_page_accessible() to > arch_make_folio_accessible() > > arch/s390/include/asm/page.h | 5 ++-- > arch/s390/kernel/uv.c | 46 +++++++++++++++++++++++------------- > arch/s390/mm/fault.c | 15 ++++++------ > include/linux/mm.h | 20 ++-------------- > mm/gup.c | 22 +++++++++-------- > 5 files changed, 54 insertions(+), 54 deletions(-) > if I understand correctly, this will as a matter of fact move the security property from pages to folios. this means that trying to access a page will (try to) make the whole folio accessible, even though that might be counterproductive.... and there is no way to simply split a folio I don't like this there are also other reasons, but I don't have time to go into the details on a Friday evening (will elaborate more on Monday)