/illumos-gate/usr/src/cmd/fm/fmd/common/ |
H A D | fmd_topo.c | 53 ASSERT(MUTEX_HELD(&fmd.d_topo_lock)); in fmd_topo_rele_locked() 56 fmd_list_delete(&fmd.d_topo_list, ftp); in fmd_topo_rele_locked() 71 (void) pthread_mutex_lock(&fmd.d_topo_lock); in fmd_topo_update() 73 fmd.d_stats->ds_topo_drgen.fmds_value.ui64 = fmd_fmri_get_drgen(); in fmd_topo_update() 75 name = fmd.d_rootdir != NULL && in fmd_topo_update() 76 *fmd.d_rootdir != '\0' ? fmd.d_rootdir : NULL; in fmd_topo_update() 96 fmd.d_stats->ds_topo_gen.fmds_value.ui64++; in fmd_topo_update() 103 if ((prev = fmd_list_next(&fmd.d_topo_list)) != NULL) in fmd_topo_update() 106 fmd_list_prepend(&fmd.d_topo_list, ftp); in fmd_topo_update() 108 (void) pthread_mutex_unlock(&fmd.d_topo_lock); in fmd_topo_update() [all …]
|
H A D | fmd_subr.c | 78 if (atomic_add_32_nv(&fmd.d_panicrefs, 1) != 1) { in fmd_vpanic() 79 while (fmd.d_panictid != tid) in fmd_vpanic() 88 if (fmd.d_pid != 0 && (tp = pthread_getspecific(fmd.d_key)) != NULL) in fmd_vpanic() 91 fmd.d_panicstr = msg; in fmd_vpanic() 92 fmd.d_panictid = tid; in fmd_vpanic() 95 fmd.d_pname ? fmd.d_pname : "fmd"); in fmd_vpanic() 133 if ((tp = pthread_getspecific(fmd.d_key)) != NULL) { in fmd_verror() 138 (void) pthread_mutex_lock(&fmd.d_err_lock); in fmd_verror() 140 if (fmd.d_errstats != NULL && err >= EFMD_UNKNOWN && err < EFMD_END) in fmd_verror() 141 fmd.d_errstats[err - EFMD_UNKNOWN].fmds_value.ui64++; in fmd_verror() [all …]
|
H A D | fmd_main.c | 48 fmd_t fmd; variable 95 "%s/var/fm/fmd/core.%s.%%p", fmd.d_rootdir, fmd.d_pname); in daemonize_init() 97 (void) core_set_process_path(path, strlen(path) + 1, fmd.d_pid); in daemonize_init() 197 fmd.d_pid = getpid(); in daemonize_init() 223 if (fmd.d_signal == 0) in handler() 224 fmd.d_signal = sig; in handler() 284 fmd_create(&fmd, argv[0], opt_R, opt_f); in main() 295 fmd.d_pname, optarg); in main() 306 if (fmd_conf_setprop(fmd.d_conf, optarg, p) != 0) { in main() 309 fmd.d_pname, optarg, fmd_strerror(errno)); in main() [all …]
|
H A D | fmd_thread.c | 44 tp->thr_trfunc = fmd.d_thr_trace; in fmd_thread_xcreate() 48 (void) pthread_mutex_lock(&fmd.d_thr_lock); in fmd_thread_xcreate() 49 fmd_list_append(&fmd.d_thr_list, tp); in fmd_thread_xcreate() 50 (void) pthread_mutex_unlock(&fmd.d_thr_lock); in fmd_thread_xcreate() 60 if (pthread_setspecific(fmd.d_key, tp) != 0) in fmd_thread_start() 84 tp->thr_trfunc = fmd.d_thr_trace; in fmd_thread_create_cmn() 91 (void) sigdelset(&nset, fmd.d_thr_sig); /* fmd_thr_signal() */ in fmd_thread_create_cmn() 102 (void) pthread_mutex_lock(&fmd.d_thr_lock); in fmd_thread_create_cmn() 103 fmd_list_append(&fmd.d_thr_list, tp); in fmd_thread_create_cmn() 104 (void) pthread_mutex_unlock(&fmd.d_thr_lock); in fmd_thread_create_cmn() [all …]
|
H A D | fmd_rpc_adm.c | 61 (void) pthread_mutex_lock(&fmd.d_mod_lock); in fmd_adm_modinfo_1_svc() 63 for (mp = fmd_list_next(&fmd.d_mod_list); in fmd_adm_modinfo_1_svc() 99 (void) pthread_mutex_unlock(&fmd.d_mod_lock); in fmd_adm_modinfo_1_svc() 119 if ((mp = fmd_modhash_lookup(fmd.d_mod_hash, name)) == NULL) { in fmd_adm_modcstat_1_svc() 151 if ((mp = fmd_modhash_lookup(fmd.d_mod_hash, name)) == NULL) { in fmd_adm_moddstat_1_svc() 205 (void) pthread_mutex_lock(&fmd.d_stats_lock); in fmd_adm_modgstat_1_svc() 206 bcopy(fmd.d_stats, rms->rms_buf.rms_buf_val, size); in fmd_adm_modgstat_1_svc() 207 (void) pthread_mutex_unlock(&fmd.d_stats_lock); in fmd_adm_modgstat_1_svc() 240 mp = fmd_modhash_load(fmd.d_mod_hash, path, &fmd_rtld_ops); in fmd_adm_modload_1_svc() 242 mp = fmd_modhash_load(fmd.d_mod_hash, path, &fmd_proc_ops); in fmd_adm_modload_1_svc() [all …]
|
H A D | fmd_rpc.c | 173 (void) fmd_conf_setprop(fmd.d_conf, prop, buf); in fmd_rpc_svc_init() 192 (void) fmd_conf_getprop(fmd.d_conf, "rpc.sndsize", &sndsize); in fmd_rpc_init() 193 (void) fmd_conf_getprop(fmd.d_conf, "rpc.rcvsize", &rcvsize); in fmd_rpc_init() 199 (void) fmd_conf_getprop(fmd.d_conf, "rpc.adm.prog", &prog); in fmd_rpc_init() 200 (void) fmd_conf_getprop(fmd.d_conf, "rpc.adm.path", &s); in fmd_rpc_init() 215 if (fmd_thread_create(fmd.d_rmod, (fmd_thread_f *)svc_run, 0) == NULL) in fmd_rpc_init() 226 (void) fmd_conf_getprop(fmd.d_conf, "rpc.adm.prog", &prog); in fmd_rpc_fini() 229 (void) fmd_conf_getprop(fmd.d_conf, "rpc.api.prog", &prog); in fmd_rpc_fini() 245 if (!fmd.d_booted) { in fmd_rpc_deny() 246 (void) pthread_mutex_lock(&fmd.d_fmd_lock); in fmd_rpc_deny() [all …]
|
H A D | fmd_fmri.c | 209 return (fmd.d_rootdir); in fmd_fmri_get_rootdir() 215 return (fmd.d_platform); in fmd_fmri_get_platform() 223 (void) pthread_mutex_lock(&fmd.d_stats_lock); in fmd_fmri_get_drgen() 224 gen = fmd.d_stats->ds_dr_gen.fmds_value.ui64; in fmd_fmri_get_drgen() 225 (void) pthread_mutex_unlock(&fmd.d_stats_lock); in fmd_fmri_get_drgen() 263 return (fmd_scheme_hash_lookup(fmd.d_schemes, name)); in nvl2scheme() 286 fmd_scheme_hash_release(fmd.d_schemes, sp); in fmd_fmri_nvl2str() 303 fmd_scheme_hash_release(fmd.d_schemes, sp); in fmd_fmri_expand() 320 fmd_scheme_hash_release(fmd.d_schemes, sp); in fmd_fmri_present() 337 fmd_scheme_hash_release(fmd.d_schemes, sp); in fmd_fmri_replaced() [all …]
|
H A D | fmd_protocol.c | 52 if (nvlist_xalloc(&nvl, NV_UNIQUE_NAME, &fmd.d_nva) != 0) in fmd_protocol_authority() 57 if ((str = fmd_conf_getnzstr(fmd.d_conf, "product")) == NULL) in fmd_protocol_authority() 58 str = fmd_conf_getnzstr(fmd.d_conf, "platform"); in fmd_protocol_authority() 63 if ((str = fmd_conf_getnzstr(fmd.d_conf, "product_sn")) != NULL) in fmd_protocol_authority() 66 if ((str = fmd_conf_getnzstr(fmd.d_conf, "chassis")) != NULL) in fmd_protocol_authority() 69 if ((str = fmd_conf_getnzstr(fmd.d_conf, "domain")) != NULL) in fmd_protocol_authority() 72 if ((str = fmd_conf_getnzstr(fmd.d_conf, "server")) != NULL) in fmd_protocol_authority() 91 if (nvlist_xalloc(&nvl, NV_UNIQUE_NAME, &fmd.d_nva) != 0) in fmd_protocol_fmri_module() 96 err |= nvlist_add_nvlist(nvl, FM_FMRI_AUTHORITY, fmd.d_auth); in fmd_protocol_fmri_module() 102 } else if (mp == fmd.d_rmod) { in fmd_protocol_fmri_module() [all …]
|
H A D | fmd_case.c | 164 chp->ch_hashlen = fmd.d_str_buckets; in fmd_case_hash_create() 262 fmd_case_hash_t *chp = fmd.d_cases; in fmd_case_mkcode() 289 (void) fmd_conf_getprop(fmd.d_conf, "nodiagcode", &s); in fmd_case_mkcode() 423 fmd_asru_hash_apply_by_case(fmd.d_asrus, cp, fmd_case_set_lst, &fcl); in fmd_case_mkevent() 432 (void) fmd_conf_getprop(fmd.d_conf, "repaircode", &code); in fmd_case_mkevent() 434 (void) fmd_conf_getprop(fmd.d_conf, "resolvecode", &code); in fmd_case_mkevent() 436 (void) fmd_conf_getprop(fmd.d_conf, "updatecode", &code); in fmd_case_mkevent() 742 fmd_asru_hash_apply_by_case(fmd.d_asrus, (fmd_case_t *)old_cip, in fmd_case_check_for_dups() 829 fmd_asru_hash_apply_by_case(fmd.d_asrus, old_cp, in fmd_case_check_for_dups() 839 fmd_asru_hash_apply_by_case(fmd.d_asrus, old_cp, in fmd_case_check_for_dups() [all …]
|
H A D | fmd_xprt.c | 221 uint_t hashlen = fmd.d_str_buckets; in fmd_xprt_class_hash_create() 240 fmd_dispq_delete(fmd.d_disp, eq, xcp->xc_class); in fmd_xprt_class_hash_destroy() 276 fmd_dispq_insert(fmd.d_disp, xch->xch_queue, class); in fmd_xprt_class_hash_insert() 316 fmd_dispq_delete(fmd.d_disp, xch->xch_queue, class); in fmd_xprt_class_hash_delete() 392 fmd_xprt_subscribe_modhash(xip, fmd.d_mod_hash); in fmd_xprt_transition() 476 (void) nvlist_xdup(nvl, &xip->xi_auth, &fmd.d_nva); in fmd_xprt_event_syn() 506 (void) nvlist_xdup(nvl, &xip->xi_auth, &fmd.d_nva); in fmd_xprt_event_ack() 540 fmd_dispq_dispatch_gid(fmd.d_disp, e, class, xip->xi_queue->eq_sgid); in fmd_xprt_send_case() 568 fmd_dispq_dispatch_gid(fmd.d_disp, e, class, mp->mod_queue->eq_sgid); in fmd_xprt_send_case_ro() 576 fmd_case_hash_apply(fmd.d_cases, fmd_xprt_send_case, xip); in fmd_xprt_event_run() [all …]
|
H A D | fmd_time.c | 41 if (fmd.d_clockops->fto_gettimeofday(tvp, NULL) != 0) in fmd_time_gettimeofday() 48 return (fmd.d_clockops->fto_gethrtime()); in fmd_time_gethrtime() 54 fmd.d_clockops->fto_addhrtime(delta); in fmd_time_addhrtime() 60 fmd.d_clockops->fto_waithrtime(delta); in fmd_time_waithrtime() 66 fmd.d_clockops->fto_waitcancel(tid); in fmd_time_waitcancel() 80 const fmd_timeops_t *ftop = fmd.d_clockops; in fmd_time_sync() 256 fmd_timesim_t *fts = fmd.d_clockptr; in fmd_simulator_tod() 278 fmd_timesim_t *fts = fmd.d_clockptr; in fmd_simulator_hrt() 291 fmd_timesim_t *fts = fmd.d_clockptr; in fmd_simulator_add() 310 fmd_timesim_t *fts = fmd.d_clockptr; in fmd_simulator_wait() [all …]
|
H A D | fmd_dr.c | 126 fmd.d_clockops == &fmd_timeops_native) { in fmd_dr_event() 132 (void) pthread_mutex_lock(&fmd.d_stats_lock); in fmd_dr_event() 133 gen = fmd.d_stats->ds_dr_gen.fmds_value.ui64++; in fmd_dr_event() 134 (void) pthread_mutex_unlock(&fmd.d_stats_lock); in fmd_dr_event() 141 fmd_modhash_dispatch(fmd.d_mod_hash, e); in fmd_dr_event()
|
H A D | fmd_module.c | 112 if (fmd.d_mod_event != NULL) in fmd_module_start() 113 fmd_eventq_insert_at_head(mp->mod_queue, fmd.d_mod_event); in fmd_module_start() 197 (void) fmd_conf_getprop(fmd.d_conf, "ckpt.dir", &dir); in fmd_module_create() 199 "%s/%s/%s", fmd.d_rootdir, dir, mp->mod_name); in fmd_module_create() 203 (void) fmd_conf_getprop(fmd.d_conf, "client.tmrlim", &limit); in fmd_module_create() 212 (void) pthread_mutex_lock(&fmd.d_mod_lock); in fmd_module_create() 213 fmd_list_append(&fmd.d_mod_list, mp); in fmd_module_create() 214 (void) pthread_mutex_unlock(&fmd.d_mod_lock); in fmd_module_create() 238 (void) fmd_conf_getprop(fmd.d_conf, "client.evqlim", &limit); in fmd_module_create() 243 (void) fmd_conf_getprop(fmd.d_conf, "client.memlim", in fmd_module_create() [all …]
|
H A D | fmd_alloc.c | 48 lim = fmd.d_alloc_tries; in fmd_alloc() 49 msecs = fmd.d_alloc_msecs; in fmd_alloc() 58 fmd_modhash_tryapply(fmd.d_mod_hash, fmd_module_trygc); in fmd_alloc() 59 fmd_scheme_hash_trygc(fmd.d_schemes); in fmd_alloc()
|
H A D | fmd_api.c | 105 (void) pthread_mutex_lock(&fmd.d_err_lock); in fmd_api_vxerror() 106 fmd.d_errstats[EFMD_MODULE - EFMD_UNKNOWN].fmds_value.ui64++; in fmd_api_vxerror() 109 fmd.d_errstats[err - EFMD_UNKNOWN].fmds_value.ui64++; in fmd_api_vxerror() 111 (void) pthread_mutex_unlock(&fmd.d_err_lock); in fmd_api_vxerror() 135 if (mp != fmd.d_self && (raw_err != EFMD_HDL_ABORT || fmd.d_running)) { in fmd_api_vxerror() 147 (void) pthread_rwlock_rdlock(&fmd.d_log_lock); in fmd_api_vxerror() 148 fmd_log_append(fmd.d_errlog, e, NULL); in fmd_api_vxerror() 149 (void) pthread_rwlock_unlock(&fmd.d_log_lock); in fmd_api_vxerror() 154 fmd_dispq_dispatch(fmd.d_disp, e, class); in fmd_api_vxerror() 164 if (fmd.d_fg || (fmd.d_hdl_dbout & FMD_DBOUT_STDERR) || ( in fmd_api_vxerror() [all …]
|
H A D | fmd_scheme.c | 68 if (!fmd.d_loaded) in fmd_scheme_fmd_present() 71 if ((mp = fmd_modhash_lookup(fmd.d_mod_hash, name)) != NULL) { in fmd_scheme_fmd_present() 91 if (!fmd.d_loaded) in fmd_scheme_fmd_replaced() 94 if ((mp = fmd_modhash_lookup(fmd.d_mod_hash, name)) != NULL) { in fmd_scheme_fmd_replaced() 113 if (!fmd.d_loaded) in fmd_scheme_fmd_service_state() 116 if ((mp = fmd_modhash_lookup(fmd.d_mod_hash, name)) != NULL) { in fmd_scheme_fmd_service_state() 134 if (!fmd.d_loaded) in fmd_scheme_fmd_unusable() 137 if ((mp = fmd_modhash_lookup(fmd.d_mod_hash, name)) != NULL) { in fmd_scheme_fmd_unusable() 148 (void) nvlist_xdup(fmri, &fmri, &fmd.d_nva); in fmd_scheme_notranslate() 280 shp->sch_hashlen = fmd.d_str_buckets; in fmd_scheme_hash_create()
|
H A D | fmd_sysevent.c | 118 (void) nvlist_xalloc(&nvl, NV_UNIQUE_NAME, &fmd.d_nva); in sysev_legacy() 175 fmd_modhash_tryapply(fmd.d_mod_hash, fmd_module_trygc); in sysev_recv() 176 fmd_scheme_hash_trygc(fmd.d_schemes); in sysev_recv() 344 ed.ed_size, &nvl, &fmd.d_nva)) != 0) { in sysev_replay() 523 if ((fmd.d_sysev_hdl = in sysev_init() 527 if (sysevent_subscribe_event(fmd.d_sysev_hdl, EC_ALL, in sysev_init() 549 if (fmd.d_sysev_hdl != NULL) in sysev_fini() 550 sysevent_unbind_handle(fmd.d_sysev_hdl); in sysev_fini()
|
H A D | fmd_log.c | 139 (void) fmd_conf_getprop(fmd.d_conf, "osrelease", &osrel); in fmd_log_write_hdr() 140 (void) fmd_conf_getprop(fmd.d_conf, "osversion", &osver); in fmd_log_write_hdr() 141 (void) fmd_conf_getprop(fmd.d_conf, "platform", &plat); in fmd_log_write_hdr() 142 (void) fmd_conf_getprop(fmd.d_conf, "uuidlen", &lp->log_uuidlen); in fmd_log_write_hdr() 152 err |= ea_set_item(&i1, CAT_FMA_VERSION, fmd.d_version, 0); in fmd_log_write_hdr() 248 for (dvers = 0, p = fmd.d_version; in fmd_log_check_hdr() 336 (void) fmd_conf_getprop(fmd.d_conf, "log.creator", &creator); in fmd_log_open_exacct() 369 (void) fmd_conf_getprop(fmd.d_conf, "log.minfree", &lp->log_minfree); in fmd_log_xopen() 695 if (lp == fmd.d_errlog) in fmd_log_append() 696 sp = &fmd.d_stats->ds_err_enospc; in fmd_log_append() [all …]
|
/illumos-gate/usr/src/pkg/manifests/ |
H A D | service-fault-management.p5m | 48 dir path=etc/fm/fmd group=sys variant.opensolaris.zone=__NODEFAULT 56 file path=etc/logadm.d/fmd.logadm.conf group=sys mode=0444 \ 112 file path=lib/svc/manifest/system/fmd.xml group=sys mode=0444 \ 255 dir path=usr/lib/fm/fmd variant.opensolaris.zone=__NODEFAULT 257 # usr/lib/fm/fmd executables: 258 # - fmd is common, as are fminject, fmsim and fmtopo 261 file path=usr/lib/fm/fmd/fmd mode=0555 variant.opensolaris.zone=__NODEFAULT 262 file path=usr/lib/fm/fmd/fminject mode=0555 variant.opensolaris.zone=__NODEFAULT 263 file path=usr/lib/fm/fmd/fmsim mode=0555 variant.opensolaris.zone=__NODEFAULT 264 file path=usr/lib/fm/fmd/fmtopo mode=0555 variant.opensolaris.zone=__NODEFAULT [all …]
|
/illumos-gate/usr/src/cmd/fm/modules/ |
H A D | Makefile.rootdirs | 35 $(ROOT)/usr/lib/fm/fmd: $(ROOT)/usr/lib/fm 38 $(ROOT)/usr/lib/fm/fmd/%: $(ROOT)/usr/lib/fm/fmd 48 $(ROOT)/usr/platform/%/lib/fm/fmd: $(ROOT)/usr/platform/%/lib/fm 51 $(ROOT)/usr/platform/%/lib/fm/fmd/$(MODCLASS): $(ROOT)/usr/platform/%/lib/fm/fmd
|
H A D | Makefile.plugin | 61 common_ROOTPROG = $(ROOT)/usr/lib/fm/fmd/plugins/$(PROG) 62 arch_ROOTPROG = $(ROOT)/usr/platform/$(ARCH)/lib/fm/fmd/plugins/$(PROG) 63 plat_ROOTPROG = $(PLATFORMS:%=$(ROOT)/usr/platform/%/lib/fm/fmd/plugins/$(PROG)) 66 common_ROOTCONF = $(ROOT)/usr/lib/fm/fmd/plugins/$(CONF) 67 arch_ROOTCONF = $(ROOT)/usr/platform/$(ARCH)/lib/fm/fmd/plugins/$(CONF) 68 plat_ROOTCONF = $(PLATFORMS:%=$(ROOT)/usr/platform/%/lib/fm/fmd/plugins/$(CONF)) 71 APIMAP = $(SRC)/cmd/fm/fmd/common/fmd_api.map 72 FMRIMAP = $(SRC)/cmd/fm/fmd/common/fmd_fmri.map
|
/illumos-gate/usr/src/cmd/fm/scripts/ |
H A D | fmsim.ksh | 178 echo "\t-D start fmd(8) using dtrace(8) and specified D script" 182 echo "\t-o set fmd(8) option to specified value during simulation" 184 echo "\t-t start fmd(8) using truss(1) and specified arguments" 265 exec $truss_cmd $truss_args $quote./usr/lib/fm/fmd/fmd -R $simroot $eol 285 ./usr/lib/fm/fmd/fmd -V | cut -d: -f2 311 $simroot/usr/lib/fm/fmd/fminject -q -c $simchan $arg || { 320 echo 'endhrtime;' | $simroot/usr/lib/fm/fmd/fminject -q -c $simchan - 327 if [[ -f $simroot/var/fm/fmd/errlog ]]; then
|
/illumos-gate/usr/src/cmd/fm/schemes/ |
H A D | Makefile.targ | 65 $(ROOT)/usr/lib/fm/fmd: $(ROOT)/usr/lib/fm 68 $(ROOT)/usr/lib/fm/fmd/schemes: $(ROOT)/usr/lib/fm/fmd 71 $(ROOT)/usr/lib/fm/fmd/schemes/$(MACH64): $(ROOT)/usr/lib/fm/fmd/schemes
|
H A D | Makefile.com | 42 ROOTPROG = $(ROOT)/usr/lib/fm/fmd/schemes/$(PROG) 43 ROOTPROG64 = $(ROOT)/usr/lib/fm/fmd/schemes/$(MACH64)/$(PROG) 44 MAPFILE = ../../../fmd/common/fmd_fmri.map
|
/illumos-gate/usr/src/cmd/fm/dicts/ |
H A D | FMD.dict | 29 defect.sunos.fmd.nosub=0 30 defect.sunos.fmd.nodiagcode=1 31 defect.sunos.fmd.module=2 32 defect.sunos.fmd.config=3
|