On Thu, 26 Jul 2012 21:42:50 +0200 Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote: > On Thu, 2012-07-26 at 17:47 +0200, Martin Schwidefsky wrote: > > A code review revealed another potential race in regard to TLB flushing > > on s390. See patch #2 for the ugly details. To fix this I would like > > to use the arch_enter_lazy_mmu_mode/arch_leave_lazy_mmu_mode but to do > > that the pointer to the mm in question needs to be added to the functions. > > To keep things symmetrical arch_flush_lazy_mmu_mode should grow an mm > > argument as well. > > > > powerpc > > I have a patch that makes sparc64 do the same thing. That is good, I guess we are in agreement then to add the mm argument. > > and x86 have a non-empty implementation for the lazy mmu flush > > primitives and tile calls the generic definition in the architecture > > files (which is a bit strange because the generic definition is empty). > > Comments? > > argh.. you're making my head hurt. Fun, isn't it ? > I guess my first question is where is lazy_mmu_mode active crossing an > mm? I thought it was only ever held across operations on a single mm. My take is never, it is only ever used in a single mm. > The second question would be if you could use that detach_mm thing I > proposed a while back ( http://marc.info/?l=linux-mm&m=134090072917840 ) > or can we rework the active_mm magic in general to make all this easier? No, that is not good enough. The issue I'm trying to fix is for a multi- threaded application where the same mm is attached to multiple cpus. To detach it on the local cpu won't help, it would have to be detached everywhere. > Your 2/2 patch makes me shiver.. Ask me about it :-/ -- blue skies, Martin. "Reality continues to ruin my life." - Calvin. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>