Re: [RFC PATCH] introduce sys_membarrier(): process-wide memory barrier

Mathieu Desnoyers
2010-01-07T15:10:28Z

* Steven Rostedt (rostedt@goodmis.org) wrote:
> On Thu, 2010-01-07 at 01:19 -0500, Mathieu Desnoyers wrote:
>
> > I see your point.
>
> Actually you are missing the point ;-)
>
> >
> > This would probably be good for machines with very large number of cpus
> > and without IPI broadcast support, running processes with only few
> > threads. I really start to think that we should have some way to compare
> > the number of threads belonging to a process and choose between the
> > broadcast IPI and the per-cpu IPI depending if we are over or under an
> > arbitrary threshold.
>
>
> This has nothing to do with performance. It has to do with a thread
> should not interfere with a thread belonging to another process. We
> really don't care how long the sys_membarrier() takes (it's the slow
> path anyway). We do care that a critical RT task is being interrupted by
> some java thread sending thousands of IPIs.

Yes, PeterZ scheme seems (and yours) seems to address this problem by
only impacting the CPUs running threads belonging to the current
process. I'll go with this instead of the broadcast IPI, which, as you,
Josh and Peter clearly pointed out, is a no-go in terms of real-time.

Thanks,

Mathieu

>
> -- Steve
>
>

--
Mathieu Desnoyers
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68