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/