Re: svn commit: r271707 - stable/10/sys/kern

2014-09-17 Thread Andrey Chernov
On 17.09.2014 21:35, Alexander Motin wrote: > On 17.09.2014 20:08, Alan Cox wrote: >> On 09/17/2014 11:46, Alexander Motin wrote: >>> On 17.09.2014 19:16, Andrey Chernov wrote: On 17.09.2014 18:06, Alexander Motin wrote: > + /* > + * Make sure that tdq_load updated before calling this

Re: svn commit: r271707 - stable/10/sys/kern

2014-09-17 Thread Alexander Motin
On 17.09.2014 20:08, Alan Cox wrote: > On 09/17/2014 11:46, Alexander Motin wrote: >> On 17.09.2014 19:16, Andrey Chernov wrote: >>> On 17.09.2014 18:06, Alexander Motin wrote: + /* + * Make sure that tdq_load updated before calling this function + * is globally visible before w

Re: svn commit: r271707 - stable/10/sys/kern

2014-09-17 Thread Alan Cox
On 09/17/2014 11:46, Alexander Motin wrote: > On 17.09.2014 19:16, Andrey Chernov wrote: >> On 17.09.2014 18:06, Alexander Motin wrote: >>> + /* >>> +* Make sure that tdq_load updated before calling this function >>> +* is globally visible before we read tdq_cpu_idle. Idle thread >>> +

Re: svn commit: r271707 - stable/10/sys/kern

2014-09-17 Thread Alexander Motin
On 17.09.2014 19:16, Andrey Chernov wrote: > On 17.09.2014 18:06, Alexander Motin wrote: >> +/* >> + * Make sure that tdq_load updated before calling this function >> + * is globally visible before we read tdq_cpu_idle. Idle thread >> + * accesses both of them without locks, and th

Re: svn commit: r271707 - stable/10/sys/kern

2014-09-17 Thread Andrey Chernov
On 17.09.2014 18:06, Alexander Motin wrote: > + /* > + * Make sure that tdq_load updated before calling this function > + * is globally visible before we read tdq_cpu_idle. Idle thread > + * accesses both of them without locks, and the order is important. > + */ > + mb(

svn commit: r271707 - stable/10/sys/kern

2014-09-17 Thread Alexander Motin
Author: mav Date: Wed Sep 17 14:06:21 2014 New Revision: 271707 URL: http://svnweb.freebsd.org/changeset/base/271707 Log: MFC r271604, r271616: Add couple memory barriers to order tdq_cpu_idle and tdq_load accesses. This change fixes transient performance drops in some of my benchmarks,