On Mon, Dec 10 2007, Daniel Phillips wrote: > On Monday 10 December 2007 04:16, Jens Axboe wrote: > > OK, let me get the neon out then. This has nothing to do with > > throttling, I thought I made it clear that I get why you store the > > origin queue in ->bi_queue. I'm concerned with the workings of > > redirecting a bio. Previously we looked up the queue associated with > > bio->bi_bdev inside the loop in __generic_make_request(), as is > > REQUIRED to correctly locate a DIFFERENT queue if bio->bi_bdev has > > been changed to point somewhere else. > > Rhetoric aside, again. > > We are only interested in throttling against the bio->bi_bdev that was > stored in the bio at the time of the call to generic_make_request, why > should we care about the redirected value?
Let me repeat - this has nothing to do with throttling! You are breaking the bio redirection by killing that bdev_get_queue() in the __generic_make_request(). I honestly don't know how to make this any clearer than I already did above. Sleep on it. -- Jens Axboe -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/