mfip and smartctl Re: smartctl / mpt on 9.0-RC1

Andrew Boyer aboyer at averesystems.com
Mon Nov 7 14:03:36 UTC 2011


On Nov 7, 2011, at 6:24 AM, Marat N.Afanasyev wrote:
> 
> this is an output on mfi controller with mfip loaded:
> 
> # smartctl -a /dev/pass1
> smartctl 5.41 2011-06-09 r3365 [FreeBSD 8.2-RELEASE amd64] (local build)
> Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net
> 
> Vendor:               SEAGATE
> Product:              ST3146356SS
> Revision:             0007
> User Capacity:        146,815,737,856 bytes [146 GB]
> Logical block size:   512 bytes
> Logical Unit id:      0x5000c50028f8a56f
> Serial number:        3QN4PWHS00009130JLKB
> Device type:          <31>
> Transport protocol:   SAS
> Local Time is:        Mon Nov  7 15:20:27 2011 MSK
> Device supports SMART and is Enabled
> Temperature Warning Enabled
> SMART Health Status: OK
> 
> Current Drive Temperature:     26 C
> Drive Trip Temperature:        68 C
> 
> Error counter log:
>           Errors Corrected by           Total   Correction Gigabytes    Total
>               ECC          rereads/    errors   algorithm processed    uncorrected
>           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors
> read:    9382124        0         0   9382124    9382124       3436.782           0
> write:         0        0         0         0          0       8978.360           0
> verify:   663433        0         0    663433     663433        332.651           0
> 
> Non-medium error count:        7
> 
> [GLTSD (Global Logging Target Save Disable) set. Enable Save with '-S on']
> No self-tests have been logged
> Long (extended) Self Test duration: 1740 seconds [29.0 minutes]
> 
> btw, 3dm can tell about reallocated sector count on sas somehow, while smartctl cannot, even on supported controller :(

Notice how the device type is "<31>"?  The mfip driver masks off the SCSI INQUIRY peripheral device type bits to prevent CAM from attached da* devices to the disks.  See sys/dev/mfi/mfi_cam.c, search for T_DIRECT.  That confuses smartctl and prevents it from displaying information like the Grown Defect List.

I added a local hack to smartctl to interpret a peripheral device type of 0x1f (unknown or missing) to 0x0 (disk), but I don't think the hack is appropriate for general consumption.  What we need is better way for mfi and aac to block CAM from attaching without corrupting the inquiry results.

-Andrew

> -- 
> SY, Marat
> 

--------------------------------------------------
Andrew Boyer	aboyer at averesystems.com






More information about the freebsd-stable mailing list