Print this page
3744 zfs shouldn't ignore errors unmounting snapshots
Submitted by:   Will Andrews <willa@spectralogic.com>
Reviewed by:    Matthew Ahrens <mahrens@delphix.com>

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/fs/zfs/dsl_userhold.c
          +++ new/usr/src/uts/common/fs/zfs/dsl_userhold.c
↓ open down ↓ 425 lines elided ↑ open up ↑
 426  426  
 427  427  #ifdef _KERNEL
 428  428          /* Make sure it is not mounted. */
 429  429          dsl_pool_config_enter(dp, FTAG);
 430  430          error = dsl_dataset_hold_obj(dp, dsobj, FTAG, &ds);
 431  431          if (error == 0) {
 432  432                  char name[MAXNAMELEN];
 433  433                  dsl_dataset_name(ds, name);
 434  434                  dsl_dataset_rele(ds, FTAG);
 435  435                  dsl_pool_config_exit(dp, FTAG);
 436      -                zfs_unmount_snap(name);
      436 +                (void) zfs_unmount_snap(name);
 437  437          } else {
 438  438                  dsl_pool_config_exit(dp, FTAG);
 439  439          }
 440  440  #endif
 441  441  
 442  442          ddurta.ddurta_dsobj = dsobj;
 443  443          ddurta.ddurta_holds = fnvlist_alloc();
 444  444          fnvlist_add_boolean(ddurta.ddurta_holds, htag);
 445  445  
 446  446          (void) dsl_sync_task(spa_name(dp->dp_spa),
↓ open down ↓ 90 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX