comparison usr/src/uts/common/sys/dumphdr.h @ 12979:ab9ae749152f

PSARC/2009/617 Software Events Notification Parameters CLI PSARC/2009/618 snmp-notify: SNMP Notification Daemon for Software Events PSARC/2009/619 smtp-notify: Email Notification Daemon for Software Events PSARC/2010/225 fmd for non-global Solaris zones PSARC/2010/226 Solaris Instance UUID PSARC/2010/227 nvlist_nvflag(3NVPAIR) PSARC/2010/228 libfmevent additions PSARC/2010/257 sysevent_evc_setpropnvl and sysevent_evc_getpropnvl PSARC/2010/265 FMRI and FMA Event Stabilty, 'ireport' category 1 event class, and the 'sw' FMRI scheme PSARC/2010/278 FMA/SMF integration: instance state transitions PSARC/2010/279 Modelling panics within FMA PSARC/2010/290 logadm.conf upgrade 6392476 fmdump needs to pretty-print 6393375 userland ereport/ireport event generation interfaces 6445732 Add email notification agent for FMA and software events 6804168 RFE: Allow an efficient means to monitor SMF services status changes 6866661 scf_values_destroy(3SCF) will segfault if is passed NULL 6884709 Add snmp notification agent for FMA and software events 6884712 Add private interface to tap into libfmd_msg macro expansion capabilities 6897919 fmd to run in a non-global zone 6897937 fmd use of non-private doors is not safe 6900081 add a UUID to Solaris kernel image for use in crashdump identification 6914884 model panic events as a defect diagnosis in FMA 6944862 fmd_case_open_uuid, fmd_case_uuisresolved, fmd_nvl_create_defect 6944866 log legacy sysevents in fmd 6944867 enumerate svc scheme in topo 6944868 software-diagnosis and software-response fmd modules 6944870 model SMF maintenance state as a defect diagnosis in FMA 6944876 savecore runs in foreground for systems with zfs root and dedicated dump 6965796 Implement notification parameters for SMF state transitions and FMA events 6968287 SUN-FM-MIB.mib needs to be updated to reflect Oracle information 6972331 logadm.conf upgrade PSARC/2010/290
author Gavin Maltby <gavin.maltby@oracle.com>
date Fri, 30 Jul 2010 17:04:17 +1000
parents 2acab560865a
children dd10606460cc
comparison
equal deleted inserted replaced
12978:19d842faf8e4 12979:ab9ae749152f
41 * location (end of device) so we can always find it. The initial header 41 * location (end of device) so we can always find it. The initial header
42 * is redundant, but helps savecore(1M) determine whether the dump has been 42 * is redundant, but helps savecore(1M) determine whether the dump has been
43 * overwritten by swap activity. See dumpadm(1M) for dump configuration. 43 * overwritten by swap activity. See dumpadm(1M) for dump configuration.
44 */ 44 */
45 #define DUMP_MAGIC 0xdefec8edU /* dump magic number */ 45 #define DUMP_MAGIC 0xdefec8edU /* dump magic number */
46 #define DUMP_VERSION 9 /* version of this dumphdr */ 46 #define DUMP_VERSION 10 /* version of this dumphdr */
47 #define DUMP_WORDSIZE (sizeof (long) * NBBY) /* word size (32 or 64) */ 47 #define DUMP_WORDSIZE (sizeof (long) * NBBY) /* word size (32 or 64) */
48 #define DUMP_PANICSIZE 200 /* Max panic string copied */ 48 #define DUMP_PANICSIZE 200 /* Max panic string copied */
49 #define DUMP_COMPRESS_RATIO 2 /* conservative; usually 2.5+ */ 49 #define DUMP_COMPRESS_RATIO 2 /* conservative; usually 2.5+ */
50 #define DUMP_OFFSET 65536 /* pad at start/end of dev */ 50 #define DUMP_OFFSET 65536 /* pad at start/end of dev */
51 #define DUMP_LOGSIZE (2 * LOG_HIWAT) /* /dev/log message save area */ 51 #define DUMP_LOGSIZE (2 * LOG_HIWAT) /* /dev/log message save area */
52 #define DUMP_ERPTSIZE (P2ROUNDUP( \ 52 #define DUMP_ERPTSIZE (P2ROUNDUP( \
53 (ERPT_DATA_SZ / 2) * \ 53 (ERPT_DATA_SZ / 2) * \
54 (ERPT_EVCH_MAX + \ 54 (ERPT_EVCH_MAX + \
55 ERPT_MAX_ERRS * ERPT_HIWAT), \ 55 ERPT_MAX_ERRS * ERPT_HIWAT), \
56 DUMP_OFFSET)) /* ereport save area */ 56 DUMP_OFFSET)) /* ereport save area */
57 #define DUMP_SUMMARYSIZE (P2ROUNDUP( \
58 (STACK_BUF_SIZE + \
59 sizeof (summary_dump_t) + 1024), \
60 DUMP_OFFSET)) /* summary save area */
57 61
58 typedef struct dumphdr { 62 typedef struct dumphdr {
59 uint32_t dump_magic; /* magic number */ 63 uint32_t dump_magic; /* magic number */
60 uint32_t dump_version; /* version number */ 64 uint32_t dump_version; /* version number */
61 uint32_t dump_flags; /* flags; see below */ 65 uint32_t dump_flags; /* flags; see below */
74 long dump_hashmask; /* page translation hash mask */ 78 long dump_hashmask; /* page translation hash mask */
75 long dump_nvtop; /* number of vtop table entries */ 79 long dump_nvtop; /* number of vtop table entries */
76 pgcnt_t dump_npages; /* number of data pages */ 80 pgcnt_t dump_npages; /* number of data pages */
77 size_t dump_ksyms_size; /* kernel symbol table size */ 81 size_t dump_ksyms_size; /* kernel symbol table size */
78 size_t dump_ksyms_csize; /* compressed symbol table size */ 82 size_t dump_ksyms_csize; /* compressed symbol table size */
83 uint32_t dump_fm_panic; /* initiated from fm subsystems */
84 char dump_uuid[36 + 1]; /* os image uuid */
79 } dumphdr_t; 85 } dumphdr_t;
80 86
81 /* 87 /*
82 * Values for dump_flags 88 * Values for dump_flags
83 */ 89 */
188 extern void dumpvp_write(const void *, size_t); 194 extern void dumpvp_write(const void *, size_t);
189 extern int dumpvp_resize(void); 195 extern int dumpvp_resize(void);
190 extern int dump_plat_addr(void); 196 extern int dump_plat_addr(void);
191 extern void dump_plat_pfn(void); 197 extern void dump_plat_pfn(void);
192 extern int dump_plat_data(void *); 198 extern int dump_plat_data(void *);
199 extern int dump_set_uuid(const char *);
200 extern const char *dump_get_uuid(void);
193 201
194 /* 202 /*
195 * Define a CPU count threshold that determines when to employ 203 * Define a CPU count threshold that determines when to employ
196 * bzip2. This value is defined per-platform. 204 * bzip2. This value is defined per-platform.
197 */ 205 */