lkml.org 
[lkml]   [2015]   [Sep]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [4.2, Regression] Queued spinlocks cause major XFS performance regression
On Fri, Sep 04, 2015 at 05:25:23PM +0200, Peter Zijlstra wrote:
> Something like so...
>
> ---
> Subject: locking: Fix virt test-and-set lock implementation
>
> Dave ran into horrible performance on a VM without PARAVIRT_SPINLOCKS
> set and Linus noted that the test-and-set implementation was retarded.
>
> One should spin on the variable with a load, not a rmw.
>
> While there, remove the queued from the name, as the lock isn't queued
> at all, but a simple test-and-set.
>
> Reported-by: Dave Chinner <david@fromorbit.com>
> Suggested-by: Linus Torvalds <torvalds@linux-foundation.org>
> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>

FSUse% Count Size Files/sec App Overhead
0 1600000 0 319511.8 9398733
0 3200000 0 301517.9 9516230
0 4800000 0 300357.6 9676651
0 6400000 0 282167.8 11513255

Looks OK.

Tested-by: Dave Chinner <david@fromorbit.com>

Cheers,

Dave.
--
Dave Chinner
david@fromorbit.com


\
 
 \ /
  Last update: 2015-09-07 02:01    [W:0.231 / U:0.344 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site