Date: Tue, 30 Jun 2015 08:54:41 +0300 From: Konstantin Belousov <kostikbel@gmail.com> To: Julian Elischer <julian@freebsd.org> Cc: Ed Schouten <ed@nuxi.nl>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r284887 - in head/sys: kern sys ufs/ffs Message-ID: <20150630055441.GY2080@kib.kiev.ua> In-Reply-To: <55920AC2.3060809@freebsd.org> References: <201506270944.t5R9iEjO053344@svn.freebsd.org> <CABh_MKk-48D4FP-BgNLxvVuw4=3_YKnTX-5kSdL7LSAjCVCNOg@mail.gmail.com> <55920AC2.3060809@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Jun 30, 2015 at 11:19:30AM +0800, Julian Elischer wrote: > On 6/29/15 8:19 PM, Ed Schouten wrote: > > Hi Kostik, > > > > 2015-06-27 11:44 GMT+02:00 Konstantin Belousov <kib@freebsd.org>: > >> @@ -2056,6 +2072,8 @@ ffs_bufwrite(struct buf *bp) > >> if (bp->b_vflags & BV_BKGRDINPROG) > >> panic("bufwrite: still writing"); > >> } > >> + if ((bp->b_vflags & BV_BKGRDERR) != 0) > >> + bp->b_vflags &= ~BV_BKGRDERR; > >> BO_UNLOCK(bp->b_bufobj); > >> > >> /* > > This if-statement could be removed, right? The bit could just be > > cleared unconditionally. > true but it replaces a read and write with just a read in the case of > no change. Th cache line is dirty already, test before the rwm operation would not give any optimizations.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20150630055441.GY2080>