Print this page
8074 need to add FMA event for SSD wearout

*** 18,27 **** --- 18,28 ---- * * CDDL HEADER END */ /* * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright 2016 Nexenta Systems, Inc. All rights reserved. */ #pragma dictionary "DISK" #define P disk
*** 42,52 **** * ability to attempt data recovery/relocation without faulting a disk. * This implementation depends on a file system retry to the same lba * to trigger a fault when recovery/relocation is not possible. * * We let the engine propagate one error only once every 1 minute and then if we ! * still get 2 or more * errors within 24 hours for the same LBA, there is a fault. */ engine serd.io.scsi.cmd.disk.dev.rqs.merr@P, N=1, T=24h; /* * disk-as-detector: fault events. --- 43,54 ---- * ability to attempt data recovery/relocation without faulting a disk. * This implementation depends on a file system retry to the same lba * to trigger a fault when recovery/relocation is not possible. * * We let the engine propagate one error only once every 1 minute and then if we ! * still get 2 or more errors within 24 hours for the same LBA, ! * there is a fault. */ engine serd.io.scsi.cmd.disk.dev.rqs.merr@P, N=1, T=24h; /* * disk-as-detector: fault events.
*** 183,199 **** --- 185,203 ---- FITrate=10, FRU=P, ASRU=P; event fault.io.disk.predictive-failure@P, FITrate=10, FITrate=10, FRU=P, ASRU=P; event fault.io.disk.self-test-failure@P, FITrate=10, FITrate=10, FRU=P, ASRU=P; + event fault.io.disk.ssm-wearout@P; /* * ereports. */ event ereport.io.scsi.disk.over-temperature@P; event ereport.io.scsi.disk.predictive-failure@P; event ereport.io.scsi.disk.self-test-failure@P; + event ereport.io.scsi.disk.ssm-wearout@P; /* * Propagations. */ prop fault.io.disk.over-temperature@P ->
*** 204,208 **** --- 208,219 ---- prop fault.io.disk.predictive-failure@P -> ereport.io.scsi.disk.predictive-failure@P { setpayloadprop("asc", payloadprop("additional-sense-code")) && setpayloadprop("ascq", payloadprop("additional-sense-code-qualifier")) }; + + prop fault.io.disk.ssm-wearout@P -> + ereport.io.scsi.disk.ssm-wearout@P { + setpayloadprop("current-wearout-percentage", + payloadprop("current-ssm-wearout")) + && setpayloadprop("threshold-wearout-percentage", + payloadprop("threshold-ssm-wearout")) };