On Fri, 21 Sep 2007, Linus Torvalds wrote:

> Yeah, and the whole thing seems totally bogus. It totally depends on 
> mmu_gather doing everything right (which very much includes the dependency 
> on mmu gathering disabling preempt).

The quicklists have been existing for a long time in this relationship 
and were actually developed initially (by Dave Miller I believe) to work 
this way. The generic TLB flushing thing may have developed in parallel on 
other platforms that did not use quicklists.

> For exmaple, if we were to go back to the original small tlb_gather with a 
> simple quicklist on the stack, rather than the per-cpu datastructure, the 
> quicklists would immediately break horribly - simply because they are 
> incorrectly now depending on the internal semantics of that tlb-gather.

Hmmmm.. Right the integration of the approaches that have now diverged on 
various platforms could be better.
 
> As it is, the quicklists try to be something separate, but by virtue of 
> being separate, they will always be buggy.

I guess we need to re-join what was separated by developments on different 
platforms.

> The only way to fix it would be to integrate the quicklist stuff *with* 
> the mmu_gather stuff, so that these kinds of implementation issues are 
> explicitly shown in the relationship, instead of havign two "independent" 
> pieces of code where one piece very subtly depends on the exact 
> implementation of the other.

Right. But will that not mean that quicklists would have to be used on all 
platforms in a generic way?
-
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/

Reply via email to