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 /* 23 * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. 24 * Copyright 2016 Nexenta Systems, Inc. 25 * Copyright 2017 Joyent, Inc. 26 */ 27 28 #ifndef _SYS_SYSEVENT_EVENTDEFS_H 29 #define _SYS_SYSEVENT_EVENTDEFS_H 30 31 #ifdef __cplusplus 32 extern "C" { 33 #endif 34 35 /* 36 * eventdefs.h contains public definitions for sysevent types (classes 37 * and subclasses). All additions/removal/changes are subject 38 * to PSARC approval. 39 */ 40 41 /* Sysevent Class definitions */ 42 #define EC_NONE "EC_none" 43 #define EC_PRIV "EC_priv" 44 #define EC_PLATFORM "EC_platform" /* events private to platform */ 45 #define EC_DR "EC_dr" /* Dynamic reconfiguration event class */ 46 #define EC_ENV "EC_env" /* Environmental monitor event class */ 47 #define EC_DOMAIN "EC_domain" /* Domain event class */ 48 #define EC_AP_DRIVER "EC_ap_driver" /* Alternate Pathing event class */ 49 #define EC_IPMP "EC_ipmp" /* IP Multipathing event class */ 50 #define EC_DEV_ADD "EC_dev_add" /* device add event class */ 51 #define EC_DEV_REMOVE "EC_dev_remove" /* device remove event class */ 52 #define EC_DEV_BRANCH "EC_dev_branch" /* device tree branch event class */ 53 #define EC_DEV_STATUS "EC_dev_status" /* device status event class */ 54 #define EC_FM "EC_fm" /* FMA error report event */ 55 #define EC_ZFS "EC_zfs" /* ZFS event */ 56 #define EC_DATALINK "EC_datalink" /* datalink event */ 57 #define EC_VRRP "EC_vrrp" /* VRRP event */ 58 59 /* 60 * The following event class is reserved for exclusive use 61 * by Sun Cluster software. 62 */ 63 #define EC_CLUSTER "EC_Cluster" 64 65 /* 66 * EC_DR subclass definitions - supporting attributes (name/value pairs) 67 * are found in sys/sysevent/dr.h 68 */ 69 70 /* Attachment point state change */ 71 #define ESC_DR_AP_STATE_CHANGE "ESC_dr_ap_state_change" 72 #define ESC_DR_REQ "ESC_dr_req" /* Request DR */ 73 #define ESC_DR_TARGET_STATE_CHANGE "ESC_dr_target_state_change" 74 75 /* 76 * EC_ENV subclass definitions - supporting attributes (name/value pairs) 77 * are found in sys/sysevent/env.h 78 */ 79 #define ESC_ENV_TEMP "ESC_env_temp" /* Temperature change event subclass */ 80 #define ESC_ENV_FAN "ESC_env_fan" /* Fan status change event subclass */ 81 #define ESC_ENV_POWER "ESC_env_power" /* Power supply change event subclass */ 82 #define ESC_ENV_LED "ESC_env_led" /* LED change event subclass */ 83 84 /* 85 * EC_DOMAIN subclass definitions - supporting attributes (name/value pairs) 86 * are found in sys/sysevent/domain.h 87 */ 88 89 /* Domain state change */ 90 #define ESC_DOMAIN_STATE_CHANGE "ESC_domain_state_change" 91 /* Domain loghost name change */ 92 #define ESC_DOMAIN_LOGHOST_CHANGE "ESC_domain_loghost_change" 93 94 /* 95 * EC_AP_DRIVER subclass definitions - supporting attributes (name/value pairs) 96 * are found in sys/sysevent/ap_driver.h 97 */ 98 99 /* Alternate Pathing path switch */ 100 #define ESC_AP_DRIVER_PATHSWITCH "ESC_ap_driver_pathswitch" 101 /* Alternate Pathing database commit */ 102 #define ESC_AP_DRIVER_COMMIT "ESC_ap_driver_commit" 103 /* Alternate Pathing physical path status change */ 104 #define ESC_AP_DRIVER_PHYS_PATH_STATUS_CHANGE \ 105 "ESC_ap_driver_phys_path_status_change" 106 107 /* 108 * EC_IPMP subclass definitions - supporting attributes (name/value pairs) 109 * are found in sys/sysevent/ipmp.h 110 */ 111 112 /* IPMP group has changed state */ 113 #define ESC_IPMP_GROUP_STATE "ESC_ipmp_group_state" 114 115 /* IPMP group has been created or removed */ 116 #define ESC_IPMP_GROUP_CHANGE "ESC_ipmp_group_change" 117 118 /* IPMP group has had an interface added or removed */ 119 #define ESC_IPMP_GROUP_MEMBER_CHANGE "ESC_ipmp_group_member_change" 120 121 /* Interface within an IPMP group has changed state or type */ 122 #define ESC_IPMP_IF_CHANGE "ESC_ipmp_if_change" 123 124 /* IPMP probe has changed state */ 125 #define ESC_IPMP_PROBE_STATE "ESC_ipmp_probe_state" 126 127 /* 128 * EC_DEV_ADD and EC_DEV_REMOVE subclass definitions - supporting attributes 129 * (name/value pairs) are found in sys/sysevent/dev.h 130 */ 131 #define ESC_DISK "disk" /* disk device */ 132 #define ESC_NETWORK "network" /* network interface */ 133 #define ESC_PRINTER "printer" /* printer device */ 134 #define ESC_LOFI "lofi" /* lofi device */ 135 136 /* 137 * EC_DEV_BRANCH subclass definitions - supporting attributes (name/value pairs) 138 * are found in sys/sysevent/dev.h 139 */ 140 141 /* device tree branch added */ 142 #define ESC_DEV_BRANCH_ADD "ESC_dev_branch_add" 143 144 /* device tree branch removed */ 145 #define ESC_DEV_BRANCH_REMOVE "ESC_dev_branch_remove" 146 147 /* 148 * EC_DEV_STATUS subclass definitions 149 * 150 * device capacity dynamically changed 151 */ 152 #define ESC_DEV_DLE "ESC_dev_dle" 153 154 /* LUN has received an eject request from the user */ 155 #define ESC_DEV_EJECT_REQUEST "ESC_dev_eject_request" 156 157 /* FMA Fault and Error event protocol subclass */ 158 #define ESC_FM_ERROR "ESC_FM_error" 159 #define ESC_FM_ERROR_REPLAY "ESC_FM_error_replay" 160 161 /* Service processor subclass definitions */ 162 #define ESC_PLATFORM_SP_RESET "ESC_platform_sp_reset" 163 164 /* 165 * EC_PWRCTL subclass definitions 166 */ 167 #define EC_PWRCTL "EC_pwrctl" 168 #define ESC_PWRCTL_ADD "ESC_pwrctl_add" 169 #define ESC_PWRCTL_REMOVE "ESC_pwrctl_remove" 170 #define ESC_PWRCTL_WARN "ESC_pwrctl_warn" 171 #define ESC_PWRCTL_LOW "ESC_pwrctl_low" 172 #define ESC_PWRCTL_STATE_CHANGE "ESC_pwrctl_state_change" 173 #define ESC_PWRCTL_POWER_BUTTON "ESC_pwrctl_power_button" 174 #define ESC_PWRCTL_BRIGHTNESS_UP "ESC_pwrctl_brightness_up" 175 #define ESC_PWRCTL_BRIGHTNESS_DOWN "ESC_pwrctl_brightness_down" 176 177 /* EC_ACPIEV subclass definitions */ 178 #define EC_ACPIEV "EC_acpiev" 179 #define ESC_ACPIEV_DISPLAY_SWITCH "ESC_acpiev_display_switch" 180 #define ESC_ACPIEV_SCREEN_LOCK "ESC_acpiev_screen_lock" 181 #define ESC_ACPIEV_SLEEP "ESC_acpiev_sleep" 182 #define ESC_ACPIEV_AUDIO_MUTE "ESC_acpiev_audio_mute" 183 #define ESC_ACPIEV_WIFI "ESC_acpiev_wifi" 184 #define ESC_ACPIEV_TOUCHPAD "ESC_acpiev_touchpad" 185 186 /* 187 * ZFS subclass definitions. supporting attributes (name/value paris) are found 188 * in sys/fs/zfs.h 189 */ 190 #define ESC_ZFS_RESILVER_START "ESC_ZFS_resilver_start" 191 #define ESC_ZFS_RESILVER_FINISH "ESC_ZFS_resilver_finish" 192 #define ESC_ZFS_VDEV_REMOVE "ESC_ZFS_vdev_remove" 193 #define ESC_ZFS_VDEV_REMOVE_AUX "ESC_ZFS_vdev_remove_aux" 194 #define ESC_ZFS_VDEV_REMOVE_DEV "ESC_ZFS_vdev_remove_dev" 195 #define ESC_ZFS_POOL_CREATE "ESC_ZFS_pool_create" 196 #define ESC_ZFS_POOL_DESTROY "ESC_ZFS_pool_destroy" 197 #define ESC_ZFS_POOL_IMPORT "ESC_ZFS_pool_import" 198 #define ESC_ZFS_VDEV_ADD "ESC_ZFS_vdev_add" 199 #define ESC_ZFS_VDEV_ATTACH "ESC_ZFS_vdev_attach" 200 #define ESC_ZFS_VDEV_CLEAR "ESC_ZFS_vdev_clear" 201 #define ESC_ZFS_VDEV_CHECK "ESC_ZFS_vdev_check" 202 #define ESC_ZFS_VDEV_ONLINE "ESC_ZFS_vdev_online" 203 #define ESC_ZFS_CONFIG_SYNC "ESC_ZFS_config_sync" 204 #define ESC_ZFS_SCRUB_START "ESC_ZFS_scrub_start" 205 #define ESC_ZFS_SCRUB_FINISH "ESC_ZFS_scrub_finish" 206 #define ESC_ZFS_VDEV_SPARE "ESC_ZFS_vdev_spare" 207 #define ESC_ZFS_BOOTFS_VDEV_ATTACH "ESC_ZFS_bootfs_vdev_attach" 208 #define ESC_ZFS_POOL_REGUID "ESC_ZFS_pool_reguid" 209 #define ESC_ZFS_HISTORY_EVENT "ESC_ZFS_history_event" 210 211 /* 212 * datalink subclass definitions. 213 */ 214 #define ESC_DATALINK_PHYS_ADD "ESC_datalink_phys_add" /* new physical link */ 215 216 /* 217 * VRRP subclass definitions. Supporting attributes (name/value paris) are 218 * found in sys/sysevent/vrrp.h 219 */ 220 #define ESC_VRRP_STATE_CHANGE "ESC_vrrp_state_change" 221 222 #ifdef __cplusplus 223 } 224 #endif 225 226 #endif /* _SYS_SYSEVENT_EVENTDEFS_H */ 227