diff options
author | stephh <none@none> | 2007-04-05 03:14:36 -0700 |
---|---|---|
committer | stephh <none@none> | 2007-04-05 03:14:36 -0700 |
commit | cecfa35819d13ab26f41d532f904681b316e6c0d (patch) | |
tree | 209fa512e4ed8e2fb394344328c6f1a5eb70e60a /usr/src/uts/common/os/ddifm.c | |
parent | dcd4d5928c099531751fb8dcac80b772dd0e1963 (diff) | |
download | illumos-joyent-cecfa35819d13ab26f41d532f904681b316e6c0d.tar.gz |
6505228 fix for 6328213 seems to have broken bofi
6529479 ddi_fm_fini should check if device is ERRCB_CAPABLE before calling ddi_fm_handler_unregister
Diffstat (limited to 'usr/src/uts/common/os/ddifm.c')
-rw-r--r-- | usr/src/uts/common/os/ddifm.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/usr/src/uts/common/os/ddifm.c b/usr/src/uts/common/os/ddifm.c index caf35edcff..71dcab5b61 100644 --- a/usr/src/uts/common/os/ddifm.c +++ b/usr/src/uts/common/os/ddifm.c @@ -19,7 +19,7 @@ * CDDL HEADER END */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ @@ -772,7 +772,11 @@ ddi_fm_fini(dev_info_t *dip) } if (dip != ddi_root_node()) { - ddi_fm_handler_unregister(dip); + if (DDI_FM_ERRCB_CAP(fmhdl->fh_cap)) { + ddi_fm_handler_unregister(dip); + (void) ddi_prop_remove(DDI_DEV_T_NONE, dip, + "fm-errcb-capable"); + } if (DDI_FM_DMA_ERR_CAP(fmhdl->fh_cap) || DDI_FM_ACC_ERR_CAP(fmhdl->fh_cap)) { |