From Jens.  Non-block requests have uninitialised rbtree info.


 drivers/block/as-iosched.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletion(-)

diff -puN drivers/block/as-iosched.c~as-eject-BUG-fix drivers/block/as-iosched.c
--- 25/drivers/block/as-iosched.c~as-eject-BUG-fix	2003-03-16 00:15:57.000000000 -0800
+++ 25-akpm/drivers/block/as-iosched.c	2003-03-16 00:15:57.000000000 -0800
@@ -1341,7 +1341,10 @@ as_insert_request(request_queue_t *q, st
 			insert_here = ad->dispatch->prev;
 
 		list_add(&rq->queuelist, insert_here);
-		
+
+		if (arq)
+			RB_CLEAR(&arq->rb_node);
+
 		if (!list_empty(ad->dispatch) && rq_data_dir(rq) == READ
 			&& (ad->antic_status == ANTIC_WAIT_REQ
 				|| ad->antic_status == ANTIC_WAIT_NEXT))

_