On Sat, Sep 01, 2018 at 07:28:23PM +0800, Fengguang Wu wrote: > Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx> > --- > arch/x86/kvm/Kconfig | 11 +++++++++++ > arch/x86/kvm/Makefile | 4 ++++ > 2 files changed, 15 insertions(+) > > diff --git a/arch/x86/kvm/Kconfig b/arch/x86/kvm/Kconfig > index 1bbec387d289..4c6dec47fac6 100644 > --- a/arch/x86/kvm/Kconfig > +++ b/arch/x86/kvm/Kconfig > @@ -96,6 +96,17 @@ config KVM_MMU_AUDIT > This option adds a R/W kVM module parameter 'mmu_audit', which allows > auditing of KVM MMU events at runtime. > > +config KVM_EPT_IDLE > + tristate "KVM EPT idle page tracking" KVM_MMU_IDLE_INTEL might be a more user friendly name, I doubt that all Kconfig users would immediately associate EPT with Intel's two dimensional paging. And it meshes nicely with KVM_MMU_IDLE as a base name if we ever want to move common functionality to its own module, as well as all of the other KVM_MMU_* nomenclature. > + depends on KVM_INTEL > + depends on PROC_PAGE_MONITOR > + ---help--- > + Provides support for walking EPT to get the A bits on Intel > + processors equipped with the VT extensions. > + > + To compile this as a module, choose M here: the module > + will be called kvm-ept-idle. > + > # OK, it's a little counter-intuitive to do this, but it puts it neatly under > # the virtualization menu. > source drivers/vhost/Kconfig > diff --git a/arch/x86/kvm/Makefile b/arch/x86/kvm/Makefile > index dc4f2fdf5e57..5cad0590205d 100644 > --- a/arch/x86/kvm/Makefile > +++ b/arch/x86/kvm/Makefile > @@ -19,6 +19,10 @@ kvm-y += x86.o mmu.o emulate.o i8259.o irq.o lapic.o \ > kvm-intel-y += vmx.o pmu_intel.o > kvm-amd-y += svm.o pmu_amd.o > > +kvm-ept-idle-y += ept_idle.o > + > obj-$(CONFIG_KVM) += kvm.o > obj-$(CONFIG_KVM_INTEL) += kvm-intel.o > obj-$(CONFIG_KVM_AMD) += kvm-amd.o > + > +obj-$(CONFIG_KVM_EPT_IDLE) += kvm-ept-idle.o > -- > 2.15.0 > > >