From owner-svn-src-all@freebsd.org Thu Dec 15 10:49:13 2016 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 87AD2C80441; Thu, 15 Dec 2016 10:49:13 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from citapm.icyb.net.ua (citapm.icyb.net.ua [212.40.38.140]) by mx1.freebsd.org (Postfix) with ESMTP id 665448AD; Thu, 15 Dec 2016 10:49:11 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from porto.starpoint.kiev.ua (porto-e.starpoint.kiev.ua [212.40.38.100]) by citapm.icyb.net.ua (8.8.8p3/ICyb-2.3exp) with ESMTP id MAA23859; Thu, 15 Dec 2016 12:49:04 +0200 (EET) (envelope-from avg@FreeBSD.org) Received: from localhost ([127.0.0.1]) by porto.starpoint.kiev.ua with esmtp (Exim 4.34 (FreeBSD)) id 1cHTay-0003N0-1F; Thu, 15 Dec 2016 12:49:04 +0200 Subject: Re: svn commit: r309714 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs To: Alexander Motin , src-committers@FreeBSD.org, svn-src-all@FreeBSD.org, svn-src-head@FreeBSD.org References: <201612081558.uB8Fw4xA027508@repo.freebsd.org> From: Andriy Gapon Message-ID: <94544782-cfcc-86ee-da17-bc6b25873313@FreeBSD.org> Date: Thu, 15 Dec 2016 12:48:07 +0200 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 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, 15 Dec 2016 10:49:13 -0000 On 14/12/2016 21:49, Alexander Motin wrote: > On 14.12.2016 14:03, Andriy Gapon wrote: >> On 08/12/2016 17:58, Alexander Motin wrote: >>> This change switches zio_timestamp_compare() from comparing uninitialized >>> io_offset to really populated io_bookmark values. I haven't decided yet >>> what to do with timestampts, but on simple tests this change gives the >>> same peformance results by just making code to work as declared. >> >> I think that we should just enable precise timestamps. >> I just can't see them noticeably hurting performance given the amount of >> calculations, memory allocations, locking, etc, that ZFS already has. >> And there are layers above and below ZFS too. > > It is orthogonal to this change and can be done any time, if decided. Yes, indeed. > I worried mostly about some older systems still using HPET or ACPI > timecounters, where half dozen extra timer calls per single I/O may be > quite expensive. > > I've recently reviewed all places where ZFS calls gethrtime(), and found > that in most of them precision is not needed, even 1 second would be > enough, not even 1/hz. I've found only two cases where precision is > important, both about ZIO sorting in different places (this is one of > the two), and both of them are now workarounded now by using offset as > secondary key. Thank you for looking into this and fixing the bug! -- Andriy Gapon