Re: [PATCH] locking/static_key: Fix false positive warnings on concurrent dec/inc

2019-03-20 Thread Peter Zijlstra
On Tue, Mar 19, 2019 at 10:46:57AM -0700, Jakub Kicinski wrote: > That indeed looks far cleanest, thanks! > > Tested-by: Jakub Kicinski Thanks, I've made it into the below patch. --- Subject: locking/static_key: Fix false positive warnings on concurrent dec/inc From: Peter Zijlstra Date: Tue

Re: [PATCH] locking/static_key: Fix false positive warnings on concurrent dec/inc

2019-03-19 Thread Jakub Kicinski
Thanks for looking at the patch! On Tue, 19 Mar 2019 13:18:56 +0100, Peter Zijlstra wrote: > On Mon, Mar 18, 2019 at 02:58:14PM -0700, Jakub Kicinski wrote: > > Even though the atomic_dec_and_mutex_lock() in > > __static_key_slow_dec_cpuslocked() can never see a negative > > value in key->enabled

Re: [PATCH] locking/static_key: Fix false positive warnings on concurrent dec/inc

2019-03-19 Thread Peter Zijlstra
On Mon, Mar 18, 2019 at 02:58:14PM -0700, Jakub Kicinski wrote: > Even though the atomic_dec_and_mutex_lock() in > __static_key_slow_dec_cpuslocked() can never see a negative > value in key->enabled the subsequent sanity check is re-reading > key->enabled, which may have been set to -1 in the meant

[PATCH] locking/static_key: Fix false positive warnings on concurrent dec/inc

2019-03-18 Thread Jakub Kicinski
Even though the atomic_dec_and_mutex_lock() in __static_key_slow_dec_cpuslocked() can never see a negative value in key->enabled the subsequent sanity check is re-reading key->enabled, which may have been set to -1 in the meantime by static_key_slow_inc_cpuslocked(). Instead of using -1 as a "enab