summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
authorStephen Hanson <Stephen.Hanson@Sun.COM>2009-03-18 05:54:25 -0700
committerStephen Hanson <Stephen.Hanson@Sun.COM>2009-03-18 05:54:25 -0700
commit8cffa125fa3761e4ea4b99a01cb1207e1d90e740 (patch)
treed14459a3886950cd3415c9472fa7e731a80fca3b /usr/src
parentb657fff74acfeed123d06540dcbf2ebf0f4ebee9 (diff)
downloadillumos-gate-8cffa125fa3761e4ea4b99a01cb1207e1d90e740.tar.gz
6803279 bofi_intercept_intr() shouild work with MSI (X) interrupt
6802143 "must" propagations with payloadprop constraints are treated like "may" propagations 6803816 setserd* and setpayloadprop commands only allowed on direct fault->ereport propagations 6786891 serd_io_device_nonfatal_n/t properties not working for pciex devices 6778452 diagnosis fails if service state changes from "unaffected" to "lost" or "degraded"
Diffstat (limited to 'usr/src')
-rw-r--r--usr/src/cmd/fm/eversholt/files/common/pciex.esc50
-rw-r--r--usr/src/cmd/fm/eversholt/files/i386/i86pc/amd64.esc40
-rw-r--r--usr/src/cmd/fm/eversholt/files/i386/i86pc/gcpu_amd.esc12
-rw-r--r--usr/src/cmd/fm/eversholt/files/i386/i86pc/intel.esc6
-rw-r--r--usr/src/cmd/fm/eversholt/files/sparc/sun4v/gmem.esc34
-rw-r--r--usr/src/cmd/fm/modules/common/eversholt/eval.c6
-rw-r--r--usr/src/cmd/fm/modules/common/eversholt/fme.c4
-rw-r--r--usr/src/uts/common/io/bofi.c8
8 files changed, 87 insertions, 73 deletions
diff --git a/usr/src/cmd/fm/eversholt/files/common/pciex.esc b/usr/src/cmd/fm/eversholt/files/common/pciex.esc
index 116b1e8e39..83adc13f2c 100644
--- a/usr/src/cmd/fm/eversholt/files/common/pciex.esc
+++ b/usr/src/cmd/fm/eversholt/files/common/pciex.esc
@@ -19,12 +19,10 @@
* CDDL HEADER END
*/
/*
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#pragma dictionary "PCIEX"
#include <fm/topo_hc.h>
@@ -110,9 +108,9 @@ engine serd.io.pciex.flt-nf@PCIEXFN, N=NONFATAL_DPE_COUNT, T=NONFATAL_DPE_TIME;
event fault.io.pciex.device-interr-unaf@PCIEXFN, FITrate=PCIEX_DEV_FIT,
engine=serd.io.pciex.flt-nf@PCIEXFN;
-engine serd.io.pciex.corrlink@PCIEXFN, N=CORRLINK_COUNT, T=CORRLINK_TIME;
+engine serd.io.device.nonfatal@PCIEXFN, N=CORRLINK_COUNT, T=CORRLINK_TIME;
event fault.io.pciex.device-interr-corr@PCIEXFN, FITrate=PCIEX_DEV_FIT,
- engine=serd.io.pciex.corrlink@PCIEXFN;
+ engine=serd.io.device.nonfatal@PCIEXFN;
event fault.io.pciex.device-interr@pciexrc, FITrate=PCIEX_RC_FIT;
@@ -122,9 +120,9 @@ engine serd.io.pciex.flt-nf@pciexrc, N=NONFATAL_DPE_COUNT, T=NONFATAL_DPE_TIME;
event fault.io.pciex.device-interr-unaf@pciexrc, FITrate=PCIEX_RC_FIT,
engine=serd.io.pciex.flt-nf@pciexrc;
-engine serd.io.pciex.corrlink@pciexrc, N=CORRLINK_COUNT, T=CORRLINK_TIME;
+engine serd.io.device.nonfatal@pciexrc, N=CORRLINK_COUNT, T=CORRLINK_TIME;
event fault.io.pciex.device-interr-corr@pciexrc, FITrate=PCIEX_RC_FIT,
- engine=serd.io.pciex.corrlink@pciexrc;
+ engine=serd.io.device.nonfatal@pciexrc;
event fault.io.pciex.device-invreq@PCIEXFN, FITrate=PCIEX_DEV_INV_FIT;
@@ -191,7 +189,7 @@ prop error.io.device.f-device@PCIEXFN (1)->
ereport.io.device.intern_corr@PCIEXFN,
ereport.io.device.intern_uncorr@PCIEXFN;
-prop error.io.device.f-device@PCIEXFN (1)->
+prop error.io.device.f-device@PCIEXFN (0)->
error.io.pciex.lost-d@PCIEXFN;
prop error.io.device.deg-device@PCIEXFN (1)->
@@ -219,24 +217,38 @@ prop error.io.device.nf-device@PCIEXFN (1)->
/*
* handling of service impact ereports.
*/
-prop error.io.pciex.lost-d@PCIEXFN (0)->
+prop error.io.pciex.lost-d@PCIEXFN (1)->
ereport.io.service.lost@PCIEXFN,
error.io.pciex.lost-d@PCIEXFN/PCIEXFNHZ,
error.io.pciex.lost-d@PCIEXFN/PCIFNHZ;
-prop error.io.pciex.lost-d@PCIFN (0)->
+prop error.io.pciex.lost-d@PCIEXFN (0)->
+ ereport.io.service.unaffected@PCIEXFN,
+ ereport.io.service.degraded@PCIEXFN;
+
+prop error.io.pciex.lost-d@PCIFN (1)->
ereport.io.service.lost@PCIFN,
error.io.pciex.lost-d@PCIFN/PCIFNHZ;
+prop error.io.pciex.lost-d@PCIFN (0)->
+ ereport.io.service.unaffected@PCIFN,
+ ereport.io.service.degraded@PCIFN;
+
prop error.io.pciex.degraded-d@PCIEXFN (1)->
ereport.io.service.degraded@PCIEXFN,
error.io.pciex.degraded-d@PCIEXFN/PCIEXFNHZ,
error.io.pciex.degraded-d@PCIEXFN/PCIFNHZ;
+prop error.io.pciex.degraded-d@PCIEXFN (0)->
+ ereport.io.service.unaffected@PCIEXFN;
+
prop error.io.pciex.degraded-d@PCIFN (1)->
ereport.io.service.degraded@PCIFN,
error.io.pciex.degraded-d@PCIFN/PCIFNHZ;
+prop error.io.pciex.degraded-d@PCIFN (0)->
+ ereport.io.service.unaffected@PCIFN;
+
prop error.io.pciex.noimpact-d@PCIEXFN (1)->
ereport.io.service.unaffected@PCIEXFN,
error.io.service.restored@PCIEXFN,
@@ -288,7 +300,7 @@ prop fault.io.pciex.device-invreq@pciexrc (1)->
error.io.pciex.badreq-d@pciexrc/PCIEXFNHZ;
prop fault.io.pciex.device-interr-corr@pciexrc (1)->
- error.io.pciex.corrlink@pciexrc/pciexbus<>;
+ error.io.pciex.corrlink@pciexrc/pciexbus<> { setserdsuffix("_corr") };
prop fault.io.pciex.device-interr-unaf@pciexrc (1)->
error.io.pciex.nf-poisecrc-d@pciexrc/PCIEXFNHZ;
@@ -340,13 +352,15 @@ prop fault.io.pciex.device-invreq@PCIEXFN { IS_LF(PCIEXFN) } (1)->
error.io.pciex.flt-badreq-u@PCIEXFN;
prop fault.io.pciex.device-interr-corr@PCIEXFN { IS_SU(PCIEXFN) } (1)->
- error.io.pciex.corrlink@pciexbus;
+ error.io.pciex.corrlink@pciexbus { setserdsuffix("_corr") };
prop fault.io.pciex.device-interr-unaf@PCIEXFN { IS_SU(PCIEXFN) } (1)->
error.io.pciex.flt-nf-poisecrc-u@PCIEXFN;
-prop fault.io.pciex.device-interr-corr@PCIEXFN { IS_LF(PCIEXFN) } (1)->
- error.io.pciex.corrlink@pciexbus,
+prop fault.io.pciex.device-interr-corr@PCIEXFN { IS_LF(PCIEXFN) } (0)->
+ error.io.pciex.corrlink@pciexbus { setserdsuffix("_corr") };
+
+prop fault.io.pciex.device-interr-corr@PCIEXFN { IS_LF(PCIEXFN) } (0)->
error.io.device.nf-device@PCIEXFN;
prop fault.io.pciex.device-interr-unaf@PCIEXFN { IS_LF(PCIEXFN) } (1)->
@@ -397,7 +411,7 @@ prop fault.io.pciex.device-noresp@PCIEXFN { IS_SD(PCIEXFN) } (1)->
error.io.pciex.nr-d@PCIEXFN/PCIEXFNHZ;
prop fault.io.pciex.device-interr-corr@PCIEXFN { IS_SD(PCIEXFN) } (1)->
- error.io.pciex.corrlink@PCIEXFN/pciexbus<>;
+ error.io.pciex.corrlink@PCIEXFN/pciexbus<> { setserdsuffix("_corr") };
prop fault.io.pciex.device-interr-unaf@PCIEXFN { IS_SD(PCIEXFN) } (1)->
error.io.pciex.nf-poisecrc-d@PCIEXFN/PCIEXFNHZ;
@@ -481,7 +495,7 @@ prop fault.io.pciex.device-noresp@PCIEXFN { IS_BG(PCIEXFN) } (1)->
error.io.pci.nr-drw-d@PCIEXFN/PCIFNHZ;
prop fault.io.pciex.device-interr-corr@PCIEXFN { IS_BG(PCIEXFN) } (1)->
- error.io.pciex.corrlink@pciexbus;
+ error.io.pciex.corrlink@pciexbus { setserdsuffix("_corr") };
prop fault.io.pciex.device-interr-unaf@PCIEXFN { IS_BG(PCIEXFN) } (1)->
error.io.pciex.flt-nf-poisecrc-u@PCIEXFN,
@@ -540,7 +554,7 @@ prop error.io.pciex.f-poisecrc-d@PCIEXFN (1)->
error.io.pciex.poisreq-d@PCIEXFN,
error.io.pciex.poiscomp-d@PCIEXFN;
-prop error.io.pciex.f-poisecrc-d@PCIEXFN (1)->
+prop error.io.pciex.f-poisecrc-d@PCIEXFN (0)->
error.io.pciex.lost-d@PCIEXFN;
prop error.io.pciex.deg-poisecrc-d@PCIEXFN (1)->
@@ -576,7 +590,7 @@ prop error.io.pciex.flt-f-poisecrc-u@PCIEXFN (1)->
error.io.pciex.flt-poisreq-u@PCIEXFN,
error.io.pciex.flt-poiscomp-u@PCIEXFN;
-prop error.io.pciex.flt-f-poisecrc-u@PCIEXFN (1)->
+prop error.io.pciex.flt-f-poisecrc-u@PCIEXFN (0)->
error.io.pciex.lost-d@PCIEXFN;
/*
diff --git a/usr/src/cmd/fm/eversholt/files/i386/i86pc/amd64.esc b/usr/src/cmd/fm/eversholt/files/i386/i86pc/amd64.esc
index 430160d277..df16000ce5 100644
--- a/usr/src/cmd/fm/eversholt/files/i386/i86pc/amd64.esc
+++ b/usr/src/cmd/fm/eversholt/files/i386/i86pc/amd64.esc
@@ -20,7 +20,7 @@
*/
/*
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -243,28 +243,28 @@ event fault.memory.dimm_ck@chip/memory-controller/dimm/rank,
prop fault.memory.page_sb@chip/memory-controller/dimm/rank
{ CONTAINS_RANK && SINGLE_BIT_CE &&
SB_PGFLTS + CK_PGFLTS < RANK_PGFLT_MAX && SET_ADDR && SET_OFFSET } (1)->
- ereport.cpu.amd.dc.inf_sys_ecc1@chip/core/strand,
- ereport.cpu.amd.bu.s_ecc1@chip/core/strand,
- ereport.cpu.amd.nb.mem_ce@chip/core/strand;
+ ereport.cpu.amd.dc.inf_sys_ecc1@chip/core<>/strand<>,
+ ereport.cpu.amd.bu.s_ecc1@chip/core<>/strand<>,
+ ereport.cpu.amd.nb.mem_ce@chip/core<>/strand<>;
prop fault.memory.page_ck@chip/memory-controller/dimm/rank
{ CONTAINS_RANK && !SINGLE_BIT_CE &&
SB_PGFLTS + CK_PGFLTS < RANK_PGFLT_MAX && SET_ADDR && SET_OFFSET } (1)->
- ereport.cpu.amd.dc.inf_sys_ecc1@chip/core/strand,
- ereport.cpu.amd.bu.s_ecc1@chip/core/strand,
- ereport.cpu.amd.nb.mem_ce@chip/core/strand;
+ ereport.cpu.amd.dc.inf_sys_ecc1@chip/core<>/strand<>,
+ ereport.cpu.amd.bu.s_ecc1@chip/core<>/strand<>,
+ ereport.cpu.amd.nb.mem_ce@chip/core<>/strand<>;
prop fault.memory.dimm_sb@chip/memory-controller/dimm/rank
{ CONTAINS_RANK && SB_PGFLTS + CK_PGFLTS > RANK_THRESH &&
SB_PGFLTS > RANK_THRESH / 2 } (1)->
- ereport.cpu.amd.dc.inf_sys_ecc1@chip/core/strand,
- ereport.cpu.amd.bu.s_ecc1@chip/core/strand,
- ereport.cpu.amd.nb.mem_ce@chip/core/strand;
+ ereport.cpu.amd.dc.inf_sys_ecc1@chip/core<>/strand<>,
+ ereport.cpu.amd.bu.s_ecc1@chip/core<>/strand<>,
+ ereport.cpu.amd.nb.mem_ce@chip/core<>/strand<>;
prop fault.memory.dimm_ck@chip/memory-controller/dimm/rank
{ CONTAINS_RANK && SB_PGFLTS + CK_PGFLTS > RANK_THRESH &&
CK_PGFLTS > RANK_THRESH / 2 } (1)->
- ereport.cpu.amd.nb.mem_ce@chip/core/strand;
+ ereport.cpu.amd.nb.mem_ce@chip/core<>/strand<>;
/*
* If the address is not valid then no resource member will be included
@@ -306,17 +306,17 @@ event fault.memory.page_ue@chip/memory-controller/dimm/rank, message=0,
prop fault.memory.dimm_ue@chip/memory-controller/dimm/rank
{ CONTAINS_RANK } (1)->
- ereport.cpu.amd.ic.inf_sys_eccm@chip/core/strand,
- ereport.cpu.amd.dc.inf_sys_eccm@chip/core/strand,
- ereport.cpu.amd.bu.s_eccm@chip/core/strand,
- ereport.cpu.amd.nb.mem_ue@chip/core/strand;
+ ereport.cpu.amd.ic.inf_sys_eccm@chip/core<>/strand<>,
+ ereport.cpu.amd.dc.inf_sys_eccm@chip/core<>/strand<>,
+ ereport.cpu.amd.bu.s_eccm@chip/core<>/strand<>,
+ ereport.cpu.amd.nb.mem_ue@chip/core<>/strand<>;
prop fault.memory.page_ue@chip/memory-controller/dimm/rank
{ CONTAINS_RANK && SET_ADDR && SET_OFFSET } (1)->
- ereport.cpu.amd.ic.inf_sys_eccm@chip/core/strand,
- ereport.cpu.amd.dc.inf_sys_eccm@chip/core/strand,
- ereport.cpu.amd.bu.s_eccm@chip/core/strand,
- ereport.cpu.amd.nb.mem_ue@chip/core/strand;
+ ereport.cpu.amd.ic.inf_sys_eccm@chip/core<>/strand<>,
+ ereport.cpu.amd.dc.inf_sys_eccm@chip/core<>/strand<>,
+ ereport.cpu.amd.bu.s_eccm@chip/core<>/strand<>,
+ ereport.cpu.amd.nb.mem_ue@chip/core<>/strand<>;
event upset.memory.discard3@chip/core/strand;
prop upset.memory.discard3@chip/core/strand
@@ -353,7 +353,7 @@ prop error.memory.cs_testfail@chip/memory-controller/chip-select (1)->
confprop(chip/memory-controller/chip-select, s) == \
confprop(chip/memory-controller/dimm/rank, "csname"))
-prop fault.memory.dimm_testfail@chip/memory-controller/dimm/rank (1)->
+prop fault.memory.dimm_testfail@chip/memory-controller/dimm/rank (0)->
error.memory.cs_testfail@chip/memory-controller/chip-select
{ CSMATCH("dimm1-csname") || CSMATCH("dimm2-csname")};
diff --git a/usr/src/cmd/fm/eversholt/files/i386/i86pc/gcpu_amd.esc b/usr/src/cmd/fm/eversholt/files/i386/i86pc/gcpu_amd.esc
index a98bdb5d07..4514cf7e37 100644
--- a/usr/src/cmd/fm/eversholt/files/i386/i86pc/gcpu_amd.esc
+++ b/usr/src/cmd/fm/eversholt/files/i386/i86pc/gcpu_amd.esc
@@ -20,7 +20,7 @@
*/
/*
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -140,11 +140,11 @@ event fault.memory.generic-x86.dimm_ce@CSPATH,
prop fault.memory.generic-x86.page_ce@CSPATH
{ ADDR_VALID && CONTAINS_CS && !CS_PGFLT_LIMIT_REACHED && SET_ADDR } (1)->
- ereport.cpu.generic-x86.mem_ce@chip/core/strand;
+ ereport.cpu.generic-x86.mem_ce@chip/core<>/strand<>;
prop fault.memory.generic-x86.dimm_ce@CSPATH
{ ADDR_VALID && CONTAINS_CS && CS_DIMMSB_THRESH_REACHED } (1)->
- ereport.cpu.generic-x86.mem_ce@chip/core/strand;
+ ereport.cpu.generic-x86.mem_ce@chip/core<>/strand<>;
event upset.memory.generic-x86.discard@chip/core/strand;
prop upset.memory.generic-x86.discard@chip/core/strand
@@ -165,16 +165,16 @@ event fault.memory.generic-x86.dimm_ue@CSPATH;
prop fault.memory.generic-x86.page_ue@CSPATH
{ ADDR_VALID && CONTAINS_CS && SET_ADDR } (1)->
- ereport.cpu.generic-x86.mem_ue@chip/core/strand;
+ ereport.cpu.generic-x86.mem_ue@chip/core<>/strand<>;
prop fault.memory.generic-x86.dimm_ue@CSPATH
{ ADDR_VALID && CONTAINS_CS } (1)->
- ereport.cpu.generic-x86.mem_ue@chip/core/strand;
+ ereport.cpu.generic-x86.mem_ue@chip/core<>/strand<>;
event upset.memory.generic-x86.discard3@CSPATH;
prop upset.memory.generic-x86.discard3@CSPATH
{ !payloadprop_defined("resource") || !ADDR_VALID } (1)->
- ereport.cpu.generic-x86.mem_ue@chip/core/strand;
+ ereport.cpu.generic-x86.mem_ue@chip/core<>/strand<>;
/*
* ========= Propogations for GART Table Walk Errors =============
diff --git a/usr/src/cmd/fm/eversholt/files/i386/i86pc/intel.esc b/usr/src/cmd/fm/eversholt/files/i386/i86pc/intel.esc
index ecfb677eae..3280618797 100644
--- a/usr/src/cmd/fm/eversholt/files/i386/i86pc/intel.esc
+++ b/usr/src/cmd/fm/eversholt/files/i386/i86pc/intel.esc
@@ -20,7 +20,7 @@
*/
/*
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -280,7 +280,7 @@ prop fault.memory.intel.dimm_ce@dimm/rank
prop error.memory.intel.dimm_ce@dimm
{ !confprop_defined(dimm, "dimm-size") &&
count(stat.ce_pgflt@dimm) > 512 } (1)->
- ereport.cpu.intel.nb.mem_ce@dimm/rank;
+ ereport.cpu.intel.nb.mem_ce@dimm/rank<>;
#define DIMM_CE(dimm_size, n, t, fault_rate) \
prop fault.memory.intel.dimm_ce@dimm/rank { \
@@ -290,7 +290,7 @@ prop error.memory.intel.dimm_ce@dimm
prop error.memory.intel.dimm_ce@dimm { \
confprop(dimm, "dimm-size") == dimm_size && \
count(stat.ce_pgflt@dimm) > fault_rate } (1)-> \
- ereport.cpu.intel.nb.mem_ce@dimm/rank;
+ ereport.cpu.intel.nb.mem_ce@dimm/rank<>;
DIMM_CE("8G", 8, 1week, 2000)
DIMM_CE("4G", 4, 1week, 1500)
diff --git a/usr/src/cmd/fm/eversholt/files/sparc/sun4v/gmem.esc b/usr/src/cmd/fm/eversholt/files/sparc/sun4v/gmem.esc
index f9e268f61f..3fa17dc2c8 100644
--- a/usr/src/cmd/fm/eversholt/files/sparc/sun4v/gmem.esc
+++ b/usr/src/cmd/fm/eversholt/files/sparc/sun4v/gmem.esc
@@ -20,7 +20,7 @@
*/
/*
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -65,13 +65,13 @@ MEMUE_ERPT(strand);
\
prop fault.memory.bank@DIMMPATH \
{ DIAGNOSE_ERPT && CONTAINS_DIMM } (1)-> \
- ereport.cpu.generic-sparc.mem-uc@level; \
+ ereport.cpu.generic-sparc.mem-uc@level<>; \
\
event upset.memory.bank@DIMMPATH; \
\
prop upset.memory.bank@DIMMPATH \
{ !DIAGNOSE_ERPT } (1)-> \
- ereport.cpu.generic-sparc.mem-uc@level
+ ereport.cpu.generic-sparc.mem-uc@level<>
FLT_MEM_UE_BANK(chip);
FLT_MEM_UE_BANK(core);
@@ -83,13 +83,13 @@ FLT_MEM_UE_BANK(strand);
\
prop fault.memory.page@DIMMPATH \
{ DIAGNOSE_ERPT && CONTAINS_DIMM && SET_ADDR && SET_OFFSET } (1)-> \
- ereport.cpu.generic-sparc.mem-uc@level; \
+ ereport.cpu.generic-sparc.mem-uc@level<>; \
\
event upset.memory.page@DIMMPATH; \
\
prop upset.memory.page@DIMMPATH \
{ !DIAGNOSE_ERPT } (1)-> \
- ereport.cpu.generic-sparc.mem-uc@level
+ ereport.cpu.generic-sparc.mem-uc@level<>
FLT_MEM_UE_PAGE(chip);
FLT_MEM_UE_PAGE(core);
@@ -135,7 +135,7 @@ prop fault.memory.memlink@CHIP
prop fault.memory.memlink@MEM_BUFF
{ DIAGNOSE_ERPT && CONTAINS_MEMBUFF && SET_SERDN &&
SET_SERDT && SET_RATIO } (1)->
- ereport.cpu.generic-sparc.membuf-crc@CHIP;
+ ereport.cpu.generic-sparc.membuf-crc@CHIP<>;
event upset.memory.memlink@CHIP;
@@ -152,12 +152,12 @@ prop fault.memory.memlink@MEM_BUFF
prop fault.memory.memlink@CHIP
{ DIAGNOSE_ERPT && CONTAINS_CHIP && SET_SERDN &&
SET_SERDT && SET_RATIO } (1) ->
- ereport.cpu.generic-sparc.membuf-crc@MEM_BUFF;
+ ereport.cpu.generic-sparc.membuf-crc@MEM_BUFF<>;
prop fault.memory.memlink@MEM_CTRL
{ DIAGNOSE_ERPT && CONTAINS_MEMCTRL && SET_SERDN &&
SET_SERDT && SET_RATIO } (1)->
- ereport.cpu.generic-sparc.membuf-crc@MEM_BUFF;
+ ereport.cpu.generic-sparc.membuf-crc@MEM_BUFF<>;
event upset.memory.memlink@MEM_BUFF;
@@ -175,7 +175,7 @@ prop fault.memory.memlink@MEM_CTRL
prop fault.memory.memlink@MEM_BUFF
{ DIAGNOSE_ERPT && CONTAINS_MEMBUFF && SET_SERDN &&
SET_SERDT && SET_RATIO } (1)->
- ereport.cpu.generic-sparc.membuf-crc@MEM_CTRL;
+ ereport.cpu.generic-sparc.membuf-crc@MEM_CTRL<>;
event upset.memory.memlink@MEM_CTRL;
@@ -205,7 +205,7 @@ prop fault.memory.memlink-uc@CHIP
prop fault.memory.memlink-uc@MEM_BUFF
{ DIAGNOSE_ERPT && CONTAINS_MEMBUFF } (1) ->
- ereport.cpu.generic-sparc.membuf-crc-uc@CHIP;
+ ereport.cpu.generic-sparc.membuf-crc-uc@CHIP<>;
event upset.memory.memlink-uc@CHIP;
@@ -222,11 +222,11 @@ prop fault.memory.memlink-uc@MEM_BUFF
prop fault.memory.memlink-uc@CHIP
{ DIAGNOSE_ERPT && CONTAINS_CHIP } (1) ->
- ereport.cpu.generic-sparc.membuf-crc-uc@MEM_BUFF;
+ ereport.cpu.generic-sparc.membuf-crc-uc@MEM_BUFF<>;
prop fault.memory.memlink-uc@MEM_CTRL
{ DIAGNOSE_ERPT && CONTAINS_MEMCTRL } (1) ->
- ereport.cpu.generic-sparc.membuf-crc-uc@MEM_BUFF;
+ ereport.cpu.generic-sparc.membuf-crc-uc@MEM_BUFF<>;
event upset.memory.memlink-uc@MEM_BUFF;
@@ -243,7 +243,7 @@ prop fault.memory.memlink-uc@MEM_CTRL
prop fault.memory.memlink-uc@MEM_BUFF
{ DIAGNOSE_ERPT && CONTAINS_MEMBUFF } (1) ->
- ereport.cpu.generic-sparc.membuf-crc-uc@MEM_CTRL;
+ ereport.cpu.generic-sparc.membuf-crc-uc@MEM_CTRL<>;
event upset.memory.memlink-uc@MEM_CTRL;
@@ -274,7 +274,7 @@ prop fault.memory.memlink-failover@CHIP
prop fault.memory.memlink-failover@MEM_BUFF
{ DIAGNOSE_ERPT && CONTAINS_MEMBUFF } (1) ->
- ereport.cpu.generic-sparc.membuf-crc-failover@CHIP;
+ ereport.cpu.generic-sparc.membuf-crc-failover@CHIP<>;
event upset.memory.memlink-failover@CHIP;
@@ -290,11 +290,11 @@ prop fault.memory.memlink-failover@MEM_BUFF
prop fault.memory.memlink-failover@CHIP
{ DIAGNOSE_ERPT && CONTAINS_CHIP } (1) ->
- ereport.cpu.generic-sparc.membuf-crc-failover@MEM_BUFF;
+ ereport.cpu.generic-sparc.membuf-crc-failover@MEM_BUFF<>;
prop fault.memory.memlink-failover@MEM_CTRL
{ DIAGNOSE_ERPT && CONTAINS_MEMCTRL } (1) ->
- ereport.cpu.generic-sparc.membuf-crc-failover@MEM_BUFF;
+ ereport.cpu.generic-sparc.membuf-crc-failover@MEM_BUFF<>;
event upset.memory.memlink-failover@MEM_BUFF;
@@ -310,7 +310,7 @@ prop fault.memory.memlink-failover@MEM_CTRL
prop fault.memory.memlink-failover@MEM_BUFF
{ DIAGNOSE_ERPT && CONTAINS_MEMBUFF } (1) ->
- ereport.cpu.generic-sparc.membuf-crc-failover@MEM_CTRL;
+ ereport.cpu.generic-sparc.membuf-crc-failover@MEM_CTRL<>;
event upset.memory.memlink-failover@MEM_CTRL;
diff --git a/usr/src/cmd/fm/modules/common/eversholt/eval.c b/usr/src/cmd/fm/modules/common/eversholt/eval.c
index 9619c608f3..f7bd53227c 100644
--- a/usr/src/cmd/fm/modules/common/eversholt/eval.c
+++ b/usr/src/cmd/fm/modules/common/eversholt/eval.c
@@ -20,7 +20,7 @@
*/
/*
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*
* eval.c -- constraint evaluation module
@@ -526,7 +526,7 @@ eval_func(struct node *funcnp, struct lut *ex, struct node *events[],
ASSERTinfo(np->u.expr.left->t == T_QUOTE,
ptree_nodetype2str(np->u.expr.left->t));
- if (arrowp->head->myevent->count == 0)
+ if (!(arrowp->head->myevent->cached_state & REQMNTS_CREDIBLE))
return (0);
outfl(O_ALTFP|O_VERB2|O_NONL, np->file, np->line,
@@ -587,7 +587,7 @@ eval_func(struct node *funcnp, struct lut *ex, struct node *events[],
char *str;
struct event *flt = arrowp->tail->myevent;
- if (arrowp->head->myevent->count == 0)
+ if (!(arrowp->head->myevent->cached_state & REQMNTS_CREDIBLE))
return (0);
if (funcname == L_setserdn)
diff --git a/usr/src/cmd/fm/modules/common/eversholt/fme.c b/usr/src/cmd/fm/modules/common/eversholt/fme.c
index d316173ee3..8d2a27b7b9 100644
--- a/usr/src/cmd/fm/modules/common/eversholt/fme.c
+++ b/usr/src/cmd/fm/modules/common/eversholt/fme.c
@@ -20,7 +20,7 @@
*/
/*
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*
* fme.c -- fault management exercise module
@@ -3767,7 +3767,7 @@ requirements_test(struct fme *fmep, struct event *ep,
ep2 = ap->arrowp->head->myevent;
platform_set_payloadnvp(ep2->nvp);
(void) checkconstraints(fmep, ap->arrowp);
- if (ap->arrowp->forever_true) {
+ if (!ap->arrowp->forever_false) {
/*
* if all arrows are invalidated by the
* constraints, then we should elide the
diff --git a/usr/src/uts/common/io/bofi.c b/usr/src/uts/common/io/bofi.c
index 64ce4efac9..275362dd51 100644
--- a/usr/src/uts/common/io/bofi.c
+++ b/usr/src/uts/common/io/bofi.c
@@ -19,7 +19,7 @@
* CDDL HEADER END
*/
/*
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -4507,7 +4507,7 @@ bofi_dvma_sync(ddi_dma_handle_t h, uint_t index, uint_t view)
* bofi intercept routine - gets called instead of users interrupt routine
*/
static uint_t
-bofi_intercept_intr(caddr_t xp)
+bofi_intercept_intr(caddr_t xp, caddr_t arg2)
{
struct bofi_errent *ep;
struct bofi_link *lp;
@@ -4525,7 +4525,7 @@ bofi_intercept_intr(caddr_t xp)
*/
if (hp->link == NULL)
return (hp->save.intr.int_handler
- (hp->save.intr.int_handler_arg1, NULL));
+ (hp->save.intr.int_handler_arg1, arg2));
mutex_enter(&bofi_mutex);
/*
* look for any errdefs
@@ -4575,7 +4575,7 @@ bofi_intercept_intr(caddr_t xp)
*/
for (i = 0; i < intr_count; i++) {
result = hp->save.intr.int_handler
- (hp->save.intr.int_handler_arg1, NULL);
+ (hp->save.intr.int_handler_arg1, arg2);
if (result == DDI_INTR_CLAIMED)
unclaimed_counter >>= 1;
else if (++unclaimed_counter >= 20)