Skip to contentSkip to conversation

cfq v2 switch bug

PATCH New Jens Axboe 1 participant 1 message Oct 27, 2004 Block layer

lore
Share & tools
lore

Jens Axboe

author
#0 lore raw

PATCH 1/1 cfq v2 switch bug

Hi,

Fix online switching issue with cfq v2. It does deferred clearing of e->elevator_data, which screws up the current io scheduler. It does not have to, so just remove it.

drivers/block/cfq-iosched.c renamed from opt/kernel/linux-2.6.9-mm1/drivers/block/cfq-iosched.c +0 -2
@@ -1482,7 +1482,6 @@
 static void cfq_put_cfqd(struct cfq_data *cfqd)
 {
 	request_queue_t *q = cfqd->queue;
-	elevator_t *e = q->elevator;
 	struct cfq_queue *cfqq;
 
 	if (!atomic_dec_and_test(&cfqd->ref))
@@ -1500,7 +1499,6 @@
 
 	blk_put_queue(q);
 
-	e->elevator_data = NULL;
 	mempool_destroy(cfqd->crq_pool);
 	kfree(cfqd->crq_hash);
 	kfree(cfqd->cfq_hash);
Signature · 1 line
Jens Axboe