lkml.org 
[lkml]   [2010]   [Aug]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v2 5/5] KVM: MMU: lower the aduit frequency
    On 08/30/2010 11:47 PM, Marcelo Tosatti wrote:
    > On Mon, Aug 30, 2010 at 06:26:33PM +0800, Xiao Guangrong wrote:
    >> The audit is very high overhead, so we need lower the frequency to assure the guest running
    >>
    >> Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
    >> ---
    >> arch/x86/kvm/mmu_audit.c | 7 +++++++
    >> 1 files changed, 7 insertions(+), 0 deletions(-)
    >>
    >> diff --git a/arch/x86/kvm/mmu_audit.c b/arch/x86/kvm/mmu_audit.c
    >> index 3bde186..bd2b1be 100644
    >> --- a/arch/x86/kvm/mmu_audit.c
    >> +++ b/arch/x86/kvm/mmu_audit.c
    >> @@ -17,6 +17,8 @@
    >> *
    >> */
    >>
    >> +#include <linux/ratelimit.h>
    >> +
    >> static const char *audit_msg;
    >>
    >> typedef void (*inspect_spte_fn) (struct kvm_vcpu *vcpu, u64 *sptep, int level);
    >> @@ -228,6 +230,11 @@ static void audit_vcpu_spte(struct kvm_vcpu *vcpu)
    >>
    >> static void kvm_mmu_audit(void *ignore, struct kvm_vcpu *vcpu, int audit_point)
    >> {
    >> + static DEFINE_RATELIMIT_STATE(ratelimit_state, 5 * HZ, 10);
    >> +
    >> + if (!__ratelimit(&ratelimit_state))
    >> + return;
    >> +
    >> audit_msg = audit_point_name[audit_point];
    >> audit_all_active_sps(vcpu->kvm);
    >> audit_vcpu_spte(vcpu);
    >> --
    >> 1.7.0.4
    >
    > Well, as Avi said this makes it difficult to trace back to offender (the
    > audit points are placed around modifications to the shadow page tree
    > for that reason).
    >

    Yeah. it's the best way that not rate limit it, but...

    > I've always seen progress from the guest while running with audit
    > enabled (its slow, but its not supposed to be fast anyway).
    >
    > Did you experience a freeze?
    >

    There is a simply test in the guest if it's not rate limit:

    # time ls
    anaconda-ks.cfg Documents install.log Music Public Videos
    Desktop Downloads install.log.syslog Pictures Templates

    real 1m26.053s
    user 0m0.311s
    sys 0m1.813s

    'ls' command cost about 1.5 minute, if we run the memory test program, i think
    the time/delay is unacceptable...... :-(


    \
     
     \ /
      Last update: 2010-08-31 04:25    [W:0.030 / U:29.996 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site