Message ID | 1525131328-27086-1-git-send-email-wanpengli@tencent.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
ping, 2018-05-01 7:35 GMT+08:00 Wanpeng Li <kernellwp@gmail.com>: > From: Wanpeng Li <wanpengli@tencent.com> > > Anthoine reported: > The period used by Windows change over time but it can be 1 milliseconds > or less. I saw the limit_periodic_timer_frequency print so 500 > microseconds is sometimes reached. > > As suggested by Paolo, lower the timer frequency limit to a > smaller interval of 200 ms (5000 Hz) to leave some headroom. This > is required due to Windows 10 changing the scheduler tick limit > from 1024 Hz to 2048 Hz. > > Reported-by: Anthoine Bourgeois <anthoine.bourgeois@blade-group.com> > Suggested-by: Paolo Bonzini <pbonzini@redhat.com> > Reviewed-by: Darren Kenny <darren.kenny@oracle.com> > Cc: Paolo Bonzini <pbonzini@redhat.com> > Cc: Radim Krčmář <rkrcmar@redhat.com> > Cc: Anthoine Bourgeois <anthoine.bourgeois@blade-group.com> > Cc: Darren Kenny <darren.kenny@oracle.com> > Signed-off-by: Wanpeng Li <wanpengli@tencent.com> > --- > v1 -> v2: > * update patch subject and description > > arch/x86/kvm/x86.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c > index 51ecd38..dc47073 100644 > --- a/arch/x86/kvm/x86.c > +++ b/arch/x86/kvm/x86.c > @@ -114,7 +114,7 @@ module_param(ignore_msrs, bool, S_IRUGO | S_IWUSR); > static bool __read_mostly report_ignored_msrs = true; > module_param(report_ignored_msrs, bool, S_IRUGO | S_IWUSR); > > -unsigned int min_timer_period_us = 500; > +unsigned int min_timer_period_us = 200; > module_param(min_timer_period_us, uint, S_IRUGO | S_IWUSR); > > static bool __read_mostly kvmclock_periodic_sync = true; > -- > 2.7.4 >
On 2018-05-05 01:44, Wanpeng Li wrote: > ping, > 2018-05-01 7:35 GMT+08:00 Wanpeng Li <kernellwp@gmail.com>: >> From: Wanpeng Li <wanpengli@tencent.com> >> >> Anthoine reported: >> The period used by Windows change over time but it can be 1 milliseconds >> or less. I saw the limit_periodic_timer_frequency print so 500 >> microseconds is sometimes reached. >> >> As suggested by Paolo, lower the timer frequency limit to a >> smaller interval of 200 ms (5000 Hz) to leave some headroom. This >> is required due to Windows 10 changing the scheduler tick limit >> from 1024 Hz to 2048 Hz. "... lower the *default* timer frequency limit to a smaller interval of 200 *us* ..." - same for the subject. (Amazing that even Windows 10 still uses periodic ticks.) Jan >> >> Reported-by: Anthoine Bourgeois <anthoine.bourgeois@blade-group.com> >> Suggested-by: Paolo Bonzini <pbonzini@redhat.com> >> Reviewed-by: Darren Kenny <darren.kenny@oracle.com> >> Cc: Paolo Bonzini <pbonzini@redhat.com> >> Cc: Radim Krčmář <rkrcmar@redhat.com> >> Cc: Anthoine Bourgeois <anthoine.bourgeois@blade-group.com> >> Cc: Darren Kenny <darren.kenny@oracle.com> >> Signed-off-by: Wanpeng Li <wanpengli@tencent.com> >> --- >> v1 -> v2: >> * update patch subject and description >> >> arch/x86/kvm/x86.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c >> index 51ecd38..dc47073 100644 >> --- a/arch/x86/kvm/x86.c >> +++ b/arch/x86/kvm/x86.c >> @@ -114,7 +114,7 @@ module_param(ignore_msrs, bool, S_IRUGO | S_IWUSR); >> static bool __read_mostly report_ignored_msrs = true; >> module_param(report_ignored_msrs, bool, S_IRUGO | S_IWUSR); >> >> -unsigned int min_timer_period_us = 500; >> +unsigned int min_timer_period_us = 200; >> module_param(min_timer_period_us, uint, S_IRUGO | S_IWUSR); >> >> static bool __read_mostly kvmclock_periodic_sync = true; >> -- >> 2.7.4 >> >
2018-05-05 16:36 GMT+08:00 Jan Kiszka <jan.kiszka@web.de>: > On 2018-05-05 01:44, Wanpeng Li wrote: >> ping, >> 2018-05-01 7:35 GMT+08:00 Wanpeng Li <kernellwp@gmail.com>: >>> From: Wanpeng Li <wanpengli@tencent.com> >>> >>> Anthoine reported: >>> The period used by Windows change over time but it can be 1 milliseconds >>> or less. I saw the limit_periodic_timer_frequency print so 500 >>> microseconds is sometimes reached. >>> >>> As suggested by Paolo, lower the timer frequency limit to a >>> smaller interval of 200 ms (5000 Hz) to leave some headroom. This >>> is required due to Windows 10 changing the scheduler tick limit >>> from 1024 Hz to 2048 Hz. > > "... lower the *default* timer frequency limit to a smaller interval of > 200 *us* ..." - same for the subject. Thanks Jan, I will update it. Regards, Wanpeng Li
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c index 51ecd38..dc47073 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c @@ -114,7 +114,7 @@ module_param(ignore_msrs, bool, S_IRUGO | S_IWUSR); static bool __read_mostly report_ignored_msrs = true; module_param(report_ignored_msrs, bool, S_IRUGO | S_IWUSR); -unsigned int min_timer_period_us = 500; +unsigned int min_timer_period_us = 200; module_param(min_timer_period_us, uint, S_IRUGO | S_IWUSR); static bool __read_mostly kvmclock_periodic_sync = true;