On Thu, Jan 26, 2023 at 08:23:46PM +0000, Matthew Wilcox (Oracle) wrote: > fscrypt_is_bounce_folio() is the equivalent of fscrypt_is_bounce_page() > and fscrypt_pagecache_folio() is the equivalent of fscrypt_pagecache_page(). > > Signed-off-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx> > --- > include/linux/fscrypt.h | 21 +++++++++++++++++++++ > 1 file changed, 21 insertions(+) > > diff --git a/include/linux/fscrypt.h b/include/linux/fscrypt.h > index 4f5f8a651213..c2c07d36fb3a 100644 > --- a/include/linux/fscrypt.h > +++ b/include/linux/fscrypt.h > @@ -273,6 +273,16 @@ static inline struct page *fscrypt_pagecache_page(struct page *bounce_page) > return (struct page *)page_private(bounce_page); > } > > +static inline bool fscrypt_is_bounce_folio(struct folio *folio) > +{ > + return folio->mapping == NULL; > +} > + > +static inline struct folio *fscrypt_pagecache_folio(struct folio *bounce_folio) > +{ > + return bounce_folio->private; > +} ext4_bio_write_folio() is still doing: bounce_page = fscrypt_encrypt_pagecache_blocks(&folio->page, ...); Should it be creating a "bounce folio" instead, or is that not in the scope of this patchset? - Eric