Received: by mail.netbsd.org (Postfix, from userid 605) id 651D014A20F; Tue, 4 Nov 2014 09:14:44 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mail.netbsd.org (Postfix) with ESMTP id 7388114A18D for ; Tue, 4 Nov 2014 09:14:43 +0000 (UTC) X-Virus-Scanned: amavisd-new at NetBSD.org Received: from mail.netbsd.org ([127.0.0.1]) by localhost (mail.NetBSD.org [127.0.0.1]) (amavisd-new, port 10025) with ESMTP id EEKXgSJ0o_OA for ; Tue, 4 Nov 2014 09:14:42 +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 87EBD14A201 for ; Tue, 4 Nov 2014 09:14:42 +0000 (UTC) Received: by cvs.netbsd.org (Postfix, from userid 500) id 85BC198; Tue, 4 Nov 2014 09:14:42 +0000 (UTC) Content-Disposition: inline Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" MIME-Version: 1.0 Date: Tue, 4 Nov 2014 09:14:42 +0000 From: "Emmanuel Dreyfus" Subject: CVS commit: src/sys/fs/puffs To: source-changes@NetBSD.org X-Mailer: log_accum Message-Id: <20141104091442.85BC198@cvs.netbsd.org> Sender: source-changes-owner@NetBSD.org List-Id: source-changes.NetBSD.org Precedence: bulk Reply-To: source-changes-d@NetBSD.org Mail-Reply-To: "Emmanuel Dreyfus" Mail-Followup-To: source-changes-d@NetBSD.org Module Name: src Committed By: manu Date: Tue Nov 4 09:14:42 UTC 2014 Modified Files: src/sys/fs/puffs: puffs_vnops.c Log Message: PUFFS direct I/O cache fix There are a few situations where we must take care of the cache if direct I/O was enabled: - if we do direct I/O for write but not for read, then any write must invalidate the cache so that a reader gets the written data and not the not-updated cache. - if we used a vnode without direct I/O and it is enabled for writing, we must flush the cache before compeling the open operation, so that the cachec write are not lost. And at inactive time, we wipe direct I/O flags so that a new open without direct I/O does not inherit direct I/O. To generate a diff of this commit: cvs rdiff -u -r1.197 -r1.198 src/sys/fs/puffs/puffs_vnops.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.