Messages in this thread Patch in this message | | | Date | Wed, 04 Jun 2003 15:08:49 -0700 | From | Andrew Morton <> | Subject | Re: DAC960 crash dequeueing request |
| |
Dave Olien wrote: > > In linux 2.5.70, with no patches applied, we've had one BUG of the form: > > kernel BUG at include/linux/blkdev.h:407! >
The below should fix it.
diff -puN drivers/block/deadline-iosched.c~deadline-hash-removal-fix drivers/block/deadline-iosched.c --- 25/drivers/block/deadline-iosched.c~deadline-hash-removal-fix 2003-06-04 00:50:36.000000000 -0700 +++ 25-akpm/drivers/block/deadline-iosched.c 2003-06-04 00:50:36.000000000 -0700 @@ -121,6 +121,15 @@ static inline void deadline_del_drq_hash __deadline_del_drq_hash(drq); } +static void +deadline_remove_merge_hints(request_queue_t *q, struct deadline_rq *drq) +{ + deadline_del_drq_hash(drq); + + if (q->last_merge == &drq->request->queuelist) + q->last_merge = NULL; +} + static inline void deadline_add_drq_hash(struct deadline_data *dd, struct deadline_rq *drq) { @@ -310,7 +319,7 @@ static void deadline_remove_request(requ struct deadline_data *dd = q->elevator.elevator_data; list_del_init(&drq->fifo); - deadline_del_drq_hash(drq); + deadline_remove_merge_hints(q, drq); deadline_del_drq_rb(dd, drq); } } _ - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |