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 */ 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 * The following event class is reserved for exclusive use 60 * by Sun Cluster software. 61 */ 62 #define EC_CLUSTER "EC_Cluster" 63 64 /* 65 * EC_DR subclass definitions - supporting attributes (name/value pairs) 66 * are found in sys/sysevent/dr.h 67 */ 68 69 /* Attachment point state change */ 70 #define ESC_DR_AP_STATE_CHANGE "ESC_dr_ap_state_change" 71 #define ESC_DR_REQ "ESC_dr_req" /* Request DR */ 72 #define ESC_DR_TARGET_STATE_CHANGE "ESC_dr_target_state_change" 73 74 /* 75 * EC_ENV subclass definitions - supporting attributes (name/value pairs) 76 * are found in sys/sysevent/env.h 77 */ 78 #define ESC_ENV_TEMP "ESC_env_temp" /* Temperature change event subclass */ 79 #define ESC_ENV_FAN "ESC_env_fan" /* Fan status change event subclass */ 80 #define ESC_ENV_POWER "ESC_env_power" /* Power supply change event subclass */ 81 #define ESC_ENV_LED "ESC_env_led" /* LED change event subclass */ 82 83 /* 84 * EC_DOMAIN subclass definitions - supporting attributes (name/value pairs) 85 * are found in sys/sysevent/domain.h 86 */ 87 88 /* Domain state change */ 89 #define ESC_DOMAIN_STATE_CHANGE "ESC_domain_state_change" 90 /* Domain loghost name change */ 91 #define ESC_DOMAIN_LOGHOST_CHANGE "ESC_domain_loghost_change" 92 93 /* 94 * EC_AP_DRIVER subclass definitions - supporting attributes (name/value pairs) 95 * are found in sys/sysevent/ap_driver.h 96 */ 97 98 /* Alternate Pathing path switch */ 99 #define ESC_AP_DRIVER_PATHSWITCH "ESC_ap_driver_pathswitch" 100 /* Alternate Pathing database commit */ 101 #define ESC_AP_DRIVER_COMMIT "ESC_ap_driver_commit" 102 /* Alternate Pathing physical path status change */ 103 #define ESC_AP_DRIVER_PHYS_PATH_STATUS_CHANGE \ 104 "ESC_ap_driver_phys_path_status_change" 105 106 /* 107 * EC_IPMP subclass definitions - supporting attributes (name/value pairs) 108 * are found in sys/sysevent/ipmp.h 109 */ 110 111 /* IPMP group has changed state */ 112 #define ESC_IPMP_GROUP_STATE "ESC_ipmp_group_state" 113 114 /* IPMP group has been created or removed */ 115 #define ESC_IPMP_GROUP_CHANGE "ESC_ipmp_group_change" 116 117 /* IPMP group has had an interface added or removed */ 118 #define ESC_IPMP_GROUP_MEMBER_CHANGE "ESC_ipmp_group_member_change" 119 120 /* Interface within an IPMP group has changed state or type */ 121 #define ESC_IPMP_IF_CHANGE "ESC_ipmp_if_change" 122 123 /* IPMP probe has changed state */ 124 #define ESC_IPMP_PROBE_STATE "ESC_ipmp_probe_state" 125 126 /* 127 * EC_DEV_ADD and EC_DEV_REMOVE subclass definitions - supporting attributes 128 * (name/value pairs) are found in sys/sysevent/dev.h 129 */ 130 #define ESC_DISK "disk" /* disk device */ 131 #define ESC_NETWORK "network" /* network interface */ 132 #define ESC_PRINTER "printer" /* printer device */ 133 #define ESC_LOFI "lofi" /* lofi device */ 134 135 /* 136 * EC_DEV_BRANCH subclass definitions - supporting attributes (name/value pairs) 137 * are found in sys/sysevent/dev.h 138 */ 139 140 /* device tree branch added */ 141 #define ESC_DEV_BRANCH_ADD "ESC_dev_branch_add" 142 143 /* device tree branch removed */ 144 #define ESC_DEV_BRANCH_REMOVE "ESC_dev_branch_remove" 145 146 /* 147 * EC_DEV_STATUS subclass definitions 148 * 149 * device capacity dynamically changed 150 */ 151 #define ESC_DEV_DLE "ESC_dev_dle" 152 153 /* LUN has received an eject request from the user */ 154 #define ESC_DEV_EJECT_REQUEST "ESC_dev_eject_request" 155 156 /* FMA Fault and Error event protocol subclass */ 157 #define ESC_FM_ERROR "ESC_FM_error" 158 #define ESC_FM_ERROR_REPLAY "ESC_FM_error_replay" 159 160 /* Service processor subclass definitions */ 161 #define ESC_PLATFORM_SP_RESET "ESC_platform_sp_reset" 162 163 /* 164 * EC_PWRCTL subclass definitions 165 */ 166 #define EC_PWRCTL "EC_pwrctl" 167 #define ESC_PWRCTL_ADD "ESC_pwrctl_add" 168 #define ESC_PWRCTL_REMOVE "ESC_pwrctl_remove" 169 #define ESC_PWRCTL_WARN "ESC_pwrctl_warn" 170 #define ESC_PWRCTL_LOW "ESC_pwrctl_low" 171 #define ESC_PWRCTL_STATE_CHANGE "ESC_pwrctl_state_change" 172 #define ESC_PWRCTL_POWER_BUTTON "ESC_pwrctl_power_button" 173 #define ESC_PWRCTL_BRIGHTNESS_UP "ESC_pwrctl_brightness_up" 174 #define ESC_PWRCTL_BRIGHTNESS_DOWN "ESC_pwrctl_brightness_down" 175 176 /* EC_ACPIEV subclass definitions */ 177 #define EC_ACPIEV "EC_acpiev" 178 #define ESC_ACPIEV_DISPLAY_SWITCH "ESC_acpiev_display_switch" 179 #define ESC_ACPIEV_SCREEN_LOCK "ESC_acpiev_screen_lock" 180 #define ESC_ACPIEV_SLEEP "ESC_acpiev_sleep" 181 #define ESC_ACPIEV_AUDIO_MUTE "ESC_acpiev_audio_mute" 182 #define ESC_ACPIEV_WIFI "ESC_acpiev_wifi" 183 #define ESC_ACPIEV_TOUCHPAD "ESC_acpiev_touchpad" 184 185 /* 186 * ZFS subclass definitions. supporting attributes (name/value paris) are found 187 * in sys/fs/zfs.h 188 */ 189 #define ESC_ZFS_RESILVER_START "ESC_ZFS_resilver_start" 190 #define ESC_ZFS_RESILVER_FINISH "ESC_ZFS_resilver_finish" 191 #define ESC_ZFS_VDEV_REMOVE "ESC_ZFS_vdev_remove" 192 #define ESC_ZFS_VDEV_REMOVE_AUX "ESC_ZFS_vdev_remove_aux" 193 #define ESC_ZFS_VDEV_REMOVE_DEV "ESC_ZFS_vdev_remove_dev" 194 #define ESC_ZFS_POOL_CREATE "ESC_ZFS_pool_create" 195 #define ESC_ZFS_POOL_DESTROY "ESC_ZFS_pool_destroy" 196 #define ESC_ZFS_POOL_IMPORT "ESC_ZFS_pool_import" 197 #define ESC_ZFS_VDEV_ADD "ESC_ZFS_vdev_add" 198 #define ESC_ZFS_VDEV_ATTACH "ESC_ZFS_vdev_attach" 199 #define ESC_ZFS_VDEV_CLEAR "ESC_ZFS_vdev_clear" 200 #define ESC_ZFS_VDEV_CHECK "ESC_ZFS_vdev_check" 201 #define ESC_ZFS_VDEV_ONLINE "ESC_ZFS_vdev_online" 202 #define ESC_ZFS_CONFIG_SYNC "ESC_ZFS_config_sync" 203 #define ESC_ZFS_SCRUB_START "ESC_ZFS_scrub_start" 204 #define ESC_ZFS_SCRUB_FINISH "ESC_ZFS_scrub_finish" 205 #define ESC_ZFS_VDEV_SPARE "ESC_ZFS_vdev_spare" 206 #define ESC_ZFS_BOOTFS_VDEV_ATTACH "ESC_ZFS_bootfs_vdev_attach" 207 #define ESC_ZFS_POOL_REGUID "ESC_ZFS_pool_reguid" 208 209 /* 210 * datalink subclass definitions. 211 */ 212 #define ESC_DATALINK_PHYS_ADD "ESC_datalink_phys_add" /* new physical link */ 213 214 /* 215 * VRRP subclass definitions. Supporting attributes (name/value paris) are 216 * found in sys/sysevent/vrrp.h 217 */ 218 #define ESC_VRRP_STATE_CHANGE "ESC_vrrp_state_change" 219 220 #ifdef __cplusplus 221 } 222 #endif 223 224 #endif /* _SYS_SYSEVENT_EVENTDEFS_H */ 225