Re: [PATCH] mmu notifiers #v7

Jack Steiner
2008-02-28T23:17:57Z

> > The release should be called much earlier to allow the driver to release
> > all resources in one go. This way each vma must be processed individually.
> > For our gobs of memory this method may create a scaling problem on exit().
>
> Good point, it has to be called earlier for GRU, but it's not a
> performance issue. GRU doesn't pin the pages so it should make the
> global invalidate in ->release _before_ unmap_vmas. Linux can't fault
> in the ptes anymore because mm_users is zero so there's no need of a
> ->release_begin/end, the _begin is enough.
>

I disagree. The location of the callout IS a performance issue. In simple
comparisons of the 2 patches (Christoph's vs. Andrea's), Andrea's has a 7X
increase in the number of TLB purges being issued to the GRU. TLB flushing
is slow and can impact the performance of of tasks using the GRU.

--- jack