Illumos 5310 - Remove always true tests for non-NULL ds->ds_phys

5310 Remove always true tests for non-NULL ds->ds_phys
Author: Justin T. Gibbs <justing@spectralogic.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Will Andrews <willa@spectralogic.com>
Reviewed by: Andriy Gapon <avg@FreeBSD.org>
Approved by: Dan McDonald <danmcd@omniti.com>

References:
  https://www.illumos.org/issues/5310
  https://github.com/illumos/illumos-gate/commit/d808a4f

Ported-by: Chris Dunlop <chris@onthe.net.au>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
This commit is contained in:
Justin T. Gibbs
2015-04-02 02:13:28 +11:00
committed by Brian Behlendorf
parent 9925c28cde
commit 945dd93525
2 changed files with 7 additions and 9 deletions
+3 -5
View File
@@ -618,16 +618,14 @@ dsl_dataset_rele(dsl_dataset_t *ds, void *tag)
void
dsl_dataset_disown(dsl_dataset_t *ds, void *tag)
{
ASSERT(ds->ds_owner == tag && ds->ds_dbuf != NULL);
ASSERT3P(ds->ds_owner, ==, tag);
ASSERT(ds->ds_dbuf != NULL);
mutex_enter(&ds->ds_lock);
ds->ds_owner = NULL;
mutex_exit(&ds->ds_lock);
dsl_dataset_long_rele(ds, tag);
if (ds->ds_dbuf != NULL)
dsl_dataset_rele(ds, tag);
else
dsl_dataset_evict(NULL, ds);
dsl_dataset_rele(ds, tag);
}
boolean_t