kern/166621: "CAM status: Unconditionally Re-queue Request" not handled

Garrett Wollman wollman at
Tue Apr 3 21:00:06 UTC 2012

>Number:         166621
>Category:       kern
>Synopsis:       "CAM status: Unconditionally Re-queue Request" not handled
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Apr 03 21:00:05 UTC 2012
>Originator:     Garrett Wollman
>Release:        FreeBSD 9.0-RELEASE amd64
MIT Computer Science and Artificial Intelligence Laboratory
System: FreeBSD 9.0-RELEASE FreeBSD 9.0-RELEASE #3 r232145M: Sun Feb 26 20:00:10 EST 2012 wollman at amd64

Using backported version of LSI-supported mps driver from 9-STABLE.
This incorporates the following changes from FreeBSD 9-STABLE:
        230920, 231679, 231690, 231940


smartctl/smartd sometimes fail when talking to a busy SAS drive as a
result of a temporary error.  I'm not sure whether the retry should be
happening in the kernel or in the SMART library, hence I'm filing this
as a kernel bug.  

smartctl error report looks like this:

smartctl 5.42 2011-10-20 r3458 [FreeBSD 9.0-RELEASE amd64] (local build)
Copyright (C) 2002-11 by Bruce Allen,

Vendor:               SEAGATE 
Product:              ST32000444SS    
Revision:             0006
User Capacity:        2,000,398,934,016 bytes [2.00 TB]
Logical block size:   512 bytes
(pass8:mps0:0:21:0): MODE SENSE(6). CDB: 1a 0 1c 0 40 0 
(pass8:mps0:0:21:0): CAM status: Unconditionally Re-queue Request

Try to run "smartctl -a" or smartd on a really busy SAS drive
connected to a SAS port expander connected to a 16-port LSI eSAS HBA.
Sometimes it works, sometimes it fails.


Either the kernel should retry the request, or smartctl/smartd
should.  If the view of the SAS experts is that the application should
respond appropriately, I'll file a bug against smartmontools.

 >> Terminate command early due to bad response to IEC mode page
 A mandatory SMART command failed: exiting. To continue, add one or
 more '-T permissive' options.

More information about the freebsd-bugs mailing list