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>

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/sys/nvpair.h
          +++ new/usr/src/uts/common/sys/nvpair.h
↓ open down ↓ 12 lines elided ↑ open up ↑
  13   13   * When distributing Covered Code, include this CDDL HEADER in each
  14   14   * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15   15   * If applicable, add the following below this CDDL HEADER, with the
  16   16   * fields enclosed by brackets "[]" replaced with your own identifying
  17   17   * information: Portions Copyright [yyyy] [name of copyright owner]
  18   18   *
  19   19   * CDDL HEADER END
  20   20   */
  21   21  /*
  22   22   * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
       23 + * Copyright (c) 2012 by Delphix. All rights reserved.
  23   24   */
  24   25  
  25   26  #ifndef _SYS_NVPAIR_H
  26   27  #define _SYS_NVPAIR_H
  27   28  
  28   29  #include <sys/types.h>
       30 +#include <sys/time.h>
  29   31  #include <sys/errno.h>
  30   32  #include <sys/va_list.h>
  31   33  
  32   34  #if defined(_KERNEL) && !defined(_BOOT)
  33   35  #include <sys/kmem.h>
  34   36  #endif
  35   37  
  36   38  #ifdef  __cplusplus
  37   39  extern "C" {
  38   40  #endif
↓ open down ↓ 228 lines elided ↑ open up ↑
 267  269  int nvpair_value_uint32_array(nvpair_t *, uint32_t **, uint_t *);
 268  270  int nvpair_value_int64_array(nvpair_t *, int64_t **, uint_t *);
 269  271  int nvpair_value_uint64_array(nvpair_t *, uint64_t **, uint_t *);
 270  272  int nvpair_value_string_array(nvpair_t *, char ***, uint_t *);
 271  273  int nvpair_value_nvlist_array(nvpair_t *, nvlist_t ***, uint_t *);
 272  274  int nvpair_value_hrtime(nvpair_t *, hrtime_t *);
 273  275  #if !defined(_KERNEL)
 274  276  int nvpair_value_double(nvpair_t *, double *);
 275  277  #endif
 276  278  
      279 +nvlist_t *fnvlist_alloc(void);
      280 +void fnvlist_free(nvlist_t *);
      281 +size_t fnvlist_size(nvlist_t *);
      282 +char *fnvlist_pack(nvlist_t *, size_t *);
      283 +void fnvlist_pack_free(char *, size_t);
      284 +nvlist_t *fnvlist_unpack(char *, size_t);
      285 +nvlist_t *fnvlist_dup(nvlist_t *);
      286 +void fnvlist_merge(nvlist_t *, nvlist_t *);
      287 +
      288 +void fnvlist_add_boolean(nvlist_t *, const char *);
      289 +void fnvlist_add_boolean_value(nvlist_t *, const char *, boolean_t);
      290 +void fnvlist_add_byte(nvlist_t *, const char *, uchar_t);
      291 +void fnvlist_add_int8(nvlist_t *, const char *, int8_t);
      292 +void fnvlist_add_uint8(nvlist_t *, const char *, uint8_t);
      293 +void fnvlist_add_int16(nvlist_t *, const char *, int16_t);
      294 +void fnvlist_add_uint16(nvlist_t *, const char *, uint16_t);
      295 +void fnvlist_add_int32(nvlist_t *, const char *, int32_t);
      296 +void fnvlist_add_uint32(nvlist_t *, const char *, uint32_t);
      297 +void fnvlist_add_int64(nvlist_t *, const char *, int64_t);
      298 +void fnvlist_add_uint64(nvlist_t *, const char *, uint64_t);
      299 +void fnvlist_add_string(nvlist_t *, const char *, const char *);
      300 +void fnvlist_add_nvlist(nvlist_t *, const char *, nvlist_t *);
      301 +void fnvlist_add_nvpair(nvlist_t *, nvpair_t *);
      302 +void fnvlist_add_boolean_array(nvlist_t *, const char *, boolean_t *, uint_t);
      303 +void fnvlist_add_byte_array(nvlist_t *, const char *, uchar_t *, uint_t);
      304 +void fnvlist_add_int8_array(nvlist_t *, const char *, int8_t *, uint_t);
      305 +void fnvlist_add_uint8_array(nvlist_t *, const char *, uint8_t *, uint_t);
      306 +void fnvlist_add_int16_array(nvlist_t *, const char *, int16_t *, uint_t);
      307 +void fnvlist_add_uint16_array(nvlist_t *, const char *, uint16_t *, uint_t);
      308 +void fnvlist_add_int32_array(nvlist_t *, const char *, int32_t *, uint_t);
      309 +void fnvlist_add_uint32_array(nvlist_t *, const char *, uint32_t *, uint_t);
      310 +void fnvlist_add_int64_array(nvlist_t *, const char *, int64_t *, uint_t);
      311 +void fnvlist_add_uint64_array(nvlist_t *, const char *, uint64_t *, uint_t);
      312 +void fnvlist_add_string_array(nvlist_t *, const char *, char * const *, uint_t);
      313 +void fnvlist_add_nvlist_array(nvlist_t *, const char *, nvlist_t **, uint_t);
      314 +
      315 +void fnvlist_remove(nvlist_t *, const char *);
      316 +void fnvlist_remove_nvpair(nvlist_t *, nvpair_t *);
      317 +
      318 +nvpair_t *fnvlist_lookup_nvpair(nvlist_t *nvl, const char *name);
      319 +boolean_t fnvlist_lookup_boolean(nvlist_t *nvl, const char *name);
      320 +boolean_t fnvlist_lookup_boolean_value(nvlist_t *nvl, const char *name);
      321 +uchar_t fnvlist_lookup_byte(nvlist_t *nvl, const char *name);
      322 +int8_t fnvlist_lookup_int8(nvlist_t *nvl, const char *name);
      323 +int16_t fnvlist_lookup_int16(nvlist_t *nvl, const char *name);
      324 +int32_t fnvlist_lookup_int32(nvlist_t *nvl, const char *name);
      325 +int64_t fnvlist_lookup_int64(nvlist_t *nvl, const char *name);
      326 +uint8_t fnvlist_lookup_uint8_t(nvlist_t *nvl, const char *name);
      327 +uint16_t fnvlist_lookup_uint16(nvlist_t *nvl, const char *name);
      328 +uint32_t fnvlist_lookup_uint32(nvlist_t *nvl, const char *name);
      329 +uint64_t fnvlist_lookup_uint64(nvlist_t *nvl, const char *name);
      330 +char *fnvlist_lookup_string(nvlist_t *nvl, const char *name);
      331 +nvlist_t *fnvlist_lookup_nvlist(nvlist_t *nvl, const char *name);
      332 +
      333 +boolean_t fnvpair_value_boolean_value(nvpair_t *nvp);
      334 +uchar_t fnvpair_value_byte(nvpair_t *nvp);
      335 +int8_t fnvpair_value_int8(nvpair_t *nvp);
      336 +int16_t fnvpair_value_int16(nvpair_t *nvp);
      337 +int32_t fnvpair_value_int32(nvpair_t *nvp);
      338 +int64_t fnvpair_value_int64(nvpair_t *nvp);
      339 +uint8_t fnvpair_value_uint8_t(nvpair_t *nvp);
      340 +uint16_t fnvpair_value_uint16(nvpair_t *nvp);
      341 +uint32_t fnvpair_value_uint32(nvpair_t *nvp);
      342 +uint64_t fnvpair_value_uint64(nvpair_t *nvp);
      343 +char *fnvpair_value_string(nvpair_t *nvp);
      344 +nvlist_t *fnvpair_value_nvlist(nvpair_t *nvp);
      345 +
 277  346  #ifdef  __cplusplus
 278  347  }
 279  348  #endif
 280  349  
 281  350  #endif  /* _SYS_NVPAIR_H */
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX