[lkml]   [2017]   [Sep]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: Rough notes from sys_membarrier() lightning BoF
On Wed, Sep 20, 2017 at 06:13:50PM +0000, Mathieu Desnoyers wrote:

> > Also, can you elaborate on the PPC issue? PPC appears to track
> > mm_cpumask more or less just like x86. Is the issue just that this
> > tracking has no implied barriers? If so, how does TLB flush on ppc
> > work? It really does seem impressive to me that an architecture can
> > efficiently support munmap() but not an expedited private membarrier.
> I'll leave this question to the PPC experts :)

IIRC PPC does not keep a tight mm_cpumask, it only sets bit, it never
clears bits. The atomic op required to set bits does not imply any
memory barrier on PPC.

TLB invalidation is a TLBI instruction, it sends TLBI broadcast packets
over the interconnect, it doesn't require IPIs like x86.

The only optimization PPC does is that if the mm_cpumask has only a
single bit set, it uses a TLBI instruction without broadcast, which is

 \ /
  Last update: 2017-09-21 19:32    [W:0.119 / U:0.044 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site