• Tang Junhui's avatar
    bcache: stop writeback thread after detaching · 8d29c442
    Tang Junhui authored
    Currently, when a cached device detaching from cache, writeback thread is
    not stopped, and writeback_rate_update work is not canceled. For example,
    after the following command:
    echo 1 >/sys/block/sdb/bcache/detach
    you can still see the writeback thread. Then you attach the device to the
    cache again, bcache will create another writeback thread, for example,
    after below command:
    echo  ba0fb5cd-658a-4533-9806-6ce166d883b9 > /sys/block/sdb/bcache/attach
    then you will see 2 writeback threads.
    This patch stops writeback thread and cancels writeback_rate_update work
    when cached device detaching from cache.
    
    Compare with patch v1, this v2 patch moves code down into the register
    lock for safety in case of any future changes as Coly and Mike suggested.
    
    [edit by mlyle: commit log spelling/formatting]
    Signed-off-by: default avatarTang Junhui <tang.junhui@zte.com.cn>
    Reviewed-by: default avatarMichael Lyle <mlyle@lyle.org>
    Signed-off-by: default avatarMichael Lyle <mlyle@lyle.org>
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    8d29c442
super.c 51 KB