On Friday 05 December 2008, Sergei Shtylyov wrote: > Frankly speaking, I'm not seeing how a newly queued request can > overwrite anything as it's only started being *at the head of the > request queue* (which it won't be unless it's queued onto an already > empty queue with the last request has been already done).
The "busy" flag in that case indicates -- in the original code, at least -- that the "last request has already been done" part isn't there, regardless of whether the queue is empty. So queuing a request when list_empty(queue) will always add it to the queue ... but if "busy" is set, that's all it will do because some other code is in the middle of doing something. And trying to make such code defend against intermittent bugs introduced during completion callbacks like that is a real big lose. No fun, and not advised... _______________________________________________ Davinci-linux-open-source mailing list [email protected] http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
