Print this page
3956 ::vdev -r should work with pipelines
3957 ztest should update the cachefile before killing itself
3958 multiple scans can lead to partial resilvering
3959 ddt entries are not always resilvered
3960 dsl_scan can skip over dedup-ed blocks if physical birth != logical birth
3961 freed gang blocks are not resilvered and can cause pool to suspend
3962 ztest should print out zfs debug buffer before exiting
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Adam Leventhal <ahl@delphix.com>

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/fs/zfs/sys/vdev_impl.h
          +++ new/usr/src/uts/common/fs/zfs/sys/vdev_impl.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) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
  23      - * Copyright (c) 2012 by Delphix. All rights reserved.
       23 + * Copyright (c) 2013 by Delphix. All rights reserved.
  24   24   */
  25   25  
  26   26  #ifndef _SYS_VDEV_IMPL_H
  27   27  #define _SYS_VDEV_IMPL_H
  28   28  
  29   29  #include <sys/avl.h>
  30   30  #include <sys/dmu.h>
  31   31  #include <sys/metaslab.h>
  32   32  #include <sys/nvpair.h>
  33   33  #include <sys/space_map.h>
↓ open down ↓ 132 lines elided ↑ open up ↑
 166  166           * Leaf vdev state.
 167  167           */
 168  168          uint64_t        vdev_psize;     /* physical device capacity     */
 169  169          space_map_obj_t vdev_dtl_smo;   /* dirty time log space map obj */
 170  170          txg_node_t      vdev_dtl_node;  /* per-txg dirty DTL linkage    */
 171  171          uint64_t        vdev_wholedisk; /* true if this is a whole disk */
 172  172          uint64_t        vdev_offline;   /* persistent offline state     */
 173  173          uint64_t        vdev_faulted;   /* persistent faulted state     */
 174  174          uint64_t        vdev_degraded;  /* persistent degraded state    */
 175  175          uint64_t        vdev_removed;   /* persistent removed state     */
 176      -        uint64_t        vdev_resilvering; /* persistent resilvering state */
      176 +        uint64_t        vdev_resilver_txg; /* persistent resilvering state */
 177  177          uint64_t        vdev_nparity;   /* number of parity devices for raidz */
 178  178          char            *vdev_path;     /* vdev path (if any)           */
 179  179          char            *vdev_devid;    /* vdev devid (if any)          */
 180  180          char            *vdev_physpath; /* vdev device path (if any)    */
 181  181          char            *vdev_fru;      /* physical FRU location        */
 182  182          uint64_t        vdev_not_present; /* not present during import  */
 183  183          uint64_t        vdev_unspare;   /* unspare when resilvering done */
 184  184          hrtime_t        vdev_last_try;  /* last reopen time             */
 185  185          boolean_t       vdev_nowritecache; /* true if flushwritecache failed */
 186  186          boolean_t       vdev_checkremove; /* temporary online test      */
↓ open down ↓ 152 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX