Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4310864b9d17714e64446bfb8bc7dbcb96454475 Commit: 4310864b9d17714e64446bfb8bc7dbcb96454475 Parent: b238b3d4be04d3acf1f86ff8ad0b0e803def67ff Author: Oleg Nesterov <[EMAIL PROTECTED]> AuthorDate: Tue Oct 23 15:08:18 2007 +0200 Committer: Jens Axboe <[EMAIL PROTECTED]> CommitDate: Mon Oct 29 11:33:05 2007 +0100
cfq_exit_queue() should cancel cfq_data->unplug_work Spotted by Nick <[EMAIL PROTECTED]>, perhaps explains the first trace in http://bugzilla.kernel.org/show_bug.cgi?id=9180. cfq_exit_queue() should cancel cfqd->unplug_work before freeing cfqd. blk_sync_queue() seems unneeded, removed. Q: why cfq_exit_queue() calls cfq_shutdown_timer_wq() twice? Signed-off-by: Oleg Nesterov <[EMAIL PROTECTED]> Signed-off-by: Jens Axboe <[EMAIL PROTECTED]> --- block/cfq-iosched.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c index 54dc054..d77c971 100644 --- a/block/cfq-iosched.c +++ b/block/cfq-iosched.c @@ -2053,7 +2053,7 @@ static void cfq_shutdown_timer_wq(struct cfq_data *cfqd) { del_timer_sync(&cfqd->idle_slice_timer); del_timer_sync(&cfqd->idle_class_timer); - blk_sync_queue(cfqd->queue); + kblockd_flush_work(&cfqd->unplug_work); } static void cfq_put_async_queues(struct cfq_data *cfqd) - To unsubscribe from this list: send the line "unsubscribe git-commits-head" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html