On Tue, Jan 7, 2020 at 5:20 PM Sean Christopherson <sean.j.christopherson@xxxxxxxxx> wrote: > > On Tue, Jan 07, 2020 at 02:19:06PM -0500, Barret Rhoden wrote: > > On 1/7/20 2:05 PM, Sean Christopherson wrote: > > >Hopefully you haven't put too much effort into the rework, because I want > > >to commandeer the proposed changes and use them as the basis for a more > > >aggressive overhaul of KVM's hugepage handling. Ironically, there's a bug > > >in KVM's THP handling that I _think_ can be avoided by using the DAX > > >approach of walking the host PTEs. > > > > > >I'm in the process of testing, hopefully I'll get a series sent out later > > >today. If not, I should at least be able to provide an update. > > > > Nice timing. I was just about to get back to this, so I haven't put any > > time in yet. =) > > > > Please CC me, and I'll try your patches out on my end. > > Will do. Barring last minute hiccups, the code is ready, just need to > finish off a few changelogs. Should get it out early tomorrow. > > One question that may help avoid some churn: are huge DAX pages not > tracked as compound pages? The comment from your/this patch is pretty > unequivocal, but I wanted to double check that they will really return > false for PageCompound(), as opposed to only returning false for > PageTransCompoundMap(). PageCompound() returns false. > > /* > * DAX pages do not use compound pages. ... > */ > None of the head / tail page infrastructure is set up for dax pages. They are just independent 'struct page' objects that are opportunistically mapped by different pte sizes in the dax core.