[Bug 212211] mrsas (4) does not allow smartctl to access S.M.A.R.T data from physical drive hidden under /dev/daX

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sun Aug 28 10:56:56 UTC 2016


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=212211

            Bug ID: 212211
           Summary: mrsas (4) does not allow smartctl to access S.M.A.R.T
                    data from physical drive hidden under /dev/daX
           Product: Base System
           Version: 10.3-STABLE
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: kern
          Assignee: freebsd-bugs at FreeBSD.org
          Reporter: stesin at gmail.com
                CC: freebsd-amd64 at FreeBSD.org
                CC: freebsd-amd64 at FreeBSD.org

Given FreeBSD 10.3 system with LSI MegaRAID 9271-8i SATA/SAS RAID controller.

Recommended (and supported) driver for this newer controller is mrsas (4).
mrsas (4) provides OS with virtual drives /dev/daXX - although I found that
/dev/passX devices are also created for whatever purpose (/dev/daN has
corresponding /dev/passN) in case it matters.

Each /dev/daXX hides some (1 or more) physical SAS/SATA drives hidden under it.
Using MegaCLI utility, you can list PDs which of these are located by:

- either with a pair of values [EnclosureID:SlotID],
- or with the "device ID" which LSI MegaRAID somehow assigns to them.

I have fresh actual smartmontools installed:

smartctl 6.5 2016-05-07 r4318 [FreeBSD 10.3-STABLE amd64] (local build)

I want to get S.M.A.R.T. status of any physical drive attached to MegaRAID,
i.e. of an SSD which MegaRAID assigned device ID is 12, and it is hidden under
/dev/da0 virtual drive. But what I actually get:

[root at chort /]# smartctl -a /dev/da0
smartctl 6.5 2016-05-07 r4318 [FreeBSD 10.3-STABLE amd64] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org
START OF INFORMATION SECTION
============================
Vendor: LSI
Product: MR9271-8i
Revision: 3.46
User Capacity: 199,481,098,240 bytes [199 GB]
Logical block size: 512 bytes
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.
[root at chort /]# 

Ok, I understand: /dev/da0 is not a physical drive, maybe it's a striped array
of 2 drives, smartctl gets confused, this is expected behavior.

Looking deeper, I discovered, that Linux version of smartctl is aware of this
situation, it allows the following syntax, where "-d megaraid,12" should tell
that we are dealing with LSI MegaRAID and we actually want to question the disk
with "device ID" 12. Tried with Ubuntu live CD, it actually works well.

But on FreeBSD this mode is not supported:

[root at chort /]# smartctl -a -d megaraid,12 /dev/da0
smartctl 6.5 2016-05-07 r4318 [FreeBSD 10.3-STABLE amd64] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org
/dev/da0: Unknown device type 'megaraid,12'
=======> VALID ARGUMENTS ARE: ata, scsi, nvme[,NSID], sat[,auto][,N][+TYPE],
usbcypress[,X], usbjmicron[,p][,x][,N], usbprolific, usbsunplus, 3ware,N,
hpt,L/M/N, cciss,N, areca,N/E, atacam, auto, test <=======
Use smartctl -h to get a usage summary
[root at chort /]#

I already opened the ticket at https://www.smartmontools.org/ticket/734 but I
think that a clarification is needed here: does mrsas (4) support this kind of
queries at all, as of today?

Do we need some modifications to mrsas (4) in order to support the syntax like:

smartctl -a -d megaraid,12

or even better,

smartctl -a -d 'megaraid,[9:11'

or both? Or this is completely on the side of smartmontools? Thanks in advance!

WBR,
Andrii Stesin

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list