![]() | |||||||||||||
Messages in this thread |
> It seems we need internal ide_dev_do_request(ide_drive_t *, int) > which will explicitly state which device we want to service as I see > no sane way to fix the problem in choose_drive(). Not only that, but if you read my blurb, I wonder how even the non-targetted case can work properly if we ever hit a couple of the code path in there that either early exit because the elevator returned no request or the case where we "sleep" a drive to give more time to the other... I have the feeling that we may "miss" an opportunity to servive a drive, and thus this drive will stick around with a pending request not beeing serviced... I reckon those are corner cases, but I feel the whole thing need some serious revisiting. > Your workaround is OK for 2.6.14 given that you will document it > now and later fix it properly for 2.6.15. Ok. Well, I'm not sure what is the right fix at the moment given the other issues I described above, but I'm definitely up to doign a proper fix for 2.6.15 with your help ;) Ben. - 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/ | ||||||||||||
| Last update: 2005-10-08 22:23 [from the cache] ©2003-2008 | |||||||||||||