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 https://opensource.org/licenses/CDDL-1.0. 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 (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. 23 * Copyright 2015 Nexenta Systems, Inc. All rights reserved. 24 * Copyright 2017 Joyent, Inc. 25 */ 26 27 #ifndef _SYS_SYSEVENT_EVENTDEFS_H 28 #define _SYS_SYSEVENT_EVENTDEFS_H 29 30 #ifdef __cplusplus 31 extern "C" { 32 #endif 33 34 /* 35 * eventdefs.h contains public definitions for sysevent types (classes 36 * and subclasses). All additions/removal/changes are subject 37 * to PSARC approval. 38 */ 39 40 /* Sysevent Class definitions */ 41 #define EC_NONE "EC_none" 42 #define EC_PRIV "EC_priv" 43 #define EC_PLATFORM "EC_platform" /* events private to platform */ 44 #define EC_DR "EC_dr" /* Dynamic reconfiguration event class */ 45 #define EC_ENV "EC_env" /* Environmental monitor event class */ 46 #define EC_DOMAIN "EC_domain" /* Domain event class */ 47 #define EC_AP_DRIVER "EC_ap_driver" /* Alternate Pathing event class */ 48 #define EC_IPMP "EC_ipmp" /* IP Multipathing event class */ 49 #define EC_DEV_ADD "EC_dev_add" /* device add event class */ 50 #define EC_DEV_REMOVE "EC_dev_remove" /* device remove event class */ 51 #define EC_DEV_BRANCH "EC_dev_branch" /* device tree branch event class */ 52 #define EC_DEV_STATUS "EC_dev_status" /* device status event class */ 53 #define EC_FM "EC_fm" /* FMA error report event */ 54 #define EC_ZFS "EC_zfs" /* ZFS event */ 55 #define EC_DATALINK "EC_datalink" /* datalink event */ 56 #define EC_VRRP "EC_vrrp" /* VRRP event */ 57 58 /* 59 * EC_DEV_ADD and EC_DEV_REMOVE subclass definitions - supporting attributes 60 * (name/value pairs) are found in sys/sysevent/dev.h 61 */ 62 #define ESC_DISK "disk" /* disk device */ 63 #define ESC_NETWORK "network" /* network interface */ 64 #define ESC_PRINTER "printer" /* printer device */ 65 #define ESC_LOFI "lofi" /* lofi device */ 66 67 /* 68 * EC_DEV_BRANCH subclass definitions - supporting attributes (name/value pairs) 69 * are found in sys/sysevent/dev.h 70 */ 71 72 /* device tree branch added */ 73 #define ESC_DEV_BRANCH_ADD "dev_branch_add" 74 75 /* device tree branch removed */ 76 #define ESC_DEV_BRANCH_REMOVE "dev_branch_remove" 77 78 /* 79 * EC_DEV_STATUS subclass definitions 80 * 81 * device capacity dynamically changed 82 */ 83 #define ESC_DEV_DLE "dev_dle" 84 85 /* LUN has received an eject request from the user */ 86 #define ESC_DEV_EJECT_REQUEST "dev_eject_request" 87 88 /* FMA Fault and Error event protocol subclass */ 89 #define ESC_FM_ERROR "error" 90 #define ESC_FM_ERROR_REPLAY "error_replay" 91 92 /* 93 * ZFS subclass definitions. supporting attributes (name/value paris) are found 94 * in sys/fs/zfs.h 95 */ 96 #define ESC_ZFS_RESILVER_START "resilver_start" 97 #define ESC_ZFS_RESILVER_FINISH "resilver_finish" 98 #define ESC_ZFS_VDEV_REMOVE "vdev_remove" 99 #define ESC_ZFS_VDEV_REMOVE_AUX "vdev_remove_aux" 100 #define ESC_ZFS_VDEV_REMOVE_DEV "vdev_remove_dev" 101 #define ESC_ZFS_POOL_CREATE "pool_create" 102 #define ESC_ZFS_POOL_DESTROY "pool_destroy" 103 #define ESC_ZFS_POOL_IMPORT "pool_import" 104 #define ESC_ZFS_POOL_EXPORT "pool_export" 105 #define ESC_ZFS_VDEV_ADD "vdev_add" 106 #define ESC_ZFS_VDEV_ATTACH "vdev_attach" 107 #define ESC_ZFS_VDEV_CLEAR "vdev_clear" 108 #define ESC_ZFS_VDEV_CHECK "vdev_check" 109 #define ESC_ZFS_VDEV_ONLINE "vdev_online" 110 #define ESC_ZFS_CONFIG_SYNC "config_sync" 111 #define ESC_ZFS_SCRUB_START "scrub_start" 112 #define ESC_ZFS_SCRUB_FINISH "scrub_finish" 113 #define ESC_ZFS_SCRUB_ABORT "scrub_abort" 114 #define ESC_ZFS_SCRUB_RESUME "scrub_resume" 115 #define ESC_ZFS_SCRUB_PAUSED "scrub_paused" 116 #define ESC_ZFS_VDEV_SPARE "vdev_spare" 117 #define ESC_ZFS_VDEV_AUTOEXPAND "vdev_autoexpand" 118 #define ESC_ZFS_BOOTFS_VDEV_ATTACH "bootfs_vdev_attach" 119 #define ESC_ZFS_POOL_REGUID "pool_reguid" 120 #define ESC_ZFS_HISTORY_EVENT "history_event" 121 #define ESC_ZFS_TRIM_START "trim_start" 122 #define ESC_ZFS_TRIM_FINISH "trim_finish" 123 #define ESC_ZFS_TRIM_CANCEL "trim_cancel" 124 #define ESC_ZFS_TRIM_RESUME "trim_resume" 125 #define ESC_ZFS_TRIM_SUSPEND "trim_suspend" 126 #define ESC_ZFS_ERRORSCRUB_START "errorscrub_start" 127 #define ESC_ZFS_ERRORSCRUB_FINISH "errorscrub_finish" 128 #define ESC_ZFS_ERRORSCRUB_ABORT "errorscrub_abort" 129 #define ESC_ZFS_ERRORSCRUB_RESUME "errorscrub_resume" 130 #define ESC_ZFS_ERRORSCRUB_PAUSED "errorscrub_paused" 131 132 /* 133 * datalink subclass definitions. 134 */ 135 #define ESC_DATALINK_PHYS_ADD "datalink_phys_add" /* new physical link */ 136 137 #ifdef __cplusplus 138 } 139 #endif 140 141 #endif /* _SYS_SYSEVENT_EVENTDEFS_H */ 142