Searched hist:"3 f19cd23" (Results 1 – 1 of 1) sorted by relevance
/openbmc/linux/block/ |
H A D | blk-wbt.c | 3f19cd23 Tue Apr 11 04:29:01 CDT 2017 Jan Kara <jack@suse.cz> block: Fix list corruption of blk stats callback list
When CFQ calls wbt_disable_default(), it will call blk_stat_remove_callback() to stop gathering IO statistics for the purposes of writeback throttling. Later, when request_queue is unregistered, wbt_exit() will call blk_stat_remove_callback() again which will try to delete callback from the list again and possibly cause list corruption.
Fix the problem by making wbt_disable_default() called wbt_exit() which is properly guarded against being called multiple times.
Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Jens Axboe <axboe@fb.com> 3f19cd23 Tue Apr 11 04:29:01 CDT 2017 Jan Kara <jack@suse.cz> block: Fix list corruption of blk stats callback list When CFQ calls wbt_disable_default(), it will call blk_stat_remove_callback() to stop gathering IO statistics for the purposes of writeback throttling. Later, when request_queue is unregistered, wbt_exit() will call blk_stat_remove_callback() again which will try to delete callback from the list again and possibly cause list corruption. Fix the problem by making wbt_disable_default() called wbt_exit() which is properly guarded against being called multiple times. Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Jens Axboe <axboe@fb.com>
|