diff options
author | Turbo Fredriksson <[email protected]> | 2014-09-14 15:47:22 +0000 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2014-09-22 16:24:55 -0700 |
commit | e3020723dc43af2bc22af0d68571a61daf9b44d0 (patch) | |
tree | 816a6aebbdff5cbcfb0590780a25c13b7dd5eefe /module/spl/spl-kmem.c | |
parent | f9bde4f74be5e5030571415d9c869400dff3eda6 (diff) |
Linux 3.16 compat: smp_mb__after_clear_bit()
The smp_mb__{before,after}_clear_bit functions have been renamed
smp_mb__{before,after}_atomic. Rather than adding a compatibility
function to handle this the code has been updated to use smp_wmb().
This has the advantage of being a stable functionally equivalent
interface. On many architectures smp_mb__after_clear_bit() expands
to smp_wmb(). Others might be able to do something slightly more
efficient but this will be safe and correct on all of them.
Signed-off-by: Turbo Fredriksson <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Closes #386
Diffstat (limited to 'module/spl/spl-kmem.c')
-rw-r--r-- | module/spl/spl-kmem.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/module/spl/spl-kmem.c b/module/spl/spl-kmem.c index 6de513e45..79954eb2a 100644 --- a/module/spl/spl-kmem.c +++ b/module/spl/spl-kmem.c @@ -2365,7 +2365,7 @@ spl_kmem_cache_reap_now(spl_kmem_cache_t *skc, int count) spl_slab_reclaim(skc, count, 1); clear_bit(KMC_BIT_REAPING, &skc->skc_flags); - smp_mb__after_clear_bit(); + smp_wmb(); wake_up_bit(&skc->skc_flags, KMC_BIT_REAPING); out: atomic_dec(&skc->skc_ref); |