0) get request on a.n.other block device queue
1) take it off original queue
2) rewrite req->re_dev = target and
for all bh in req, bh->b_dev = bh->b_rdev = target;
3) put req on target queue with req->next = blk_dev[MAJOR(target)].current_r.
and blk_dev[MAJOR(target)].current_request = req. (i'll even skip
a plug if you like).
4) run target request fn blk_dev[MAJOR(target)].request_fn().
so why not for the raid1 device? Sigh. Mumble mumble .. must be
b->b_end_io or some fiddling with other states. What driver does
anything like this? Loop seems to attack the disk block directly.
Thanks for any guidance that can be given!
Peter
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/