Commit 3795f46b authored by Christophe JAILLET's avatar Christophe JAILLET Committed by Linus Torvalds

mm/frontswap.c: use non-atomic '__set_bit()' when possible

The 'a' and 'b' bitmaps are local to this function, so no concurrent
access can occur.  So the non-atomic '__set_bit()' can be used to save a
few cycles.

Link: https://lkml.kernel.org/r/e52476da5cee57151745c5c3c934a69798dc6fa4.1638132190.git.christophe.jaillet@wanadoo.frSigned-off-by: default avatarChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 62c9827c
...@@ -127,7 +127,7 @@ void frontswap_register_ops(struct frontswap_ops *ops) ...@@ -127,7 +127,7 @@ void frontswap_register_ops(struct frontswap_ops *ops)
spin_lock(&swap_lock); spin_lock(&swap_lock);
plist_for_each_entry(si, &swap_active_head, list) { plist_for_each_entry(si, &swap_active_head, list) {
if (!WARN_ON(!si->frontswap_map)) if (!WARN_ON(!si->frontswap_map))
set_bit(si->type, a); __set_bit(si->type, a);
} }
spin_unlock(&swap_lock); spin_unlock(&swap_lock);
...@@ -149,7 +149,7 @@ void frontswap_register_ops(struct frontswap_ops *ops) ...@@ -149,7 +149,7 @@ void frontswap_register_ops(struct frontswap_ops *ops)
spin_lock(&swap_lock); spin_lock(&swap_lock);
plist_for_each_entry(si, &swap_active_head, list) { plist_for_each_entry(si, &swap_active_head, list) {
if (si->frontswap_map) if (si->frontswap_map)
set_bit(si->type, b); __set_bit(si->type, b);
} }
spin_unlock(&swap_lock); spin_unlock(&swap_lock);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment