From owner-svn-src-head@freebsd.org Mon Oct 7 10:39:10 2019 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 180DA12A62E; Mon, 7 Oct 2019 10:39:10 +0000 (UTC) (envelope-from hps@selasky.org) Received: from mail.turbocat.net (turbocat.net [IPv6:2a01:4f8:c17:6c4b::2]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 46mxmY6tb3z3L2S; Mon, 7 Oct 2019 10:39:09 +0000 (UTC) (envelope-from hps@selasky.org) Received: from hps2016.home.selasky.org (unknown [62.141.129.235]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by mail.turbocat.net (Postfix) with ESMTPSA id 41FA0260042; Mon, 7 Oct 2019 12:39:06 +0200 (CEST) Subject: Re: svn commit: r353168 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs To: Andriy Gapon , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201910070800.x9780sRM030252@repo.freebsd.org> From: Hans Petter Selasky Message-ID: <392e0ada-7ec9-7147-4300-ccaefc5a5ce8@selasky.org> Date: Mon, 7 Oct 2019 12:37:39 +0200 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:68.0) Gecko/20100101 Thunderbird/68.1.0 MIME-Version: 1.0 In-Reply-To: <201910070800.x9780sRM030252@repo.freebsd.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 46mxmY6tb3z3L2S X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-6.00 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Oct 2019 10:39:10 -0000 On 2019-10-07 10:00, Andriy Gapon wrote: > Author: avg > Date: Mon Oct 7 08:00:54 2019 > New Revision: 353168 > URL: https://svnweb.freebsd.org/changeset/base/353168 > > Log: > ZFS: unconditionally use atomic_swap_64 > > Previously, the code used a plain store on platforms that lacked > atomic_swap_64 and possibly some other platforms as the condition worked > only if atomic_swap_64 was a macro. > > MFC after: 1 week > X-MFC after: r353166, r353167 > > Modified: > head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfeature.c > > Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfeature.c > ============================================================================== > --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfeature.c Mon Oct 7 07:54:34 2019 (r353167) > +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfeature.c Mon Oct 7 08:00:54 2019 (r353168) > @@ -313,12 +313,8 @@ feature_sync(spa_t *spa, zfeature_info_t *feature, uin > if (feature->fi_feature != SPA_FEATURE_NONE) { > uint64_t *refcount_cache = > &spa->spa_feat_refcount_cache[feature->fi_feature]; > -#ifdef atomic_swap_64 > VERIFY3U(*refcount_cache, ==, > atomic_swap_64(refcount_cache, refcount)); > -#else > - *refcount_cache = refcount; > -#endif > } > > if (refcount == 0) > Hi, Is this yours for i386? You maybe need to include: /sys/i386/include/atomic.h:atomic_swap_64(volatile uint64_t *p, uint64_t v) --HPS > 09:27:46 --- gdtoa_dtoa.po --- > 09:27:46 --- all_subdir_rescue --- > 09:27:46 ld: error: undefined symbol: atomic_swap_64 > 09:27:46 >>> referenced by zfeature.c:316 (/usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfeature.c:316) > 09:27:46 >>> zfeature.o:(feature_sync) in archive /usr/obj/usr/src/i386.i386/tmp/usr/lib/libzpool.a > 09:27:46 > 09:27:46 ld: error: undefined symbol: atomic_swap_64 > 09:27:46 >>> referenced by dmu_object.c:195 (/usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_object.c:195) > 09:27:46 >>> dmu_object.o:(dmu_object_alloc_impl) in archive /usr/obj/usr/src/i386.i386/tmp/usr/lib/libzpool.a > 09:27:46 > 09:27:46 ld: error: undefined symbol: atomic_swap_64 > 09:27:46 >>> referenced by dmu_object.c:149 (/usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_object.c:149) > 09:27:46 >>> dmu_object.o:(dmu_object_alloc_impl) in archive /usr/obj/usr/src/i386.i386/tmp/usr/lib/libzpool.a > 09:27:46 --- all_subdir_lib --- > 09:27:46 --- gdtoa_gdtoa.po --- > 09:27:46 --- gdtoa_dtoa.po ---