On 04/11/2017 03:29 AM, Jan Kara wrote: > 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 <j...@suse.cz> > --- > block/blk-wbt.c | 12 ++++-------- > 1 file changed, 4 insertions(+), 8 deletions(-) > > So this fixes the list debug errors reported by 0-day for me. It was a > pre-existing problem with wbt_disable_default().
Thanks Jan, added for 4.12. -- Jens Axboe