Other sesutil off by 1 for slot number

I'm trying to remotely light the locate LED for a drive in an HP MSA60 using sesutil, but sesutil is not reporting the drive in the correct slot.

The MSA60 is connected to an HP ProLiant DL360p Gen8 via an Avago Technologies (LSI) SAS2116 using the IT firmware, Version 20.00.00.00 (2014.09.18). It is fully populated with 12 drives. It appears that sesutil is reporting the wrong slot number for all drives and missing one drive entirely, but all drives are available to the OS and are in use.

Relevant dmesg for the drive in slot 1 :
Code:
svn-ng ~ # grep da8 /var/run/dmesg.boot
da8 at mps1 bus 0 scbus1 target 16 lun 0
da8: <ATA WDC WD1003FBYX-0 1V02> Fixed Direct Access SPC-4 SCSI device
da8: Serial Number WD-WMAW30279799
da8: 150.000MB/s transfers
da8: Command Queueing enabled
da8: 953869MB (1953525168 512 byte sectors)
ses0: pass8,da8 in Array Device Slot 2, SAS Slot: 2+ phys at slot 1

Note the output line from ses0 claims it is in both Slot 2 and slot 1 somehow?

sesutil output, which shows it in slot 2, and does not show all drives (Only shows 11 drives when there should be 12 total) :
Code:
svn-ng ~ # sesutil map
ses0:
    Enclosure Name: HP MSA60 2.18
    Enclosure ID: 5001438001570480
    Element 0, Type: Array Device Slot
        Status: Unsupported (0x00 0x00 0x00 0x00)
    Element 1, Type: Array Device Slot
        Status: OK (0x01 0x00 0x00 0x00)
    Element 2, Type: Array Device Slot
        Status: OK (0x01 0x00 0x00 0x00)
        Device Names: pass8,da8
    Element 3, Type: Array Device Slot
        Status: OK (0x01 0x00 0x00 0x00)
        Device Names: pass9,da9
    Element 4, Type: Array Device Slot
        Status: OK (0x01 0x00 0x00 0x00)
        Device Names: pass10,da10
    Element 5, Type: Array Device Slot
        Status: OK (0x01 0x00 0x00 0x00)
        Device Names: pass11,da11
    Element 6, Type: Array Device Slot
        Status: OK (0x01 0x00 0x00 0x00)
        Device Names: pass12,da12
    Element 7, Type: Array Device Slot
        Status: OK (0x01 0x00 0x00 0x00)
        Device Names: pass13,da13
    Element 8, Type: Array Device Slot
        Status: OK (0x01 0x00 0x00 0x00)
        Device Names: pass14,da14
    Element 9, Type: Array Device Slot
        Status: OK (0x01 0x00 0x00 0x00)
        Device Names: pass15,da15
    Element 10, Type: Array Device Slot
        Status: OK (0x01 0x00 0x00 0x00)
        Device Names: pass65,da61
    Element 11, Type: Array Device Slot
        Status: OK (0x01 0x00 0x00 0x00)
        Device Names: pass39,da37
    Element 12, Type: Array Device Slot
        Status: OK (0x01 0x00 0x00 0x00)
        Device Names: pass17,da17
    Element 13, Type: Power Supply
        Status: Unsupported (0x00 0x00 0x00 0x00)
    Element 14, Type: Power Supply
        Status: OK (0x11 0x00 0x00 0x20)
        Extra status:
        - Swapped
(rest of output truncated for brevity, I can post the full thing if needed)

getencstat shows the same thing:
Code:
svn-ng ~ # getencstat -v /dev/ses0
/dev/ses0: Enclosure Status <OK>
Element 0x0: Array Device Slot, status: Unsupported (0x00 0x00 0x00 0x00)
Element 0x1: Array Device Slot, status: OK (0x01 0x00 0x00 0x00)
Element 0x2: Array Device Slot, status: OK (0x01 0x00 0x00 0x00), dev: 'pass8,da8'
Element 0x3: Array Device Slot, status: OK (0x01 0x00 0x00 0x00), dev: 'pass9,da9'
Element 0x4: Array Device Slot, status: OK (0x01 0x00 0x00 0x00), dev: 'pass10,da10'
Element 0x5: Array Device Slot, status: OK (0x01 0x00 0x00 0x00), dev: 'pass11,da11'
Element 0x6: Array Device Slot, status: OK (0x01 0x00 0x00 0x00), dev: 'pass12,da12'
Element 0x7: Array Device Slot, status: OK (0x01 0x00 0x00 0x00), dev: 'pass13,da13'
Element 0x8: Array Device Slot, status: OK (0x01 0x00 0x00 0x00), dev: 'pass14,da14'
Element 0x9: Array Device Slot, status: OK (0x01 0x00 0x00 0x00), dev: 'pass15,da15'
Element 0xa: Array Device Slot, status: OK (0x01 0x00 0x00 0x00), dev: 'pass65,da61'
Element 0xb: Array Device Slot, status: OK (0x01 0x00 0x00 0x00), dev: 'pass39,da37'
Element 0xc: Array Device Slot, status: OK (0x01 0x00 0x00 0x00), dev: 'pass17,da17'
Element 0xd: Power Supply, status: Unsupported (0x00 0x00 0x00 0x00)
Element 0xe: Power Supply, status: OK, Swapped (0x11 0x00 0x00 0x20)
Element 0xf: Power Supply, status: OK, Swapped (0x11 0x00 0x00 0x20)
(rest of output truncated for brevity, I can post the full thing if needed)

sas2ircu gets it right, though :
Code:
svn-ng ~/bin # sas2ircu 1 display
LSI Corporation SAS2 IR Configuration Utility.
Version 20.00.00.00 (2014.09.18)
Copyright (c) 2008-2014 LSI Corporation. All rights reserved.

Read configuration has been initiated for controller 1
------------------------------------------------------------------------
Controller information
------------------------------------------------------------------------
  Controller type                         : SAS2116_1
  BIOS version                            : 7.39.02.00
  Firmware version                        : 20.00.07.00
  Channel description                     : 1 Serial Attached SCSI
  Initiator ID                            : 0
  Maximum physical devices                : 1023
  Concurrent commands supported           : 32455
  Slot                                    : 2
  Segment                                 : 0
  Bus                                     : 7
  Device                                  : 0
  Function                                : 0
  RAID Support                            : No
------------------------------------------------------------------------
IR Volume information
------------------------------------------------------------------------
------------------------------------------------------------------------
Physical device information
------------------------------------------------------------------------
Initiator at ID #0

Device is a Enclosure services device
  Enclosure #                             : 2
  Slot #                                  : 0
  SAS Address                             : 5001438-0-0157-04a5
  State                                   : Standby (SBY)
  Manufacturer                            : HP
  Model Number                            : MSA60
  Firmware Revision                       : 2.18
  Serial No                               :
  GUID                                    : N/A
  Protocol                                : SAS
  Device Type                             : Enclosure services device

Device is a Hard disk
  Enclosure #                             : 2
  Slot #                                  : 1
  SAS Address                             : 5001438-0-0157-0481
  State                                   : Ready (RDY)
  Size (in MB)/(in sectors)               : 953869/1953525167
  Manufacturer                            : ATA
  Model Number                            : WDC WD1003FBYX-0
  Firmware Revision                       : 1V02
  Serial No                               : WDWMAW30279799
  GUID                                    : N/A
  Protocol                                : SATA
  Drive Type                              : SATA_HDD
(rest of output truncated for brevity, I can post the full thing if needed)

System is running 12.1-RELEASE-p7. It has 3 MSA60s connected and a D2700 via the LSI SAS2116, and all exhibit this behavior.

I'm stumped. Thanks in advance for any insight/advice on this. Apologies if this is not the correct forum for this, it seemed like the best fit. Please move it with my thanks if there is a more appropriate forum for it.
 
There have been some fixes to sesutil(8) recently -- today/yesterday, to be precise. See <svn-src-stable-12@freebsd.org> e.g. in the mailman web-interface. Doing a quick glimpse over these posts, I did not find anything related to your issue, but it shows this utility is beeing reworked/overhauled. Consider to file in a bug report (see @top of the forum), or kindly (short & precise) ask on one of the FreeBSD mailing lists (not *-svn-*), which is read by more developers than this forum. You need to subscribe before you can post.
 
Back
Top