1 /*
   2  * CDDL HEADER START
   3  *
   4  * The contents of this file are subject to the terms of the
   5  * Common Development and Distribution License (the "License").
   6  * You may not use this file except in compliance with the License.
   7  *
   8  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   9  * or http://www.opensolaris.org/os/licensing.
  10  * See the License for the specific language governing permissions
  11  * and limitations under the License.
  12  *
  13  * When distributing Covered Code, include this CDDL HEADER in each
  14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15  * If applicable, add the following below this CDDL HEADER, with the
  16  * fields enclosed by brackets "[]" replaced with your own identifying
  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 /*
  22  * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
  23  * Use is subject to license terms.
  24  */
  25 
  26 #ifndef _SYS_FM_FS_ZFS_H
  27 #define _SYS_FM_FS_ZFS_H
  28 
  29 #ifdef  __cplusplus
  30 extern "C" {
  31 #endif
  32 
  33 #define ZFS_ERROR_CLASS                         "fs.zfs"
  34 
  35 #define FM_EREPORT_ZFS_CHECKSUM                 "checksum"
  36 #define FM_EREPORT_ZFS_IO                       "io"
  37 #define FM_EREPORT_ZFS_DATA                     "data"
  38 #define FM_EREPORT_ZFS_POOL                     "zpool"
  39 #define FM_EREPORT_ZFS_DEVICE_UNKNOWN           "vdev.unknown"
  40 #define FM_EREPORT_ZFS_DEVICE_OPEN_FAILED       "vdev.open_failed"
  41 #define FM_EREPORT_ZFS_DEVICE_CORRUPT_DATA      "vdev.corrupt_data"
  42 #define FM_EREPORT_ZFS_DEVICE_NO_REPLICAS       "vdev.no_replicas"
  43 #define FM_EREPORT_ZFS_DEVICE_BAD_GUID_SUM      "vdev.bad_guid_sum"
  44 #define FM_EREPORT_ZFS_DEVICE_TOO_SMALL         "vdev.too_small"
  45 #define FM_EREPORT_ZFS_DEVICE_BAD_LABEL         "vdev.bad_label"
  46 #define FM_EREPORT_ZFS_IO_FAILURE               "io_failure"
  47 #define FM_EREPORT_ZFS_PROBE_FAILURE            "probe_failure"
  48 #define FM_EREPORT_ZFS_LOG_REPLAY               "log_replay"
  49 
  50 #define FM_EREPORT_PAYLOAD_ZFS_POOL             "pool"
  51 #define FM_EREPORT_PAYLOAD_ZFS_POOL_FAILMODE    "pool_failmode"
  52 #define FM_EREPORT_PAYLOAD_ZFS_POOL_GUID        "pool_guid"
  53 #define FM_EREPORT_PAYLOAD_ZFS_POOL_CONTEXT     "pool_context"
  54 #define FM_EREPORT_PAYLOAD_ZFS_VDEV_GUID        "vdev_guid"
  55 #define FM_EREPORT_PAYLOAD_ZFS_VDEV_TYPE        "vdev_type"
  56 #define FM_EREPORT_PAYLOAD_ZFS_VDEV_PATH        "vdev_path"
  57 #define FM_EREPORT_PAYLOAD_ZFS_VDEV_DEVID       "vdev_devid"
  58 #define FM_EREPORT_PAYLOAD_ZFS_VDEV_FRU         "vdev_fru"
  59 #define FM_EREPORT_PAYLOAD_ZFS_PARENT_GUID      "parent_guid"
  60 #define FM_EREPORT_PAYLOAD_ZFS_PARENT_TYPE      "parent_type"
  61 #define FM_EREPORT_PAYLOAD_ZFS_PARENT_PATH      "parent_path"
  62 #define FM_EREPORT_PAYLOAD_ZFS_PARENT_DEVID     "parent_devid"
  63 #define FM_EREPORT_PAYLOAD_ZFS_ZIO_OBJSET       "zio_objset"
  64 #define FM_EREPORT_PAYLOAD_ZFS_ZIO_OBJECT       "zio_object"
  65 #define FM_EREPORT_PAYLOAD_ZFS_ZIO_LEVEL        "zio_level"
  66 #define FM_EREPORT_PAYLOAD_ZFS_ZIO_BLKID        "zio_blkid"
  67 #define FM_EREPORT_PAYLOAD_ZFS_ZIO_ERR          "zio_err"
  68 #define FM_EREPORT_PAYLOAD_ZFS_ZIO_OFFSET       "zio_offset"
  69 #define FM_EREPORT_PAYLOAD_ZFS_ZIO_SIZE         "zio_size"
  70 #define FM_EREPORT_PAYLOAD_ZFS_PREV_STATE       "prev_state"
  71 #define FM_EREPORT_PAYLOAD_ZFS_CKSUM_EXPECTED   "cksum_expected"
  72 #define FM_EREPORT_PAYLOAD_ZFS_CKSUM_ACTUAL     "cksum_actual"
  73 #define FM_EREPORT_PAYLOAD_ZFS_CKSUM_ALGO       "cksum_algorithm"
  74 #define FM_EREPORT_PAYLOAD_ZFS_CKSUM_BYTESWAP   "cksum_byteswap"
  75 #define FM_EREPORT_PAYLOAD_ZFS_BAD_OFFSET_RANGES "bad_ranges"
  76 #define FM_EREPORT_PAYLOAD_ZFS_BAD_RANGE_MIN_GAP "bad_ranges_min_gap"
  77 #define FM_EREPORT_PAYLOAD_ZFS_BAD_RANGE_SETS   "bad_range_sets"
  78 #define FM_EREPORT_PAYLOAD_ZFS_BAD_RANGE_CLEARS "bad_range_clears"
  79 #define FM_EREPORT_PAYLOAD_ZFS_BAD_SET_BITS     "bad_set_bits"
  80 #define FM_EREPORT_PAYLOAD_ZFS_BAD_CLEARED_BITS "bad_cleared_bits"
  81 #define FM_EREPORT_PAYLOAD_ZFS_BAD_SET_HISTOGRAM "bad_set_histogram"
  82 #define FM_EREPORT_PAYLOAD_ZFS_BAD_CLEARED_HISTOGRAM "bad_cleared_histogram"
  83 
  84 #define FM_EREPORT_FAILMODE_WAIT                "wait"
  85 #define FM_EREPORT_FAILMODE_CONTINUE            "continue"
  86 #define FM_EREPORT_FAILMODE_PANIC               "panic"
  87 
  88 #define FM_RESOURCE_REMOVED                     "removed"
  89 #define FM_RESOURCE_AUTOREPLACE                 "autoreplace"
  90 #define FM_RESOURCE_STATECHANGE                 "statechange"
  91 
  92 #ifdef  __cplusplus
  93 }
  94 #endif
  95 
  96 #endif  /* _SYS_FM_FS_ZFS_H */