diff options
author | Davidlohr Bueso <dave@stgolabs.net> | 2020-01-29 10:10:41 -0800 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2020-01-29 19:50:44 +0100 |
commit | fe66483156050f4eb63c4a1988f3b439e6c9ff2a (patch) | |
tree | 4dcdf4da5fe67f3fb5b350be6b228798351485c0 | |
parent | 6c08fc896b60893c5d673764b0668015d76df462 (diff) | |
download | linux-stable-fe66483156050f4eb63c4a1988f3b439e6c9ff2a.tar.gz linux-stable-fe66483156050f4eb63c4a1988f3b439e6c9ff2a.tar.bz2 linux-stable-fe66483156050f4eb63c4a1988f3b439e6c9ff2a.zip |
Bluetooth: optimize barrier usage for Rmw atomics
Use smp_mb__before_atomic() instead of smp_mb() and avoid the
unnecessary barrier for non LL/SC architectures, such as x86.
Signed-off-by: Davidlohr Bueso <dbueso@suse.de>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
-rw-r--r-- | net/bluetooth/hidp/core.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/bluetooth/hidp/core.c b/net/bluetooth/hidp/core.c index bef84b95e2c4..3b4fa27a44e6 100644 --- a/net/bluetooth/hidp/core.c +++ b/net/bluetooth/hidp/core.c @@ -1279,7 +1279,7 @@ static int hidp_session_thread(void *arg) add_wait_queue(sk_sleep(session->intr_sock->sk), &intr_wait); /* This memory barrier is paired with wq_has_sleeper(). See * sock_poll_wait() for more information why this is needed. */ - smp_mb(); + smp_mb__before_atomic(); /* notify synchronous startup that we're ready */ atomic_inc(&session->state); |