Print this page
NEX-16623 Ability to set properties for multiple datasets/snapshots during single sync-round
Reviewed by: Joyce McIntosh <joyce.mcintosh@nexenta.com>
Reviewed by: Sanjay Nadkarni <sanjay.nadkarni@nexenta.com>
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
NEX-5987 need to change ssm wearout threshold to 90%
Reviewed by: Roman Strashkin <roman.strashkin@nexenta.com>
Reviewed by: Gordon Ross <gwr@nexenta.com>
Reviewed by: Sanjay Nadkarni <sanjay.nadkarni@nexenta.com>
NEX-5925 KRRP: Incorrect collecting of snap-props causes errors during recv
Reviewed by: Alek Pinchuk <alek.pinchuk@nexenta.com>
Reviewed by: Alexey Komarov <alexey.komarov@nexenta.com>
Reviewed by: Alex Aizman <alex.aizman@nexenta.com>
6160 /usr/lib/fs/zfs/bootinstall should use bootadm
Reviewed by: Igor Kozhukhov <ikozhukhov@gmail.com>
Reviewed by: Adam Števko <adam.stevko@gmail.com>
Reviewed by: Josef Sipek <jeffpc@josefsipek.net>
Approved by: Richard Lowe <richlowe@richlowe.net>
4185 add new cryptographic checksums to ZFS: SHA-512, Skein, Edon-R (NULL is not an int)
6171 dsl_prop_unregister() slows down dataset eviction.
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Prakash Surya <prakash.surya@delphix.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Fixup merge results
re #12585 rb4049 ZFS++ work port - refactoring to improve separation of open/closed code, bug fixes, performance improvements - open code

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/fs/zfs/sys/dsl_prop.h
          +++ new/usr/src/uts/common/fs/zfs/sys/dsl_prop.h
↓ open down ↓ 13 lines elided ↑ open up ↑
  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) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
  23   23   * Copyright (c) 2012 by Delphix. All rights reserved.
       24 + * Copyright 2016 Nexenta Systems, Inc. All rights reserved.
  24   25   */
  25   26  
  26   27  #ifndef _SYS_DSL_PROP_H
  27   28  #define _SYS_DSL_PROP_H
  28   29  
  29   30  #include <sys/dmu.h>
  30   31  #include <sys/dsl_pool.h>
  31   32  #include <sys/zfs_context.h>
  32   33  #include <sys/dsl_synctask.h>
  33   34  
  34   35  #ifdef  __cplusplus
  35   36  extern "C" {
  36   37  #endif
  37   38  
       39 +#define ZPROP_INHERIT_SUFFIX "$inherit"
       40 +#define ZPROP_RECVD_SUFFIX "$recvd"
       41 +
  38   42  struct dsl_dataset;
  39   43  struct dsl_dir;
  40   44  
  41   45  /* The callback func may not call into the DMU or DSL! */
  42   46  typedef void (dsl_prop_changed_cb_t)(void *arg, uint64_t newval);
  43   47  
  44   48  typedef struct dsl_prop_record {
  45   49          list_node_t pr_node; /* link on dd_props */
  46   50          const char *pr_propname;
  47   51          list_t pr_cbs;
↓ open down ↓ 28 lines elided ↑ open up ↑
  76   80  int dsl_prop_get_all(objset_t *os, nvlist_t **nvp);
  77   81  int dsl_prop_get_received(const char *dsname, nvlist_t **nvp);
  78   82  int dsl_prop_get_ds(struct dsl_dataset *ds, const char *propname,
  79   83      int intsz, int numints, void *buf, char *setpoint);
  80   84  int dsl_prop_get_int_ds(struct dsl_dataset *ds, const char *propname,
  81   85      uint64_t *valuep);
  82   86  int dsl_prop_get_dd(struct dsl_dir *dd, const char *propname,
  83   87      int intsz, int numints, void *buf, char *setpoint,
  84   88      boolean_t snapshot);
  85   89  
       90 +int dsl_props_set_mds(const char *pool_name, nvlist_t *dss_props,
       91 +    size_t num_props);
       92 +
  86   93  void dsl_props_set_sync_impl(struct dsl_dataset *ds, zprop_source_t source,
  87   94      nvlist_t *props, dmu_tx_t *tx);
  88   95  void dsl_prop_set_sync_impl(struct dsl_dataset *ds, const char *propname,
  89   96      zprop_source_t source, int intsz, int numints, const void *value,
  90   97      dmu_tx_t *tx);
  91   98  int dsl_props_set(const char *dsname, zprop_source_t source, nvlist_t *nvl);
  92   99  int dsl_prop_set_int(const char *dsname, const char *propname,
  93  100      zprop_source_t source, uint64_t value);
  94  101  int dsl_prop_set_string(const char *dsname, const char *propname,
  95  102      zprop_source_t source, const char *value);
↓ open down ↓ 20 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX