On Fri, 2025-05-16 at 19:44 +0800, Yan Zhao wrote: > > > What do you think about relying on tdp_mmu_split_huge_pages_root() and > > > moving > > > this to an optimization patch at the end? > > > > > > Or what about just two calls to tdp_mmu_split_huge_pages_root() at the > > > boundaries? > > Though the two generally look like the same, relying on > > tdp_mmu_split_huge_pages_root() will create several minor changes scattering > > in tdp_mmu_split_huge_pages_root(). > > > > e.g. update flush after tdp_mmu_iter_cond_resched(), check > > iter_split_required(), set "iter.yielded = true". > > > > So, it may be hard to review as a initial RFC. > > > > I prefer to do that after Paolo and Sean have taken a look of it :) > > Oh, I might misunderstood your meaning. > Yes, if necessary, we can provide a separate patch at the end to combine code > of > tdp_mmu_split_huge_pages_root() and tdp_mmu_split_boundary_leafs(). Hmm, I'm not sure if they will look at this version or wait until Intel folks work through it a bit. As for reviewability, the log could simply explain that tdp_mmu_split_huge_pages_root() is the simple option and an optimization patch will follow. I think it's helpful to separate optimization from implementation. It can be confusing what is for which purpose.