11ba4a712SPawel Jakub Dawidek /* 21ba4a712SPawel Jakub Dawidek * CDDL HEADER START 31ba4a712SPawel Jakub Dawidek * 41ba4a712SPawel Jakub Dawidek * The contents of this file are subject to the terms of the 51ba4a712SPawel Jakub Dawidek * Common Development and Distribution License (the "License"). 61ba4a712SPawel Jakub Dawidek * You may not use this file except in compliance with the License. 71ba4a712SPawel Jakub Dawidek * 81ba4a712SPawel Jakub Dawidek * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 91ba4a712SPawel Jakub Dawidek * or http://www.opensolaris.org/os/licensing. 101ba4a712SPawel Jakub Dawidek * See the License for the specific language governing permissions 111ba4a712SPawel Jakub Dawidek * and limitations under the License. 121ba4a712SPawel Jakub Dawidek * 131ba4a712SPawel Jakub Dawidek * When distributing Covered Code, include this CDDL HEADER in each 141ba4a712SPawel Jakub Dawidek * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 151ba4a712SPawel Jakub Dawidek * If applicable, add the following below this CDDL HEADER, with the 161ba4a712SPawel Jakub Dawidek * fields enclosed by brackets "[]" replaced with your own identifying 171ba4a712SPawel Jakub Dawidek * information: Portions Copyright [yyyy] [name of copyright owner] 181ba4a712SPawel Jakub Dawidek * 191ba4a712SPawel Jakub Dawidek * CDDL HEADER END 201ba4a712SPawel Jakub Dawidek */ 211ba4a712SPawel Jakub Dawidek 2210b9d77bSPawel Jakub Dawidek /* 232f7f0f41SMartin Matuska * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. 241ba4a712SPawel Jakub Dawidek * Copyright 2016 Nexenta Systems, Inc. 251ba4a712SPawel Jakub Dawidek * Copyright 2017 Joyent, Inc. 261ba4a712SPawel Jakub Dawidek */ 271ba4a712SPawel Jakub Dawidek 281ba4a712SPawel Jakub Dawidek #ifndef _SYS_SYSEVENT_EVENTDEFS_H 291ba4a712SPawel Jakub Dawidek #define _SYS_SYSEVENT_EVENTDEFS_H 301ba4a712SPawel Jakub Dawidek 311ba4a712SPawel Jakub Dawidek #ifdef __cplusplus 321ba4a712SPawel Jakub Dawidek extern "C" { 331ba4a712SPawel Jakub Dawidek #endif 341ba4a712SPawel Jakub Dawidek 351ba4a712SPawel Jakub Dawidek /* 361ba4a712SPawel Jakub Dawidek * eventdefs.h contains public definitions for sysevent types (classes 371ba4a712SPawel Jakub Dawidek * and subclasses). All additions/removal/changes are subject 381ba4a712SPawel Jakub Dawidek * to PSARC approval. 391ba4a712SPawel Jakub Dawidek */ 401ba4a712SPawel Jakub Dawidek 411ba4a712SPawel Jakub Dawidek /* Sysevent Class definitions */ 421ba4a712SPawel Jakub Dawidek #define EC_NONE "EC_none" 431ba4a712SPawel Jakub Dawidek #define EC_PRIV "EC_priv" 441ba4a712SPawel Jakub Dawidek #define EC_PLATFORM "EC_platform" /* events private to platform */ 451ba4a712SPawel Jakub Dawidek #define EC_DR "EC_dr" /* Dynamic reconfiguration event class */ 461ba4a712SPawel Jakub Dawidek #define EC_ENV "EC_env" /* Environmental monitor event class */ 471ba4a712SPawel Jakub Dawidek #define EC_DOMAIN "EC_domain" /* Domain event class */ 481ba4a712SPawel Jakub Dawidek #define EC_AP_DRIVER "EC_ap_driver" /* Alternate Pathing event class */ 491ba4a712SPawel Jakub Dawidek #define EC_IPMP "EC_ipmp" /* IP Multipathing event class */ 501ba4a712SPawel Jakub Dawidek #define EC_DEV_ADD "EC_dev_add" /* device add event class */ 511ba4a712SPawel Jakub Dawidek #define EC_DEV_REMOVE "EC_dev_remove" /* device remove event class */ 521ba4a712SPawel Jakub Dawidek #define EC_DEV_BRANCH "EC_dev_branch" /* device tree branch event class */ 531ba4a712SPawel Jakub Dawidek #define EC_DEV_STATUS "EC_dev_status" /* device status event class */ 541ba4a712SPawel Jakub Dawidek #define EC_FM "EC_fm" /* FMA error report event */ 5510b9d77bSPawel Jakub Dawidek #define EC_ZFS "EC_zfs" /* ZFS event */ 561ba4a712SPawel Jakub Dawidek #define EC_DATALINK "EC_datalink" /* datalink event */ 571ba4a712SPawel Jakub Dawidek #define EC_VRRP "EC_vrrp" /* VRRP event */ 581ba4a712SPawel Jakub Dawidek 591ba4a712SPawel Jakub Dawidek /* 601ba4a712SPawel Jakub Dawidek * The following event class is reserved for exclusive use 611ba4a712SPawel Jakub Dawidek * by Sun Cluster software. 621ba4a712SPawel Jakub Dawidek */ 631ba4a712SPawel Jakub Dawidek #define EC_CLUSTER "EC_Cluster" 641ba4a712SPawel Jakub Dawidek 651ba4a712SPawel Jakub Dawidek /* 661ba4a712SPawel Jakub Dawidek * EC_DR subclass definitions - supporting attributes (name/value pairs) 671ba4a712SPawel Jakub Dawidek * are found in sys/sysevent/dr.h 681ba4a712SPawel Jakub Dawidek */ 691ba4a712SPawel Jakub Dawidek 701ba4a712SPawel Jakub Dawidek /* Attachment point state change */ 711ba4a712SPawel Jakub Dawidek #define ESC_DR_AP_STATE_CHANGE "ESC_dr_ap_state_change" 721ba4a712SPawel Jakub Dawidek #define ESC_DR_REQ "ESC_dr_req" /* Request DR */ 731ba4a712SPawel Jakub Dawidek #define ESC_DR_TARGET_STATE_CHANGE "ESC_dr_target_state_change" 741ba4a712SPawel Jakub Dawidek 751ba4a712SPawel Jakub Dawidek /* 761ba4a712SPawel Jakub Dawidek * EC_ENV subclass definitions - supporting attributes (name/value pairs) 771ba4a712SPawel Jakub Dawidek * are found in sys/sysevent/env.h 781ba4a712SPawel Jakub Dawidek */ 791ba4a712SPawel Jakub Dawidek #define ESC_ENV_TEMP "ESC_env_temp" /* Temperature change event subclass */ 801ba4a712SPawel Jakub Dawidek #define ESC_ENV_FAN "ESC_env_fan" /* Fan status change event subclass */ 811ba4a712SPawel Jakub Dawidek #define ESC_ENV_POWER "ESC_env_power" /* Power supply change event subclass */ 821ba4a712SPawel Jakub Dawidek #define ESC_ENV_LED "ESC_env_led" /* LED change event subclass */ 831ba4a712SPawel Jakub Dawidek 841ba4a712SPawel Jakub Dawidek /* 851ba4a712SPawel Jakub Dawidek * EC_DOMAIN subclass definitions - supporting attributes (name/value pairs) 861ba4a712SPawel Jakub Dawidek * are found in sys/sysevent/domain.h 871ba4a712SPawel Jakub Dawidek */ 881ba4a712SPawel Jakub Dawidek 891ba4a712SPawel Jakub Dawidek /* Domain state change */ 901ba4a712SPawel Jakub Dawidek #define ESC_DOMAIN_STATE_CHANGE "ESC_domain_state_change" 911ba4a712SPawel Jakub Dawidek /* Domain loghost name change */ 921ba4a712SPawel Jakub Dawidek #define ESC_DOMAIN_LOGHOST_CHANGE "ESC_domain_loghost_change" 931ba4a712SPawel Jakub Dawidek 941ba4a712SPawel Jakub Dawidek /* 951ba4a712SPawel Jakub Dawidek * EC_AP_DRIVER subclass definitions - supporting attributes (name/value pairs) 961ba4a712SPawel Jakub Dawidek * are found in sys/sysevent/ap_driver.h 971ba4a712SPawel Jakub Dawidek */ 981ba4a712SPawel Jakub Dawidek 991ba4a712SPawel Jakub Dawidek /* Alternate Pathing path switch */ 1001ba4a712SPawel Jakub Dawidek #define ESC_AP_DRIVER_PATHSWITCH "ESC_ap_driver_pathswitch" 1011ba4a712SPawel Jakub Dawidek /* Alternate Pathing database commit */ 1021ba4a712SPawel Jakub Dawidek #define ESC_AP_DRIVER_COMMIT "ESC_ap_driver_commit" 1031ba4a712SPawel Jakub Dawidek /* Alternate Pathing physical path status change */ 1041ba4a712SPawel Jakub Dawidek #define ESC_AP_DRIVER_PHYS_PATH_STATUS_CHANGE \ 1051ba4a712SPawel Jakub Dawidek "ESC_ap_driver_phys_path_status_change" 1061ba4a712SPawel Jakub Dawidek 1071ba4a712SPawel Jakub Dawidek /* 1081ba4a712SPawel Jakub Dawidek * EC_IPMP subclass definitions - supporting attributes (name/value pairs) 1091ba4a712SPawel Jakub Dawidek * are found in sys/sysevent/ipmp.h 1101ba4a712SPawel Jakub Dawidek */ 1111ba4a712SPawel Jakub Dawidek 1121ba4a712SPawel Jakub Dawidek /* IPMP group has changed state */ 1131ba4a712SPawel Jakub Dawidek #define ESC_IPMP_GROUP_STATE "ESC_ipmp_group_state" 1141ba4a712SPawel Jakub Dawidek 1151ba4a712SPawel Jakub Dawidek /* IPMP group has been created or removed */ 1161ba4a712SPawel Jakub Dawidek #define ESC_IPMP_GROUP_CHANGE "ESC_ipmp_group_change" 1171ba4a712SPawel Jakub Dawidek 1181ba4a712SPawel Jakub Dawidek /* IPMP group has had an interface added or removed */ 1191ba4a712SPawel Jakub Dawidek #define ESC_IPMP_GROUP_MEMBER_CHANGE "ESC_ipmp_group_member_change" 1201ba4a712SPawel Jakub Dawidek 1211ba4a712SPawel Jakub Dawidek /* Interface within an IPMP group has changed state or type */ 1221ba4a712SPawel Jakub Dawidek #define ESC_IPMP_IF_CHANGE "ESC_ipmp_if_change" 1231ba4a712SPawel Jakub Dawidek 1241ba4a712SPawel Jakub Dawidek /* IPMP probe has changed state */ 1251ba4a712SPawel Jakub Dawidek #define ESC_IPMP_PROBE_STATE "ESC_ipmp_probe_state" 1261ba4a712SPawel Jakub Dawidek 1271ba4a712SPawel Jakub Dawidek /* 1281ba4a712SPawel Jakub Dawidek * EC_DEV_ADD and EC_DEV_REMOVE subclass definitions - supporting attributes 1291ba4a712SPawel Jakub Dawidek * (name/value pairs) are found in sys/sysevent/dev.h 1301ba4a712SPawel Jakub Dawidek */ 1311ba4a712SPawel Jakub Dawidek #define ESC_DISK "disk" /* disk device */ 1321ba4a712SPawel Jakub Dawidek #define ESC_NETWORK "network" /* network interface */ 1331ba4a712SPawel Jakub Dawidek #define ESC_PRINTER "printer" /* printer device */ 1341ba4a712SPawel Jakub Dawidek #define ESC_LOFI "lofi" /* lofi device */ 1351ba4a712SPawel Jakub Dawidek 1361ba4a712SPawel Jakub Dawidek /* 1371ba4a712SPawel Jakub Dawidek * EC_DEV_BRANCH subclass definitions - supporting attributes (name/value pairs) 1381ba4a712SPawel Jakub Dawidek * are found in sys/sysevent/dev.h 1391ba4a712SPawel Jakub Dawidek */ 1401ba4a712SPawel Jakub Dawidek 1411ba4a712SPawel Jakub Dawidek /* device tree branch added */ 1421ba4a712SPawel Jakub Dawidek #define ESC_DEV_BRANCH_ADD "ESC_dev_branch_add" 1431ba4a712SPawel Jakub Dawidek 1441ba4a712SPawel Jakub Dawidek /* device tree branch removed */ 1451ba4a712SPawel Jakub Dawidek #define ESC_DEV_BRANCH_REMOVE "ESC_dev_branch_remove" 1461ba4a712SPawel Jakub Dawidek 1471ba4a712SPawel Jakub Dawidek /* 1481ba4a712SPawel Jakub Dawidek * EC_DEV_STATUS subclass definitions 1491ba4a712SPawel Jakub Dawidek * 1501ba4a712SPawel Jakub Dawidek * device capacity dynamically changed 1511ba4a712SPawel Jakub Dawidek */ 1521ba4a712SPawel Jakub Dawidek #define ESC_DEV_DLE "ESC_dev_dle" 1531ba4a712SPawel Jakub Dawidek 1541ba4a712SPawel Jakub Dawidek /* LUN has received an eject request from the user */ 1551ba4a712SPawel Jakub Dawidek #define ESC_DEV_EJECT_REQUEST "ESC_dev_eject_request" 1561ba4a712SPawel Jakub Dawidek 1571ba4a712SPawel Jakub Dawidek /* FMA Fault and Error event protocol subclass */ 1581ba4a712SPawel Jakub Dawidek #define ESC_FM_ERROR "ESC_FM_error" 1591ba4a712SPawel Jakub Dawidek #define ESC_FM_ERROR_REPLAY "ESC_FM_error_replay" 1601ba4a712SPawel Jakub Dawidek 1611ba4a712SPawel Jakub Dawidek /* Service processor subclass definitions */ 1621ba4a712SPawel Jakub Dawidek #define ESC_PLATFORM_SP_RESET "ESC_platform_sp_reset" 1631ba4a712SPawel Jakub Dawidek 1641ba4a712SPawel Jakub Dawidek /* 1651ba4a712SPawel Jakub Dawidek * EC_PWRCTL subclass definitions 1661ba4a712SPawel Jakub Dawidek */ 1671ba4a712SPawel Jakub Dawidek #define EC_PWRCTL "EC_pwrctl" 1681ba4a712SPawel Jakub Dawidek #define ESC_PWRCTL_ADD "ESC_pwrctl_add" 1691ba4a712SPawel Jakub Dawidek #define ESC_PWRCTL_REMOVE "ESC_pwrctl_remove" 1701ba4a712SPawel Jakub Dawidek #define ESC_PWRCTL_WARN "ESC_pwrctl_warn" 1711ba4a712SPawel Jakub Dawidek #define ESC_PWRCTL_LOW "ESC_pwrctl_low" 1721ba4a712SPawel Jakub Dawidek #define ESC_PWRCTL_STATE_CHANGE "ESC_pwrctl_state_change" 1731ba4a712SPawel Jakub Dawidek #define ESC_PWRCTL_POWER_BUTTON "ESC_pwrctl_power_button" 1741ba4a712SPawel Jakub Dawidek #define ESC_PWRCTL_BRIGHTNESS_UP "ESC_pwrctl_brightness_up" 1751ba4a712SPawel Jakub Dawidek #define ESC_PWRCTL_BRIGHTNESS_DOWN "ESC_pwrctl_brightness_down" 1761ba4a712SPawel Jakub Dawidek 1771ba4a712SPawel Jakub Dawidek /* EC_ACPIEV subclass definitions */ 1781ba4a712SPawel Jakub Dawidek #define EC_ACPIEV "EC_acpiev" 1791ba4a712SPawel Jakub Dawidek #define ESC_ACPIEV_DISPLAY_SWITCH "ESC_acpiev_display_switch" 1801ba4a712SPawel Jakub Dawidek #define ESC_ACPIEV_SCREEN_LOCK "ESC_acpiev_screen_lock" 1811ba4a712SPawel Jakub Dawidek #define ESC_ACPIEV_SLEEP "ESC_acpiev_sleep" 1821ba4a712SPawel Jakub Dawidek #define ESC_ACPIEV_AUDIO_MUTE "ESC_acpiev_audio_mute" 18310b9d77bSPawel Jakub Dawidek #define ESC_ACPIEV_WIFI "ESC_acpiev_wifi" 18410b9d77bSPawel Jakub Dawidek #define ESC_ACPIEV_TOUCHPAD "ESC_acpiev_touchpad" 1851ba4a712SPawel Jakub Dawidek 1861ba4a712SPawel Jakub Dawidek /* 1871ba4a712SPawel Jakub Dawidek * ZFS subclass definitions. supporting attributes (name/value paris) are found 1881ba4a712SPawel Jakub Dawidek * in sys/fs/zfs.h 1891ba4a712SPawel Jakub Dawidek */ 1901ba4a712SPawel Jakub Dawidek #define ESC_ZFS_RESILVER_START "ESC_ZFS_resilver_start" 1911ba4a712SPawel Jakub Dawidek #define ESC_ZFS_RESILVER_FINISH "ESC_ZFS_resilver_finish" 1921ba4a712SPawel Jakub Dawidek #define ESC_ZFS_VDEV_REMOVE "ESC_ZFS_vdev_remove" 1931ba4a712SPawel Jakub Dawidek #define ESC_ZFS_VDEV_REMOVE_AUX "ESC_ZFS_vdev_remove_aux" 1941ba4a712SPawel Jakub Dawidek #define ESC_ZFS_VDEV_REMOVE_DEV "ESC_ZFS_vdev_remove_dev" 1951ba4a712SPawel Jakub Dawidek #define ESC_ZFS_POOL_CREATE "ESC_ZFS_pool_create" 1961ba4a712SPawel Jakub Dawidek #define ESC_ZFS_POOL_DESTROY "ESC_ZFS_pool_destroy" 1971ba4a712SPawel Jakub Dawidek #define ESC_ZFS_POOL_IMPORT "ESC_ZFS_pool_import" 1981ba4a712SPawel Jakub Dawidek #define ESC_ZFS_VDEV_ADD "ESC_ZFS_vdev_add" 1991ba4a712SPawel Jakub Dawidek #define ESC_ZFS_VDEV_ATTACH "ESC_ZFS_vdev_attach" 2001ba4a712SPawel Jakub Dawidek #define ESC_ZFS_VDEV_CLEAR "ESC_ZFS_vdev_clear" 2011ba4a712SPawel Jakub Dawidek #define ESC_ZFS_VDEV_CHECK "ESC_ZFS_vdev_check" 2021ba4a712SPawel Jakub Dawidek #define ESC_ZFS_VDEV_ONLINE "ESC_ZFS_vdev_online" 2031ba4a712SPawel Jakub Dawidek #define ESC_ZFS_CONFIG_SYNC "ESC_ZFS_config_sync" 2041ba4a712SPawel Jakub Dawidek #define ESC_ZFS_SCRUB_START "ESC_ZFS_scrub_start" 2051ba4a712SPawel Jakub Dawidek #define ESC_ZFS_SCRUB_FINISH "ESC_ZFS_scrub_finish" 20610b9d77bSPawel Jakub Dawidek #define ESC_ZFS_SCRUB_ABORT "ESC_ZFS_scrub_abort" 20710b9d77bSPawel Jakub Dawidek #define ESC_ZFS_SCRUB_RESUME "ESC_ZFS_scrub_resume" 20810b9d77bSPawel Jakub Dawidek #define ESC_ZFS_SCRUB_PAUSED "ESC_ZFS_scrub_paused" 20910b9d77bSPawel Jakub Dawidek #define ESC_ZFS_VDEV_SPARE "ESC_ZFS_vdev_spare" 21010b9d77bSPawel Jakub Dawidek #define ESC_ZFS_BOOTFS_VDEV_ATTACH "ESC_ZFS_bootfs_vdev_attach" 2111ba4a712SPawel Jakub Dawidek #define ESC_ZFS_POOL_REGUID "ESC_ZFS_pool_reguid" 2121ba4a712SPawel Jakub Dawidek #define ESC_ZFS_HISTORY_EVENT "ESC_ZFS_history_event" 21310b9d77bSPawel Jakub Dawidek #define ESC_ZFS_VDEV_AUTOEXPAND "ESC_ZFS_vdev_autoexpand" 21410b9d77bSPawel Jakub Dawidek 21510b9d77bSPawel Jakub Dawidek /* 2161ba4a712SPawel Jakub Dawidek * datalink subclass definitions. 2171ba4a712SPawel Jakub Dawidek */ 2181ba4a712SPawel Jakub Dawidek #define ESC_DATALINK_PHYS_ADD "ESC_datalink_phys_add" /* new physical link */ 2191ba4a712SPawel Jakub Dawidek 2201ba4a712SPawel Jakub Dawidek /* 2211ba4a712SPawel Jakub Dawidek * VRRP subclass definitions. Supporting attributes (name/value paris) are 2221ba4a712SPawel Jakub Dawidek * found in sys/sysevent/vrrp.h 2231ba4a712SPawel Jakub Dawidek */ 2241ba4a712SPawel Jakub Dawidek #define ESC_VRRP_STATE_CHANGE "ESC_vrrp_state_change" 2251ba4a712SPawel Jakub Dawidek 2261ba4a712SPawel Jakub Dawidek #ifdef __cplusplus 2271ba4a712SPawel Jakub Dawidek } 2281ba4a712SPawel Jakub Dawidek #endif 2291ba4a712SPawel Jakub Dawidek 2301ba4a712SPawel Jakub Dawidek #endif /* _SYS_SYSEVENT_EVENTDEFS_H */ 2311ba4a712SPawel Jakub Dawidek