Re: [PATCHv3] lib/ratelimit: Lockless ratelimiting

2018-08-21 Thread Dmitry Safonov
Hi Petr, thanks for review, On Wed, 2018-08-15 at 17:10 +0200, Petr Mladek wrote: > On Tue 2018-07-03 23:56:28, Dmitry Safonov wrote: > > Currently ratelimit_state is protected with spin_lock. If the .lock > > is > > taken at the moment of ___ratelimit() call, the message

Re: [PATCHv3] lib/ratelimit: Lockless ratelimiting

2018-08-03 Thread Dmitry Safonov
Hi Steven, Thanks for your reply, On Wed, 2018-08-01 at 21:48 -0400, Steven Rostedt wrote: > I'm just catching up from my vacation. What about making rs->missed > into an atomic, and have: > > if (!raw_spin_trylock_irqsave(&rs->lock, flags)) { > atomic_inc(&rs->missed); >

Re: [PATCHv3] lib/ratelimit: Lockless ratelimiting

2018-07-23 Thread Dmitry Safonov
On Fri, 2018-07-20 at 17:09 +0200, Petr Mladek wrote: > > > On Tue, 2018-07-03 at 23:56 +0100, Dmitry Safonov wrote: > > > > Currently ratelimit_state is protected with spin_lock. If the > > > > .lock > > > > is > > > > taken at the moment

Re: [PATCHv3] lib/ratelimit: Lockless ratelimiting

2018-07-17 Thread Dmitry Safonov
I would be glad if someone helps/bothers to review the change :C Thanks, Dmitry On Tue, 2018-07-03 at 23:56 +0100, Dmitry Safonov wrote: > Currently ratelimit_state is protected with spin_lock. If the .lock > is > taken at the moment of ___ratelimit() call, the message is suppressed &g

Re: [PATCHv2] lib/ratelimit: Lockless ratelimiting

2018-07-04 Thread Dmitry Safonov
On Tue, 2018-06-26 at 21:41 +0300, Andy Shevchenko wrote: > > > > @@ -42,9 +41,10 @@ static inline void > > > > ratelimit_state_init(struct > > > > ratelimit_state *rs, > > > > { > > > > memset(rs, 0, sizeof(*rs)); > > > > > > > > - raw_spin_lock_init(&rs->lock); > > > > rs-

[PATCHv3] lib/ratelimit: Lockless ratelimiting

2018-07-04 Thread Dmitry Safonov
i Nikula Cc: Joonas Lahtinen Cc: Rodrigo Vivi Cc: "Theodore Ts'o" Cc: Thomas Gleixner Cc: intel-...@lists.freedesktop.org Cc: dri-devel@lists.freedesktop.org Signed-off-by: Dmitry Safonov --- drivers/char/random.c| 28 --- drivers/gpu/dr

[PATCHv2] lib/ratelimit: Lockless ratelimiting

2018-06-27 Thread Dmitry Safonov
Lesser than burst Dropped dev/random patch since v1 version: lkml.kernel.org/r/<20180510125211.12583-1-d...@arista.com> Cc: Arnd Bergmann Cc: David Airlie Cc: Dmitry Safonov <0x7f454...@gmail.com> Cc: Greg Kroah-Hartman Cc: Jani Nikula Cc: Joonas Lahtinen Cc: Rodrigo

Re: [PATCHv2] lib/ratelimit: Lockless ratelimiting

2018-06-27 Thread Dmitry Safonov
Hi Andy, thanks for the review, On Tue, 2018-06-26 at 20:04 +0300, Andy Shevchenko wrote [..] > > #define RATELIMIT_STATE_INIT(name, interval_init, burst_init) > > {\ > > - .lock = > > __RAW_SPIN_LOCK_UNLOCKED(name.lock), \ > > name is now redundant, isn'

[PATCH 2/2] lib/ratelimit: Lockless ratelimiting

2018-05-11 Thread Dmitry Safonov
Jani Nikula Cc: Joonas Lahtinen Cc: Rodrigo Vivi Cc: "Theodore Ts'o" Cc: Thomas Gleixner Cc: intel-...@lists.freedesktop.org Cc: dri-devel@lists.freedesktop.org Signed-off-by: Dmitry Safonov --- drivers/char/random.c| 16 --- drivers/gpu/drm/i915/i915_perf

[PATCH 0/2] ratelimit: Do not lose messages under limit

2018-05-11 Thread Dmitry Safonov
issue will require adding timers to print "suppressed" message and care if ratelimit is on stack and no more exists. Which looks too much at this point. Dmitry Safonov (2): random: Omit double-printing ratelimit messages lib/ratelimit: Lockless ratelimiting drivers/char/rand