On Mon, Feb 10, 2025 at 11:33:47AM +0900, Harry (Hyeonggon) Yoo wrote: > > Premise: Some ZONE_NORMAL capacity exists on CXL memory > due to its large capacity. > What you actually need to show to justify increasing the complexity is (at least - but not limited to) 1) structures you want to migrate are harmful when placed on slow memory ex) Is `struct page` on slow mem actually harmful? - no data? ex) Are page tables on slow mem actually harmful? - known, yes. 2) The structures cannot be made to take up less space on local tier ex) struct page can be shrunk - do that first ex) huge-pages can be deployed - do that first 3) the structures take up sufficient space that it matters ex) struct page after shrunk might not - do that first ex) page tables with multi-sized huge pages may not - do that first 4) Making the structures migratable actually does something useful are `struct page` or page tables after #2 and #3 both: a) going through hot/cold phases enough to warrant being tiered b) hot enough for long enough that migration matters? You can probably actually (maybe?) collect data on this today - but you still have to contend with #2 and #3. > > I don't understand why we shouldn't introduce more kernel movable memory > if that turns out to be beneficial? > No one is going to stop research you want to do. I'm simply expressing that I think it's an ill-advised path to take. ~Gregory