Print this page
2619 asynchronous destruction of ZFS file systems
2747 SPA versioning with zfs feature flags
Reviewed by: Matt Ahrens <mahrens@delphix.com>
Reviewed by: George Wilson <gwilson@delphix.com>
Reviewed by: Richard Lowe <richlowe@richlowe.net>
Reviewed by: Dan Kruchinin <dan.kruchinin@gmail.com>
Approved by: Dan McDonald <danmcd@nexenta.com>
        
*** 18,28 ****
   *
   * CDDL HEADER END
   */
  /*
   * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
!  * Copyright (c) 2011 by Delphix. All rights reserved.
   */
  
  /*
   * DSL permissions are stored in a two level zap attribute
   * mechanism.   The first level identifies the "class" of
--- 18,28 ----
   *
   * CDDL HEADER END
   */
  /*
   * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
!  * Copyright (c) 2012 by Delphix. All rights reserved.
   */
  
  /*
   * DSL permissions are stored in a two level zap attribute
   * mechanism.   The first level identifies the "class" of
*** 169,182 ****
                  uint64_t jumpobj;
  
                  VERIFY(nvpair_value_nvlist(whopair, &perms) == 0);
  
                  if (zap_lookup(mos, zapobj, whokey, 8, 1, &jumpobj) != 0) {
!                         jumpobj = zap_create(mos, DMU_OT_DSL_PERMS,
!                             DMU_OT_NONE, 0, tx);
!                         VERIFY(zap_update(mos, zapobj,
!                             whokey, 8, 1, &jumpobj, tx) == 0);
                  }
  
                  while (permpair = nvlist_next_nvpair(perms, permpair)) {
                          const char *perm = nvpair_name(permpair);
                          uint64_t n = 0;
--- 169,180 ----
                  uint64_t jumpobj;
  
                  VERIFY(nvpair_value_nvlist(whopair, &perms) == 0);
  
                  if (zap_lookup(mos, zapobj, whokey, 8, 1, &jumpobj) != 0) {
!                         jumpobj = zap_create_link(mos, DMU_OT_DSL_PERMS,
!                             zapobj, whokey, tx);
                  }
  
                  while (permpair = nvlist_next_nvpair(perms, permpair)) {
                          const char *perm = nvpair_name(permpair);
                          uint64_t n = 0;