X-Spam-Checker-Version: SpamAssassin 3.4.0-r929098 (2010-03-30) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham version=3.4.0-r929098 Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id p8FEm1j7215040 for ; Thu, 15 Sep 2011 09:48:02 -0500 X-ASG-Debug-ID: 1316098080-0c44030d0000-NocioJ X-Barracuda-URL: http://cuda.sgi.com:80/cgi-bin/mark.cgi Received: from na3sys009aog125.obsmtp.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id 3F9B81679F1 for ; Thu, 15 Sep 2011 07:48:00 -0700 (PDT) Received: from na3sys009aog125.obsmtp.com (na3sys009aog125.obsmtp.com [74.125.149.153]) by cuda.sgi.com with ESMTP id 4ZLbEiUsV16mo0Kx for ; Thu, 15 Sep 2011 07:48:00 -0700 (PDT) Received: from mail-yi0-f50.google.com ([209.85.218.50]) (using TLSv1) by na3sys009aob125.postini.com ([74.125.148.12]) with SMTP ID DSNKTnIQIDNKJoQKRfzNbxSl5s99kAqv2II8@postini.com; Thu, 15 Sep 2011 07:48:00 PDT Received: by yib25 with SMTP id 25so1144577yib.37 for ; Thu, 15 Sep 2011 07:47:59 -0700 (PDT) Received: by 10.150.103.3 with SMTP id a3mr127457ybc.427.1316098079541; Thu, 15 Sep 2011 07:47:59 -0700 (PDT) Received: from BohrerMBP.rgmadvisors.com ([207.200.23.46]) by mx.google.com with ESMTPS id e21sm1127161ybd.28.2011.09.15.07.47.57 (version=SSLv3 cipher=OTHER); Thu, 15 Sep 2011 07:47:58 -0700 (PDT) Date: Thu, 15 Sep 2011 09:47:55 -0500 From: Shawn Bohrer To: "Darrick J. Wong" Cc: xfs@oss.sgi.com, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org X-ASG-Orig-Subj: Stalls during writeback for mmaped I/O on XFS in 3.0 Subject: Stalls during writeback for mmaped I/O on XFS in 3.0 Message-ID: <20110915144755.GB2235@BohrerMBP.rgmadvisors.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.21 (2010-09-15) X-Barracuda-Connect: na3sys009aog125.obsmtp.com[74.125.149.153] X-Barracuda-Start-Time: 1316098081 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0083 1.0000 -1.9667 X-Barracuda-Virus-Scanned: by cuda.sgi.com at sgi.com X-Barracuda-Spam-Score: -1.97 X-Barracuda-Spam-Status: No, SCORE=-1.97 using per-user scores of TAG_LEVEL=2.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=2.1 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.2.74601 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean I've got a workload that is latency sensitive that writes data to a memory mapped file on XFS. With the 3.0 kernel I'm seeing stalls of up to 100ms that occur during writeback that we did not see with older kernels. I've traced the stalls and it looks like they are blocking on wait_on_page_writeback() introduced in d76ee18a8551e33ad7dbd55cac38bc7b094f3abb "fs: block_page_mkwrite should wait for writeback to finish" Reading the commit description doesn't really explain to me why this change was needed. Can someone explain what "This is needed to stabilize pages during writeback for those two filesystems." means in the context of that commit? Is this a problem for older kernels as well? Should this have been backported to the stable kernels? What are the downsides of reverting this commit? Assuming this change is required are there any alternatives solutions to avoid these stalls with mmaped I/O on XFS? Thanks, Shawn --------------------------------------------------------------- This email, along with any attachments, is confidential. If you believe you received this message in error, please contact the sender immediately and delete all copies of the message. Thank you.