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, Version 1.0 only 6 * (the "License"). You may not use this file except in compliance 7 * with the License. 8 * 9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10 * or http://www.opensolaris.org/os/licensing. 11 * See the License for the specific language governing permissions 12 * and limitations under the License. 13 * 14 * When distributing Covered Code, include this CDDL HEADER in each 15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16 * If applicable, add the following below this CDDL HEADER, with the 17 * fields enclosed by brackets "[]" replaced with your own identifying 18 * information: Portions Copyright [yyyy] [name of copyright owner] 19 * 20 * CDDL HEADER END 21 */ 22 /* 23 * Copyright 2000-2002 Sun Microsystems, Inc. All rights reserved. 24 * Use is subject to license terms. 25 */ 26 27 #ifndef _SYS_SYSEVENT_SVM_H 28 #define _SYS_SYSEVENT_SVM_H 29 30 #pragma ident "%Z%%M% %I% %E% SMI" 31 32 #include <sys/sysevent.h> 33 34 #ifdef __cplusplus 35 extern "C" { 36 #endif 37 38 /* 39 * svm.h contains the publicly defined sysevent attribute names and values 40 * for all SVM type sysevents. Additions/removals/changes are subject to 41 * PSARC approval. 42 */ 43 44 /* 45 * svm sysevent version 46 */ 47 #define SVM_VERSION0 0 48 #define SVM_VERSION SVM_VERSION0 49 50 /* 51 * Event type EC_SVM_CONFIG/EC_SVM_STATE event schema 52 * Event Class - EC_SVM_CONFIG | EC_SVM_STATE 53 * Event Sub-Class - ESC_SVM_CREATE/ESC_SVM_DELETE/ESC_SVM_ADD/ 54 * ESC_SVM_REMOVE/ESC_SVM_REPLACE/ESC_SVM_GROW/ 55 * ESC_SVM_RENAME_SRC/ESC_SVM_RENAME_DST/ 56 * ESC_SVM_MEDIATOR_ADD/ESC_SVM_MEDIATOR_DELETE/ 57 * ESC_SVM_HOST_ADD/ESC_SVM_HOST_DELETE/ 58 * ESC_SVM_DRIVE_ADD/ESC_SVM_DRIVE_DELETE/ 59 * ESC_SVM_DETACH/ESC_SVM_DETACHING/ESC_SVM_ATTACH/ 60 * ESC_SVM_ATTACHING | 61 * ESC_SVM_INIT_START/ESC_SVM_INIT_FAILED/ 62 * ESC_SVM_INIT_FATAL/ESC_SVM_INIT_SUCCESS/ 63 * ESC_SVM_IOERR/ESC_SVM_ERRED/ESC_SVM_LASTERRED/ 64 * ESC_SVM_OK/ESC_SVM_ENABLE/ESC_SVM_RESYNC_START/ 65 * ESC_SVM_RESYNC_FAILED/ESC_SVM_RESYNC_SUCCESS/ 66 * ESC_SVM_RESYNC_DONE/ESC_SVM_HOTSPARED/ 67 * ESC_SVM_HS_FREED/ESC_SVM_HS_CHANGED/ 68 * ESC_SVM_TAKEOVER/ESC_SVM_RELEASE/ESC_SVM_OPEN_FAIL/ 69 * ESC_SVM_OFFLINE/ESC_SVM_ONLINE/ESC_SVM_CHANGE/ 70 * ESC_SVM_EXCHANGE/ESC_SVM_REGEN_START/ 71 * ESC_SVM_REGEN_DONE/ESC_SVM_REGEN_FAILED/ 72 * Attribute Name - SVM_TAG 73 * Attribute Type - SE_DATA_TYPE_UINT32 74 * Attribute Value - [Device Tag]] 75 * Attribute Name - SVM_SET_NO 76 * Attribute Type - SE_DATA_TYPE_UINT32 - uint_t 77 * Attribute Value - [Device Set Number] 78 * Attribute Name - SVM_DEV_ID 79 * Attribute Type - SE_DATA_TYPE_UINT32 - ulong_t 80 * Attribute Value - [Device ID] 81 * Attribute Name - SVM_DEV_NAME 82 * Attribute Type - SE_DATA_TYPE_STRING 83 * Attribute Value - [Device Name] 84 */ 85 #define SVM_VERSION_NO "svm_version" /* event version number */ 86 #define SVM_TAG "svm_tag" /* device tag */ 87 #define SVM_SET_NO "svm_set_no" /* device set number */ 88 #define SVM_DEV_ID "svm_dev_id" /* device event occured on */ 89 #define SVM_DEV_NAME "svm_dev_name" /* device name */ 90 91 /* 92 * sys event originator 93 */ 94 #define EP_SVM "svm" 95 96 /* 97 * Device TAG definitions 98 */ 99 #define SVM_TAG_METADEVICE 1 100 #define SVM_TAG_MIRROR 2 101 #define SVM_TAG_STRIPE 3 102 #define SVM_TAG_RAID5 4 103 #define SVM_TAG_TRANS 5 104 #define SVM_TAG_REPLICA 6 105 #define SVM_TAG_HSP 7 106 #define SVM_TAG_HS 8 107 #define SVM_TAG_SET 9 108 #define SVM_TAG_DRIVE 10 109 #define SVM_TAG_HOST 11 110 #define SVM_TAG_MEDIATOR 12 111 112 #ifdef __cplusplus 113 } 114 #endif 115 116 #endif /* _SYS_SYSEVENT_SVM_H */ 117