|
@@ -3087,7 +3087,8 @@ cfq_drop_dead_cic(struct cfq_data *cfqd, struct io_context *ioc,
|
|
|
|
|
|
spin_lock_irqsave(&ioc->lock, flags);
|
|
|
|
|
|
- BUG_ON(ioc->ioc_data == cic);
|
|
|
+ BUG_ON(rcu_dereference_check(ioc->ioc_data,
|
|
|
+ lockdep_is_held(&ioc->lock)) == cic);
|
|
|
|
|
|
radix_tree_delete(&ioc->radix_root, cfqd->cic_index);
|
|
|
hlist_del_rcu(&cic->cic_list);
|