On Tue, 2016-07-05 at 15:49 -0400, Steven Rostedt wrote: > On Tue, 5 Jul 2016 21:42:45 +0200 Borislav Petkov <b...@alien8.de> wrote: > > On Tue, Jul 05, 2016 at 02:57:32PM -0400, Steven Rostedt wrote: > > > Perhaps we should show both, unless you don't think this will ever be > > > used by anything other than devkmsg? > > I'd say let's do it only when we go down that road and start using it > > for something else. > > > > Because, for example, the ratelimiting thing is, in fact, generic but it > > is used primarily to ratelimit printks. Even though it could be used for > > something else, theoretically... > > > But you know... Build it and they will come.
arch/s390/kvm/kvm-s390.c: ratelimit_state_init(&kvm->arch.sthyi_limit, 5 * HZ, 500); As far as I know, _ratelimit is used for non-printk purposes in arch/s390/kvm/sthyi.c int handle_sthyi(struct kvm_vcpu *vcpu) { int reg1, reg2, r = 0; u64 code, addr, cc = 0; struct sthyi_sctns *sctns = NULL; /* * STHYI requires extensive locking in the higher hypervisors * and is very computational/memory expensive. Therefore we * ratelimit the executions per VM. */ if (!__ratelimit(&vcpu->kvm->arch.sthyi_limit)) { kvm_s390_retry_instr(vcpu); return 0; }