The clearing of the XPRT_LOCKED bit has to happen after we clear
xprt->snd_task, but we don't require any extra memory barriers after
that.
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
 static void xprt_clear_locked(struct rpc_xprt *xprt)
 {
        xprt->snd_task = NULL;
-       if (!test_bit(XPRT_CLOSE_WAIT, &xprt->state)) {
-               smp_mb__before_atomic();
-               clear_bit(XPRT_LOCKED, &xprt->state);
-               smp_mb__after_atomic();
-       } else
+       if (!test_bit(XPRT_CLOSE_WAIT, &xprt->state))
+               clear_bit_unlock(XPRT_LOCKED, &xprt->state);
+       else
                queue_work(xprtiod_workqueue, &xprt->task_cleanup);
 }