From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1161427AbXDRBsI (ORCPT ); Tue, 17 Apr 2007 21:48:08 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1161436AbXDRBsI (ORCPT ); Tue, 17 Apr 2007 21:48:08 -0400 Received: from c-69-242-210-120.hsd1.mi.comcast.net ([69.242.210.120]:57965 "EHLO heimdal.trondhjem.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1161427AbXDRBsH (ORCPT ); Tue, 17 Apr 2007 21:48:07 -0400 X-Greylist: delayed 1124 seconds by postgrey-1.27 at vger.kernel.org; Tue, 17 Apr 2007 21:48:07 EDT From: Trond Myklebust Subject: [PATCH 0/4] 2.6.21-rc7 NFS writes: fix a series of issues Date: Tue, 17 Apr 2007 21:19:46 -0400 To: Peter Zijlstra Cc: Linus Torvalds , Florin Iucha , Andrew Morton , Adrian Bunk , OGAWA Hirofumi , linux-kernel@vger.kernel.org Message-Id: <20070418011946.11679.34920.stgit@heimdal.trondhjem.org> In-Reply-To: <20070416125905.GA2769@iucha.net> <1176736734.6761.45.camel@heimdal.trondhjem.org> <1176740307.6761.56.camel@heimdal.trondhjem.org> <1176741408.6761.62.camel@heimdal.trondhjem.org> <1176792399.3035.30.camel@twins> <20070416125905.GA2769@iucha.net> <1176792399.3035.30.camel@twins> <1176796503.3035.33.camel@twins> <87hcrfaqam.fsf@duaron.myhome.or.jp> References: <20070416125905.GA2769@iucha.net> <1176736734.6761.45.camel@heimdal.trondhjem.org> <1176740307.6761.56.camel@heimdal.trondhjem.org> <1176741408.6761.62.camel@heimdal.trondhjem.org> <1176792399.3035.30.camel@twins> <20070416125905.GA2769@iucha.net> <1176792399.3035.30.camel@twins> <1176796503.3035.33.camel@twins> <87hcrfaqam.fsf@duaron.myhome.or.jp> Content-Type: text/plain; charset=utf-8; format=fixed Content-Transfer-Encoding: 8bit User-Agent: StGIT/0.11 Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org I've split the issues introduced by the 2.6.21-rcX write code up into 4 subproblems. The first patch is just a cleanup in order to ease review. Patch number 2 ensures that we never release the PG_writeback flag until _after_ we've either discarded the unstable request altogether, or put it on the nfs_inode's commit or dirty lists. Patch number 3 fixes the 'desynchronized value of nfs_i.ncommit' error. It uses the PG_NEED_COMMIT flag as an indicator for whether or not the request may be redirtied. Patch number 4 protects the NFS '.set_page_dirty' address_space operation against races with nfs_inode_add_request. Cheers Trond