HomeFreeBSD

cam: Log errors from passthru commands

Description

cam: Log errors from passthru commands

Since a30ecd42b8e09 we've logged almost all unexpected errors from
commands. However, some passthru commands were not logged via devctl. To
fix this, pass all requests through passerror (which calls
cam_periph_error), but flag those requests that didn't want error
recovery as SF_NO_RECOVERY, like we do for device probing. By doing this
we get identical behavior to the current code, but log these errors.

We have had hangs on drives that seems to show no error. Vendor analysis
of the drive found an illegal command that happen to hang the drive. In
verifying their analysis, we discovered that the pass through commands
from things like smartctl that encountered errors or timeouts weren't
logged.

Sponsored by: Netflix
Reviewed by: ken, mav
Differential Revision: https://reviews.freebsd.org/D41167

Details

Provenance
impAuthored on Jul 28 2023, 6:11 PM
Reviewer
ken
Differential Revision
D41167: cam: Log errors from passthru commands
Parents
rG2d01ce7f853e: mk: Install bsd.compat.pre.mk
Branches
Unknown
Tags
Unknown