507 clcode, rc);
508 } else {
509 fmd_hdl_debug(hdl, "Unexpected fw defect event %s", class);
510 }
511
512 if (fltclass) {
513 fmd_case_t *cp = NULL;
514 nvlist_t *fault = NULL;
515
516 fault = fmd_nvl_create_fault(hdl, fltclass, 100, NULL,
517 NULL, rsc);
518 if (fault != NULL) {
519 cp = fmd_case_open(hdl, NULL);
520 fmd_case_add_ereport(hdl, cp, ep);
521 fmd_case_add_suspect(hdl, cp, fault);
522 fmd_case_solve(hdl, cp);
523 solve = 1;
524 }
525 }
526
527 if (rsc)
528 nvlist_free(rsc);
529
530 return (solve ? CMD_EVD_OK : CMD_EVD_UNUSED);
531 }
532
533 void
534 cmd_branch_close(fmd_hdl_t *hdl, void *arg)
535 {
536 cmd_branch_destroy(hdl, arg);
537 }
538
539
540 /*ARGSUSED*/
541 ulong_t
542 cmd_mem_get_phys_pages(fmd_hdl_t *hdl)
543 {
544 /*
545 * Compute and return the total physical memory in pages from the
546 * MD/PRI.
547 * Cache its value.
|
507 clcode, rc);
508 } else {
509 fmd_hdl_debug(hdl, "Unexpected fw defect event %s", class);
510 }
511
512 if (fltclass) {
513 fmd_case_t *cp = NULL;
514 nvlist_t *fault = NULL;
515
516 fault = fmd_nvl_create_fault(hdl, fltclass, 100, NULL,
517 NULL, rsc);
518 if (fault != NULL) {
519 cp = fmd_case_open(hdl, NULL);
520 fmd_case_add_ereport(hdl, cp, ep);
521 fmd_case_add_suspect(hdl, cp, fault);
522 fmd_case_solve(hdl, cp);
523 solve = 1;
524 }
525 }
526
527 nvlist_free(rsc);
528
529 return (solve ? CMD_EVD_OK : CMD_EVD_UNUSED);
530 }
531
532 void
533 cmd_branch_close(fmd_hdl_t *hdl, void *arg)
534 {
535 cmd_branch_destroy(hdl, arg);
536 }
537
538
539 /*ARGSUSED*/
540 ulong_t
541 cmd_mem_get_phys_pages(fmd_hdl_t *hdl)
542 {
543 /*
544 * Compute and return the total physical memory in pages from the
545 * MD/PRI.
546 * Cache its value.
|