Received: by mail.netbsd.org (Postfix, from userid 0) id 2808E63B10D; Sun, 8 Aug 2010 18:17:13 +0000 (UTC) Received: from cvs.netbsd.org (cvs.NetBSD.org [IPv6:2001:4f8:3:7:2e0:81ff:fe30:95bd]) by mail.netbsd.org (Postfix) with ESMTP id 4E62063B100 for ; Sun, 8 Aug 2010 18:17:12 +0000 (UTC) Received: by cvs.netbsd.org (Postfix, from userid 500) id 38395175DD; Sun, 8 Aug 2010 18:17:12 +0000 (UTC) MIME-Version: 1.0 Content-Disposition: inline Content-Transfer-Encoding: 8bit Content-Type: text/plain Date: Sun, 8 Aug 2010 18:17:12 +0000 From: Chuck Silvers Subject: CVS commit: src/sys/miscfs/genfs To: source-changes@NetBSD.org X-Mailer: log_accum Message-Id: <20100808181712.38395175DD@cvs.netbsd.org> Sender: source-changes-owner@NetBSD.org List-Id: source-changes.NetBSD.org Precedence: list Reply-To: source-changes-d@NetBSD.org Mail-Reply-To: Chuck Silvers Mail-Followup-To: source-changes-d@NetBSD.org Module Name: src Committed By: chs Date: Sun Aug 8 18:17:12 UTC 2010 Modified Files: src/sys/miscfs/genfs: genfs_io.c Log Message: in genfs_getpages(), mark the vnode dirty (ie. add to syncer worklist and set VI_WRMAPDIRTY) after we have busied the pages rather than before. this prevents other threads calling genfs_do_putpages() from marking the vnode clean again while we're in the process of creating new writable mappings, since such threads will wait for the page(s) to become unbusy before proceeding. fixes the problem recently reported by hannken@ on tech-kern. To generate a diff of this commit: cvs rdiff -u -r1.37 -r1.38 src/sys/miscfs/genfs/genfs_io.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.