From owner-cvs-all Thu Jun 11 18:42:46 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id SAA28366 for cvs-all-outgoing; Thu, 11 Jun 1998 18:42:46 -0700 (PDT) (envelope-from owner-cvs-all@FreeBSD.ORG) Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.15.68.22]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id SAA28279; Thu, 11 Jun 1998 18:42:24 -0700 (PDT) (envelope-from bde@godzilla.zeta.org.au) Received: (from bde@localhost) by godzilla.zeta.org.au (8.8.7/8.8.7) id LAA22840; Fri, 12 Jun 1998 11:42:19 +1000 Date: Fri, 12 Jun 1998 11:42:19 +1000 From: Bruce Evans Message-Id: <199806120142.LAA22840@godzilla.zeta.org.au> To: dyson@FreeBSD.ORG, julian@whistle.com Subject: Re: cvs commit: src/sys/ufs/ffs ffs_vnops.c Cc: bde@zeta.org.au, cvs-committers@FreeBSD.ORG, julian@FreeBSD.ORG Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk >Kirk wanted the removal of the vfs_bio_awrite for testing various ideas >It wil likely come back after a while. >As John said. it's not much of a loss for indirect blocks. >> > It also seems to change the semantic to "wait for v_numoutput even in >> > the soft updates case", and fix some style bugs, and break the >> > optimization of using vfs_bio_awrite() instead of bawrite() for async >> > writes of indirect blocks. >> > >> If vfs_bio_awrite optimization is broken for *just* indirect blocks, >> there isn't much lossage. If the vfs_bio_awrite is broken for data >> blocks, the performance loss is significant. I read the test backwards. The breakage is actually for MNT_WAIT writes of non-indirect blocks - i.e., the usual case for MNT_WAIT is pessimized. We use async writes even in the MNT_WAIT case to start the i/o, and wait for the i/o to complete before returning from ffs_fsync(). We used to use vfs_bio_awrite() to optimize these async writes if possible. Lite2 doesn't have either optimization. I can't believe you actually want to remove vfs_bio_awrite() for testing. vfs_bio_awrite() is only slightly less deterministic that bawrite(). For testing and for getting closer to Lite2, you want to use bwrite(). Bruce To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message