Re: [PATCH] fs: buffer: check huge page size instead of single page for invalidatepage

From: Matthew Wilcox
Date: Wed Oct 20 2021 - 19:51:50 EST


On Wed, Oct 20, 2021 at 04:38:49PM -0700, Yang Shi wrote:
> > However, it still doesn't make too much sense to have thp_size passed
> > to do_invalidatepage(), then have PAGE_SIZE hardcoded in a BUG
> > assertion IMHO. So it seems this patch is still useful because
> > block_invalidatepage() is called by a few filesystems as well, for
> > example, ext4. Or I'm wondering whether we should call
> > do_invalidatepage() for each subpage of THP in truncate_cleanup_page()
> > since private is for each subpage IIUC.
>
> Seems no interest?

No. I have changes in this area as part of the folio patchset (where
we end up converting this to invalidate_folio). I'm not really
interested in doing anything before that, since this shouldn't be
reachable today.

> Anyway the more I was staring at the code the more I thought calling
> do_invalidatepage() for each subpage made more sense. So, something
> like the below makes sense?

Definitely not. We want to invalidate the entire folio at once.