

Fix outrageous writes-starve-writes problem caused by non-equivalent
transformation in the previous patch.



 drivers/block/as-iosched.c |    2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)

diff -puN drivers/block/as-iosched.c~as-cleanup-3-write-latency-fix drivers/block/as-iosched.c
--- 25/drivers/block/as-iosched.c~as-cleanup-3-write-latency-fix	2003-02-27 00:48:27.000000000 -0800
+++ 25-akpm/drivers/block/as-iosched.c	2003-02-27 01:07:03.000000000 -0800
@@ -359,7 +359,6 @@ static void as_remove_request(request_qu
 
 		list_del_init(&arq->fifo);
 		as_del_arq_hash(arq);
-		as_del_arq_rb(ad, arq);
 		
 		/*
 		 * Update the "next_arq" cache as we are about to remove its
@@ -383,6 +382,7 @@ static void as_remove_request(request_qu
 			ad->next_arq[data_dir] = as_choose_req(ad,
 						arq_next, arq_prev);
 		}
+		as_del_arq_rb(ad, arq);
 	}
 
 	if (q->last_merge == &rq->queuelist)

_
