On Fri, Jun 02, 2023 at 09:54:08AM +0800, Peng Zhang wrote: > From: ZhangPeng <zhangpeng362@xxxxxxxxxx> > > We can replace nine implict calls to compound_head() with one by using > old_folio. However, we still need to keep old_page because we need to > know which page in the folio we are copying. Do we? It's my understanding (and I am far from an expert here ...) that the 'pte_t *' we are passed *inside hugetlbfs* is not in fact a pte pointer at all but actually a pmd or pud pointer. See how we do this: pte_t pte = huge_ptep_get(ptep); and so the page we get back is always a head page, and we can go directly to a folio. ie this is different from the THP cases.