From owner-svn-src-all@FreeBSD.ORG Thu Apr 28 14:47:43 2011 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F3FCD106564A; Thu, 28 Apr 2011 14:47:42 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from mail.zoral.com.ua (mx0.zoral.com.ua [91.193.166.200]) by mx1.freebsd.org (Postfix) with ESMTP id 6B4C38FC12; Thu, 28 Apr 2011 14:47:41 +0000 (UTC) Received: from deviant.kiev.zoral.com.ua (root@deviant.kiev.zoral.com.ua [10.1.1.148]) by mail.zoral.com.ua (8.14.2/8.14.2) with ESMTP id p3SElbUS030615 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 28 Apr 2011 17:47:37 +0300 (EEST) (envelope-from kostikbel@gmail.com) Received: from deviant.kiev.zoral.com.ua (kostik@localhost [127.0.0.1]) by deviant.kiev.zoral.com.ua (8.14.4/8.14.4) with ESMTP id p3SElbp4093497; Thu, 28 Apr 2011 17:47:37 +0300 (EEST) (envelope-from kostikbel@gmail.com) Received: (from kostik@localhost) by deviant.kiev.zoral.com.ua (8.14.4/8.14.4/Submit) id p3SElb8N093496; Thu, 28 Apr 2011 17:47:37 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: deviant.kiev.zoral.com.ua: kostik set sender to kostikbel@gmail.com using -f Date: Thu, 28 Apr 2011 17:47:37 +0300 From: Kostik Belousov To: John Baldwin Message-ID: <20110428144737.GB48734@deviant.kiev.zoral.com.ua> References: <201104281427.p3SERHo1026817@svn.freebsd.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="zGqVP2YgkFRp/g3j" Content-Disposition: inline In-Reply-To: <201104281427.p3SERHo1026817@svn.freebsd.org> User-Agent: Mutt/1.4.2.3i X-Virus-Scanned: clamav-milter 0.95.2 at skuns.kiev.zoral.com.ua X-Virus-Status: Clean X-Spam-Status: No, score=-3.4 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00, DNS_FROM_OPENWHOIS autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on skuns.kiev.zoral.com.ua Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r221166 - in head/sys: fs/ext2fs modules/ext2fs X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Apr 2011 14:47:43 -0000 --zGqVP2YgkFRp/g3j Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Apr 28, 2011 at 02:27:17PM +0000, John Baldwin wrote: > Author: jhb > Date: Thu Apr 28 14:27:17 2011 > New Revision: 221166 > URL: http://svn.freebsd.org/changeset/base/221166 >=20 > Log: > Sync with several changes in UFS/FFS: > - 77115: Implement support for O_DIRECT. > - 98425: Fix a performance issue introduced in 70131 that was causing > reads before writes even when writing full blocks. > - 98658: Rename the BALLOC flags from B_* to BA_* to avoid confusion wi= th > the struct buf B_ flags. > - 100344: Merge the BA_ and IO_ flags so so that they may both be used = in > the same flags word. This merger is possible by assigning the IO_ fla= gs > to the low sixteen bits and the BA_ flags the high sixteen bits. > - 105422: Fix a file-rewrite performance case. > - 129545: Implement IO_INVAL in VOP_WRITE() by marking the buffer as > "no cache". > - Readd the DOINGASYNC() macro and use it to control asynchronous write= s. > Change i-node updates to honor DOINGASYNC() instead of always being > synchronous. > - Use a PRIV_VFS_RETAINSUGID check instead of checking cr_uid against 0 > directly when deciding whether or not to clear suid and sgid bits. > =20 > Submitted by: Pedro F. Giffuni giffunip at yahoo >=20 > @@ -141,10 +162,42 @@ READ(ap) > if (error) > break; > =20 > - bqrelse(bp); > + if ((ioflag & (IO_VMIO|IO_DIRECT)) && > + (LIST_FIRST(&bp->b_dep) =3D=3D NULL)) { > + /* > + * If there are no dependencies, and it's VMIO, There is no dependencies for ext2fs, the FFS comments talks about SU. Also, I am unsure what the resulting semantic of O_DIRECTIO for ext2 is ? UFS tries to eliminate any use of buffer cache for O_DIRECTIO case, up to the mapping of user pages into pbuf to perform the actual i/o. In ext2 case, it seems we will just destroy the buffers after using them for i/o. Is it useful ? --zGqVP2YgkFRp/g3j Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (FreeBSD) iEYEARECAAYFAk25fgkACgkQC3+MBN1Mb4jmSgCgi2R5XScqXS6lzLZN6H62KL09 g20AoOqUTEF1cN7DUZsVKzm7uzf9V3Tv =2UAt -----END PGP SIGNATURE----- --zGqVP2YgkFRp/g3j--