blk-mq: bitmap tag: remove barrier in bt_clear_tag()
authorMing Lei <tom.leiming@gmail.com>
Sat, 10 May 2014 17:01:49 +0000 (01:01 +0800)
committerJens Axboe <axboe@fb.com>
Sat, 10 May 2014 21:42:13 +0000 (15:42 -0600)
The barrier isn't necessary because both atomic_dec_and_test()
and wake_up() implicate one barrier.

Signed-off-by: Ming Lei <tom.leiming@gmail.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
block/blk-mq-tag.c

index a81b138..5a83d8e 100644 (file)
@@ -244,7 +244,6 @@ static void bt_clear_tag(struct blk_mq_bitmap_tags *bt, unsigned int tag)
 
        bs = bt_wake_ptr(bt);
        if (bs && atomic_dec_and_test(&bs->wait_cnt)) {
-               smp_mb__after_clear_bit();
                atomic_set(&bs->wait_cnt, bt->wake_cnt);
                bt_index_inc(&bt->wake_index);
                wake_up(&bs->wait);