On Fri, Apr 29, 2022, Paolo Bonzini wrote: > > +out: > > + local_irq_restore(flags); > > + return level; > > +} > > +EXPORT_SYMBOL_GPL(kvm_lookup_address_level_in_mm); > > Exporting is not needed. > > Thanks for writing the walk code though. I'll adapt it and integrate the > patch. But why are we fixing this only in KVM? I liked the idea of stealing perf's implementation because it was a seemlingly perfect fit and wouldn't introduce new code (ignoring wrappers, etc...). We _know_ that at least one subsystem is misusing lookup_address_in_pgd() and given that its wrappers are exported, I highly doubt KVM is the only offender. It really feels like we're passing the buck here by burying the fix in KVM.