diff options
author | delphij <delphij@FreeBSD.org> | 2014-01-02 03:24:44 +0000 |
---|---|---|
committer | delphij <delphij@FreeBSD.org> | 2014-01-02 03:24:44 +0000 |
commit | 05d7d24d7eedde3ccfe790d7abc1b059250fd27c (patch) | |
tree | e5b020ce55d27b654e5e7dcb17168811c1910f20 /sys/cddl | |
parent | 35f224ca288bfdfa32b7997370943432d086778f (diff) | |
download | FreeBSD-src-05d7d24d7eedde3ccfe790d7abc1b059250fd27c.zip FreeBSD-src-05d7d24d7eedde3ccfe790d7abc1b059250fd27c.tar.gz |
Fix build on platforms where atomic_swap_64 is not available.
Diffstat (limited to 'sys/cddl')
-rw-r--r-- | sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfeature.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfeature.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfeature.c index e69fcd3..7540320 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfeature.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfeature.c @@ -312,8 +312,12 @@ feature_sync(spa_t *spa, zfeature_info_t *feature, uint64_t refcount, 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) |