On Thu, Jun 24, 2021 at 07:37:30PM +0100, Matthew Wilcox wrote: > On Wed, Jun 23, 2021 at 11:27:12AM +0200, Christoph Hellwig wrote: > > On Tue, Jun 22, 2021 at 01:15:32PM +0100, Matthew Wilcox (Oracle) wrote: > > > Turn __set_page_dirty() into a wrapper around __folio_mark_dirty() (which > > > can directly cast from page to folio because we know that set_page_dirty() > > > calls filesystems with the head page). Convert account_page_dirtied() > > > into folio_account_dirtied() and account the number of pages in the folio. > > > > Is it really worth micro-optimizing a transitional function like that? > > I'd rather eat the overhead of the compound_page() call over adding hacky > > casts like this. > > Fair enough. There's only three calls to it and one of them goes away > this series. The other option would be a helper that asserts a page is not a tail page and then do the cast to document the assumptions.