diff --git a/module/zfs/bpobj.c b/module/zfs/bpobj.c index 5f2aff4534..82ca94e1d1 100644 --- a/module/zfs/bpobj.c +++ b/module/zfs/bpobj.c @@ -21,6 +21,7 @@ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2011, 2016 by Delphix. All rights reserved. + * Copyright (c) 2017 Datto Inc. */ #include @@ -211,6 +212,9 @@ bpobj_iterate_impl(bpobj_t *bpo, bpobj_itor_t func, void *arg, dmu_tx_t *tx, mutex_enter(&bpo->bpo_lock); + if (!bpobj_hasentries(bpo)) + goto out; + if (free) dmu_buf_will_dirty(bpo->bpo_dbuf, tx);