Re: [RFC][PATCH 0/2] fun with tlb flushing on s390

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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 from this list: send the line "unsubscribe linux-arch" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel]     [Kernel Newbies]     [x86 Platform Driver]     [Netdev]     [Linux Wireless]     [Netfilter]     [Bugtraq]     [Linux Filesystems]     [Yosemite Discussion]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]

  Powered by Linux