Flashing an LSI SAS 9201-16i

WARNING: This did not work. It succeeded, without error, but the card did not work. There will be a new blog post soon.

Yesterday, a new LSI SAS 9201-16i arrived. I bought it on eBay from a supplier in China and paid for expedited shipping. I offered US$250 for their $338 listing and it was accepted. Shipping was another $30. It arrived 6 days later.

LSI SAS 9201-16i
Rear view of the LSI SAS 9201-16i
LSI SAS 9201-16i
Rear view of the LSI SAS 9201-16i

Why do I need one? The system in question (hardware described here) has an LSI SAS 9211-8i. The drives are filling up. I need to add more, but all the slots are full. I’ll swap this new card in for the old card.

I have previously blogged about flashing firmware:

  1. Flashing IT firmware for LSI 9211-8i on FreeBSD
  2. Flashing an LSI 9211-8i from IR to IT firmware
  3. Flashing my m1015
  4. Upgrading firmware on an LSI-9211-8i

This time, I will use FreeBSD 11 and the new mpsutil utility. Well, that was the plan. I wound up using sas2flash.

First impressions

When I first booted the system with this SAS card, I saw this:

LSI SAS 9201-16i

The output in /var/log/dmesg showed:

mps0: <Avago Technologies (LSI) SAS2116> port 0xe000-0xe0ff mem 0xf7ec0000-0xf7ec3fff,0xf7e80000-0xf7ebffff irq 16 at device 0.0 on pci1
mps0: Firmware: 19.00.00.00, Driver: 20.00.00.00-fbsd
mps0: IOCCapabilities: 1285c<ScsiTaskFull,DiagTrace,SnapBuf,EEDP,TransRetry,EventReplay,HostDisc>

pciconf -lv showed this:

mps0@pci0:1:0:0:	class=0x010700 card=0x30c01000 chip=0x00641000 rev=0x02 hdr=0x00
    vendor     = 'LSI Logic / Symbios Logic'
    device     = 'SAS2116 PCI-Express Fusion-MPT SAS-2 [Meteor]'
    class      = mass storage
    subclass   = SAS

All good.

I know it’s in IT mode because I compare the output here with my previous blog posts. The important difference is I see HostDisc here, not IR, in the list of IOCCapabilities.

As it happens, having the card already in IT mode is a big deal. To go from IR to IT, you need to erase the firmware. You cannot flash IT over IR. I assume it is a safety feature.

While carrying out the tasks below, I rediscovered the above point in one of the blog posts listed above. That point turned out to make things easier for me.

mpsutil

Running mpsutil for the first time, I did this:

$ sudo mpsutil -u 0 show adapter
Password:
mps0 Adapter:
       Board Name: 
   Board Assembly: 
        Chip Name: LSISAS2116
    Chip Revision: 
    BIOS Revision: 7.37.00.00
Firmware Revision: 19.00.00.00
  Integrated RAID: no

PhyNum  CtlrHandle  DevHandle  Disabled  Speed   Min    Max    Device
0                              N                 1.5    6.0    SAS Initiator 
1                              N                 1.5    6.0    SAS Initiator 
2                              N                 1.5    6.0    SAS Initiator 
3                              N                 1.5    6.0    SAS Initiator 
4                              N                 1.5    6.0    SAS Initiator 
5                              N                 1.5    6.0    SAS Initiator 
6                              N                 1.5    6.0    SAS Initiator 
7                              N                 1.5    6.0    SAS Initiator 
8                              N                 1.5    6.0    SAS Initiator 
9                              N                 1.5    6.0    SAS Initiator 
10                             N                 1.5    6.0    SAS Initiator 
11                             N                 1.5    6.0    SAS Initiator 
12                             N                 1.5    6.0    SAS Initiator 
13                             N                 1.5    6.0    SAS Initiator 
14                             N                 1.5    6.0    SAS Initiator 
15                             N                 1.5    6.0    SAS Initiator

Two things here pleased me:

  1. The Firmware Revision is 19.00.00.00 and matches what was displayed on the screen during boot.
  2. There are spots for 16 devices, which means this is indeed what I needed.

Change of plans

Mark Felder was flashing his own LSI SAS card. He said mpsutil would not work. He encountered a product compatibility issue:

mpsutil: Invalid image:
mpsutil:   Expected Product ID: 2713
mpsutil:   Image Product ID: 2213

This may be related to Mark’s situation. He was burning from IR into IT on an LSI SAS 9211-8i (the same card I am replacing with this new card).

Because of that, I went with sas2flash and did not attempt mpsutil. I wish I had, just to see. Mark was flashing from IR to IT mode; I was not. I should have tried mpsutil.

Backup

I did use mpsutil to take backups of my existing firmware and BIOS:

mkdir -p ~/FLASHING/original
cd ~/FLASHING/original
mpsutil -u 0 flash save firmware firmware.19.00.00.00
mpsutil -u 0 flash save bios bios.7.37.00.00

Downloading the files

I downloaded these files from http://www.avagotech.com/products/storage/host-bus-adapters/sas-9201-16i:

  • 9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows.zip
  • Installer_P20_for_FreeBSD.zip
  • UEFI_BSD_P20.zip

That MSDOS/Windows file is not an error; the firmware for the card is contained in that zip file.

My directory structure

On the server containing the SAS card, I did this:

mv 9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows.zip Installer_P20_for_FreeBSD.zip UEFI_BSD_P20.zip ~/FLASHING/
unzip 9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows.zip
unzip Installer_P20_for_FreeBSD.zip
unzip UEFI_BSD_P20.zip

You should now see these files:

[dan@cuppy:~/FLASHING] $ find .
.
./original
./original/bios.7.37.00.00
./original/firmware.19.00.00.00
./Installer_P20_for_FreeBSD.zip
./UEFI_BSD_P20
./UEFI_BSD_P20/uefi_bsd_rel
./UEFI_BSD_P20/uefi_bsd_rel/ebcsas2.efi
./UEFI_BSD_P20/uefi_bsd_rel/x64sas2.efi
./UEFI_BSD_P20/uefi_bsd_rel/ebcsas2.rom
./UEFI_BSD_P20/uefi_bsd_rel/x64sas2.rom
./UEFI_BSD_P20/uefi_bsd_rel/Signed
./UEFI_BSD_P20/uefi_bsd_rel/Signed/x64sas2.rom
./UEFI_BSD_P20/uefi_bsd_rel/Signed/x64sas2.efi
./UEFI_BSD_P20/uefi_bsd_rel/readme_SAS2_UEFI_BSD_HII.txt
./UEFI_BSD_P20/uefi_bsd_rel/DriverSignInfo.txt
./UEFI_BSD_P20/UEFI_BSD_HII_SAS2_Phase20.0-7.27.01.01.pdf
./Installer_P20_for_FreeBSD
./Installer_P20_for_FreeBSD/sas2flash_freebsd_i386_rel
./Installer_P20_for_FreeBSD/sas2flash_freebsd_i386_rel/sas2flash
./Installer_P20_for_FreeBSD/sas2flash_freebsd_amd64_rel
./Installer_P20_for_FreeBSD/sas2flash_freebsd_amd64_rel/sas2flash
./Installer_P20_for_FreeBSD/README_Installer_P20_FreeBSD.txt
./Installer_P20_for_FreeBSD/SAS2Flash_ReferenceGuide.pdf
./Installer_P20_for_FreeBSD/SAS2FLASH_Phase20.0-20.00.00.00.pdf
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows.zip
./UEFI_BSD_P20.zip
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/SAS2BIOS_Phase20.0-7.39.02.00.pdf
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/Firmware
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/Firmware/HBA_9201_16i_IT
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/Firmware/HBA_9201_16i_IT/9201-16i_it.bin
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/SAS2FW_Phase20-20.00.07.00 Release Notes.pdf
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/sas2flash_win_x64_rel
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/sas2flash_win_x64_rel/sas2flash.exe
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/SAS2FLASH_Phase20.0-20.00.00.00.pdf
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/sas2flash_dos_rel
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/sas2flash_dos_rel/sas2flsh.exe
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/sas2flash_win_x86_rel
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/sas2flash_win_x86_rel/sas2flash.exe
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/README_9201_16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows.txt
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/SAS2Flash_ReferenceGuide.pdf
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/sasbios_rel
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/sasbios_rel/mptsas2.rom
./9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/sasbios_rel/mptbios.txt

The files of interest to me are:

  • UEFI_BSD_P20/uefi_bsd_rel/x64sas2.rom
  • Installer_P20_for_FreeBSD/sas2flash_freebsd_amd64_rel/sas2flash
  • 9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/Firmware/HBA_9201_16i_IT/9201-16i_it.bin

Burning new BIOS

Here is how I managed to upgrade the BIOS. Ironically, the card was already on the latest BIOS.

[dan@cuppy:~/FLASHING/UEFI_BSD_P20/uefi_bsd_rel] $ sudo mpsutil flash update bios x64sas2.rom
Updating bios...
bios successfully updated
$ sudo mpsutil show all
Adapter:
mps0 Adapter:
       Board Name: 
   Board Assembly: 
        Chip Name: LSISAS2116
    Chip Revision: 
    BIOS Revision: 7.37.00.00
Firmware Revision: 19.00.00.00
  Integrated RAID: no

PhyNum  CtlrHandle  DevHandle  Disabled  Speed   Min    Max    Device
0                              N                 1.5    6.0    SAS Initiator 
1                              N                 1.5    6.0    SAS Initiator 
2                              N                 1.5    6.0    SAS Initiator 
3                              N                 1.5    6.0    SAS Initiator 
4                              N                 1.5    6.0    SAS Initiator 
5                              N                 1.5    6.0    SAS Initiator 
6                              N                 1.5    6.0    SAS Initiator 
7                              N                 1.5    6.0    SAS Initiator 
8                              N                 1.5    6.0    SAS Initiator 
9                              N                 1.5    6.0    SAS Initiator 
10                             N                 1.5    6.0    SAS Initiator 
11                             N                 1.5    6.0    SAS Initiator 
12                             N                 1.5    6.0    SAS Initiator 
13                             N                 1.5    6.0    SAS Initiator 
14                             N                 1.5    6.0    SAS Initiator 
15                             N                 1.5    6.0    SAS Initiator 

Devices:
B____T    SAS Address      Handle  Parent    Device        Speed Enc  Slot  Wdt

Enclosures:
Slots      Logical ID     SEPHandle  EncHandle    Type
  16    500605b002c8ab81               0001     Direct Attached SGPIO

Expanders:
NumPhys   SAS Address     DevHandle   Parent  EncHandle  SAS Level

Notice the extra output (i.e. Devices and below) not present when I ran this command with the original firmware.

sudo ./Installer_P20_for_FreeBSD/sas2flash_freebsd_amd64_rel/sas2flash -o -f \
9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/Firmware/HBA_9201_16i_IT/9201-16i_it.bin

LSI Corporation SAS2 Flash Utility
Version 20.00.00.00 (2014.09.18) 
Copyright (c) 2008-2014 LSI Corporation. All rights reserved 

	Advanced Mode Set

	Adapter Selected is a LSI SAS: SAS2116_1(B1) 

	Executing Operation: Flash Firmware Image

		Firmware Image has a Valid Checksum. 
		Firmware Version 20.00.07.00
		Firmware Image compatible with Controller. 

		Valid NVDATA Image found. 
		NVDATA Version 14.01.00.00 
		Checking for a compatible NVData image... 

		NVDATA Device ID and Chip Revision match verified.
		NVDATA Versions Compatible.
		Valid Initialization Image verified.
		Valid BootLoader Image verified.

		Beginning Firmware Download...
		Firmware Download Successful.

		Verifying Download...

		Firmware Flash Successful.

		Resetting Adapter...
		Adapter Successfully Reset.

	Finished Processing Commands Successfully.
	Exiting SAS2Flash.
$ sudo ./Installer_P20_for_FreeBSD/sas2flash_freebsd_amd64_rel/sas2flash -list
LSI Corporation SAS2 Flash Utility
Version 20.00.00.00 (2014.09.18) 
Copyright (c) 2008-2014 LSI Corporation. All rights reserved 

	Adapter Selected is a LSI SAS: SAS2116_1(B1) 

	Controller Number              : 0
	Controller                     : SAS2116_1(B1) 
	PCI Address                    : 00:01:00:00
	SAS Address                    : 500605b-0-02c8-ab81
	NVDATA Version (Default)       : 14.01.00.06
	NVDATA Version (Persistent)    : 14.01.00.06
	Firmware Product ID            : 0x2213 (IT)
	Firmware Version               : 20.00.07.00
	NVDATA Vendor                  : LSI
	NVDATA Product ID              : SAS9201-16i
	BIOS Version                   : N/A
	UEFI BSD Version               : 07.27.01.01
	FCODE Version                  : N/A
	Board Name                     : SAS9201-16i
	Board Assembly                 : N/A
	Board Tracer Number            : N/A

	Finished Processing Commands Successfully.
	Exiting SAS2Flash.
[dan@cuppy:~/FLASHING] $ sudo mpsutil o mpsutil show all
Adapter:
mps0 Adapter:
       Board Name: 
   Board Assembly: 
        Chip Name: LSISAS2116
    Chip Revision: 
    BIOS Revision: 7.37.00.00
Firmware Revision: 20.00.07.00
  Integrated RAID: no

PhyNum  CtlrHandle  DevHandle  Disabled  Speed   Min    Max    Device
0                              N                 1.5    6.0    SAS Initiator 
1                              N                 1.5    6.0    SAS Initiator 
2                              N                 1.5    6.0    SAS Initiator 
3                              N                 1.5    6.0    SAS Initiator 
4                              N                 1.5    6.0    SAS Initiator 
5                              N                 1.5    6.0    SAS Initiator 
6                              N                 1.5    6.0    SAS Initiator 
7                              N                 1.5    6.0    SAS Initiator 
8                              N                 1.5    6.0    SAS Initiator 
9                              N                 1.5    6.0    SAS Initiator 
10                             N                 1.5    6.0    SAS Initiator 
11                             N                 1.5    6.0    SAS Initiator 
12                             N                 1.5    6.0    SAS Initiator 
13                             N                 1.5    6.0    SAS Initiator 
14                             N                 1.5    6.0    SAS Initiator 
15                             N                 1.5    6.0    SAS Initiator 

Devices:
B____T    SAS Address      Handle  Parent    Device        Speed Enc  Slot  Wdt

Enclosures:
Slots      Logical ID     SEPHandle  EncHandle    Type
  16    500605b002c8ab81               0001     Direct Attached SGPIO

Expanders:
NumPhys   SAS Address     DevHandle   Parent  EncHandle  SAS Level

[dan@cuppy:~/FLASHING] $ 

After the firmware was flashed, I found this in /var/log/messages:

Nov  2 19:07:09 cuppy kernel: mps0: Reinitializing controller,
Nov  2 19:07:21 cuppy kernel: mps0: Warning: io_cmds_active is out of sync - resynching to 0
Nov  2 19:07:21 cuppy last message repeated 1022 times
Nov  2 19:07:21 cuppy kernel: mps0: Firmware: 20.00.07.00, Driver: 21.01.00.00-fbsd
Nov  2 19:07:21 cuppy kernel: mps0: IOCCapabilities: 1285c
Nov  2 19:07:21 cuppy kernel: vmem_alloc with the following non-sleepable locks held:
Nov  2 19:07:21 cuppy kernel: exclusive sleep mutex MPT2SAS lock (MPT2SAS lock) r = 0 (0xfffffe0000ecd1c8) locked @ /usr/src/sys/dev/mps/mpsvar.h:582
Nov  2 19:07:21 cuppy kernel: stack backtrace:
Nov  2 19:07:21 cuppy kernel: #0 0xffffffff80abe670 at witness_debugger+0x70
Nov  2 19:07:21 cuppy kernel: #1 0xffffffff80abf957 at witness_warn+0x3d7
Nov  2 19:07:21 cuppy kernel: #2 0xffffffff80ab9d3b at vmem_alloc+0x7b
Nov  2 19:07:21 cuppy kernel: #3 0xffffffff80d4c7d3 at kmem_malloc+0x33
Nov  2 19:07:21 cuppy kernel: #4 0xffffffff80d451a6 at uma_large_malloc+0x46
Nov  2 19:07:21 cuppy kernel: #5 0xffffffff80a3ae63 at malloc+0xe3
Nov  2 19:07:21 cuppy kernel: #6 0xffffffff806693da at mpssas_realloc_targets+0x8a
Nov  2 19:07:21 cuppy kernel: #7 0xffffffff8065ba1d at mps_iocfacts_allocate+0x43d
Nov  2 19:07:21 cuppy kernel: #8 0xffffffff8065aeb5 at mps_reinit+0x145
Nov  2 19:07:21 cuppy kernel: #9 0xffffffff80670252 at mps_ioctl+0x822
Nov  2 19:07:21 cuppy kernel: #10 0xffffffff80933813 at devfs_ioctl+0xc3
Nov  2 19:07:21 cuppy kernel: #11 0xffffffff8103f130 at VOP_IOCTL_APV+0xe0
Nov  2 19:07:21 cuppy kernel: #12 0xffffffff80b31fdc at vn_ioctl+0x10c
Nov  2 19:07:21 cuppy kernel: #13 0xffffffff80933f2f at devfs_ioctl_f+0x1f
Nov  2 19:07:21 cuppy kernel: #14 0xffffffff80ac3db6 at kern_ioctl+0x246
Nov  2 19:07:21 cuppy kernel: #15 0xffffffff80ac3b01 at sys_ioctl+0x171
Nov  2 19:07:21 cuppy kernel: #16 0xffffffff80ed8d44 at amd64_syscall+0x314
Nov  2 19:07:21 cuppy kernel: #17 0xffffffff80eb8d4b at Xfast_syscall+0xfb
Nov  2 19:07:21 cuppy kernel: vmem_xalloc with the following non-sleepable locks held:
Nov  2 19:07:21 cuppy kernel: exclusive sleep mutex MPT2SAS lock (MPT2SAS lock) r = 0 (0xfffffe0000ecd1c8) locked @ /usr/src/sys/dev/mps/mpsvar.h:582
Nov  2 19:07:21 cuppy kernel: stack backtrace:
Nov  2 19:07:21 cuppy kernel: #0 0xffffffff80abe670 at witness_debugger+0x70
Nov  2 19:07:21 cuppy kernel: #1 0xffffffff80abf957 at witness_warn+0x3d7
Nov  2 19:07:21 cuppy kernel: #2 0xffffffff80ab9ec7 at vmem_xalloc+0xe7
Nov  2 19:07:21 cuppy kernel: #3 0xffffffff80ab9d72 at vmem_alloc+0xb2
Nov  2 19:07:21 cuppy kernel: #4 0xffffffff80d4c7d3 at kmem_malloc+0x33
Nov  2 19:07:21 cuppy kernel: #5 0xffffffff80d451a6 at uma_large_malloc+0x46
Nov  2 19:07:21 cuppy kernel: #6 0xffffffff80a3ae63 at malloc+0xe3
Nov  2 19:07:21 cuppy kernel: #7 0xffffffff806693da at mpssas_realloc_targets+0x8a
Nov  2 19:07:21 cuppy kernel: #8 0xffffffff8065ba1d at mps_iocfacts_allocate+0x43d
Nov  2 19:07:21 cuppy kernel: #9 0xffffffff8065aeb5 at mps_reinit+0x145
Nov  2 19:07:21 cuppy kernel: #10 0xffffffff80670252 at mps_ioctl+0x822
Nov  2 19:07:21 cuppy kernel: #11 0xffffffff80933813 at devfs_ioctl+0xc3
Nov  2 19:07:21 cuppy kernel: #12 0xffffffff8103f130 at VOP_IOCTL_APV+0xe0
Nov  2 19:07:21 cuppy kernel: #13 0xffffffff80b31fdc at vn_ioctl+0x10c
Nov  2 19:07:21 cuppy kernel: #14 0xffffffff80933f2f at devfs_ioctl_f+0x1f
Nov  2 19:07:21 cuppy kernel: #15 0xffffffff80ac3db6 at kern_ioctl+0x246
Nov  2 19:07:21 cuppy kernel: #16 0xffffffff80ac3b01 at sys_ioctl+0x171
Nov  2 19:07:21 cuppy kernel: #17 0xffffffff80ed8d44 at amd64_syscall+0x314
Nov  2 19:07:21 cuppy kernel: uma_zalloc_arg: zone "65536" with the following non-sleepable locks held:
Nov  2 19:07:21 cuppy kernel: exclusive sleep mutex MPT2SAS lock (MPT2SAS lock) r = 0 (0xfffffe0000ecd1c8) locked @ /usr/src/sys/dev/mps/mpsvar.h:582
Nov  2 19:07:21 cuppy kernel: stack backtrace:
Nov  2 19:07:21 cuppy kernel: #0 0xffffffff80abe670 at witness_debugger+0x70
Nov  2 19:07:21 cuppy kernel: #1 0xffffffff80abf957 at witness_warn+0x3d7
Nov  2 19:07:21 cuppy kernel: #2 0xffffffff80d42f5b at uma_zalloc_arg+0x3b
Nov  2 19:07:21 cuppy kernel: #3 0xffffffff80a3af31 at malloc+0x1b1
Nov  2 19:07:21 cuppy kernel: #4 0xffffffff8065bf89 at mps_iocfacts_allocate+0x9a9
Nov  2 19:07:21 cuppy kernel: #5 0xffffffff8065aeb5 at mps_reinit+0x145
Nov  2 19:07:21 cuppy kernel: #6 0xffffffff80670252 at mps_ioctl+0x822
Nov  2 19:07:21 cuppy kernel: #7 0xffffffff80933813 at devfs_ioctl+0xc3
Nov  2 19:07:21 cuppy kernel: #8 0xffffffff8103f130 at VOP_IOCTL_APV+0xe0
Nov  2 19:07:21 cuppy kernel: #9 0xffffffff80b31fdc at vn_ioctl+0x10c
Nov  2 19:07:21 cuppy kernel: #10 0xffffffff80933f2f at devfs_ioctl_f+0x1f
Nov  2 19:07:21 cuppy kernel: #11 0xffffffff80ac3db6 at kern_ioctl+0x246
Nov  2 19:07:21 cuppy kernel: #12 0xffffffff80ac3b01 at sys_ioctl+0x171
Nov  2 19:07:21 cuppy kernel: #13 0xffffffff80ed8d44 at amd64_syscall+0x314
Nov  2 19:07:21 cuppy kernel: #14 0xffffffff80eb8d4b at Xfast_syscall+0xfb
Nov  2 19:07:21 cuppy kernel: vmem_alloc with the following non-sleepable locks held:
Nov  2 19:07:21 cuppy kernel: exclusive sleep mutex MPT2SAS lock (MPT2SAS lock) r = 0 (0xfffffe0000ecd1c8) locked @ /usr/src/sys/dev/mps/mpsvar.h:582
Nov  2 19:07:21 cuppy kernel: stack backtrace:
Nov  2 19:07:21 cuppy kernel: #0 0xffffffff80abe670 at witness_debugger+0x70
Nov  2 19:07:21 cuppy kernel: #1 0xffffffff80abf957 at witness_warn+0x3d7
Nov  2 19:07:21 cuppy kernel: #2 0xffffffff80ab9d3b at vmem_alloc+0x7b
Nov  2 19:07:21 cuppy kernel: #3 0xffffffff80d4c7d3 at kmem_malloc+0x33
Nov  2 19:07:21 cuppy kernel: #4 0xffffffff80d451a6 at uma_large_malloc+0x46
Nov  2 19:07:21 cuppy kernel: #5 0xffffffff80a3ae63 at malloc+0xe3
Nov  2 19:07:21 cuppy kernel: #6 0xffffffff8065c146 at mps_iocfacts_allocate+0xb66
Nov  2 19:07:21 cuppy kernel: #7 0xffffffff8065aeb5 at mps_reinit+0x145
Nov  2 19:07:21 cuppy kernel: #8 0xffffffff80670252 at mps_ioctl+0x822
Nov  2 19:07:21 cuppy kernel: #9 0xffffffff80933813 at devfs_ioctl+0xc3
Nov  2 19:07:21 cuppy kernel: #10 0xffffffff8103f130 at VOP_IOCTL_APV+0xe0
Nov  2 19:07:21 cuppy kernel: #11 0xffffffff80b31fdc at vn_ioctl+0x10c
Nov  2 19:07:21 cuppy kernel: #12 0xffffffff80933f2f at devfs_ioctl_f+0x1f
Nov  2 19:07:21 cuppy kernel: #13 0xffffffff80ac3db6 at kern_ioctl+0x246
Nov  2 19:07:21 cuppy kernel: #14 0xffffffff80ac3b01 at sys_ioctl+0x171
Nov  2 19:07:21 cuppy kernel: #15 0xffffffff80ed8d44 at amd64_syscall+0x314
Nov  2 19:07:21 cuppy kernel: #16 0xffffffff80eb8d4b at Xfast_syscall+0xfb
Nov  2 19:07:21 cuppy kernel: vmem_xalloc with the following non-sleepable locks held:
Nov  2 19:07:21 cuppy kernel: exclusive sleep mutex MPT2SAS lock (MPT2SAS lock) r = 0 (0xfffffe0000ecd1c8) locked @ /usr/src/sys/dev/mps/mpsvar.h:582
Nov  2 19:07:21 cuppy kernel: stack backtrace:
Nov  2 19:07:21 cuppy kernel: #0 0xffffffff80abe670 at witness_debugger+0x70
Nov  2 19:07:21 cuppy kernel: #1 0xffffffff80abf957 at witness_warn+0x3d7
Nov  2 19:07:21 cuppy kernel: #2 0xffffffff80ab9ec7 at vmem_xalloc+0xe7
Nov  2 19:07:21 cuppy kernel: #3 0xffffffff80ab9d72 at vmem_alloc+0xb2
Nov  2 19:07:21 cuppy kernel: #4 0xffffffff80d4c7d3 at kmem_malloc+0x33
Nov  2 19:07:21 cuppy kernel: #5 0xffffffff80d451a6 at uma_large_malloc+0x46
Nov  2 19:07:21 cuppy kernel: #6 0xffffffff80a3ae63 at malloc+0xe3
Nov  2 19:07:21 cuppy kernel: #7 0xffffffff8065c146 at mps_iocfacts_allocate+0xb66
Nov  2 19:07:21 cuppy kernel: #8 0xffffffff8065aeb5 at mps_reinit+0x145
Nov  2 19:07:21 cuppy kernel: #9 0xffffffff80670252 at mps_ioctl+0x822
Nov  2 19:07:21 cuppy kernel: #10 0xffffffff80933813 at devfs_ioctl+0xc3
Nov  2 19:07:21 cuppy kernel: #11 0xffffffff8103f130 at VOP_IOCTL_APV+0xe0
Nov  2 19:07:21 cuppy kernel: #12 0xffffffff80b31fdc at vn_ioctl+0x10c
Nov  2 19:07:21 cuppy kernel: #13 0xffffffff80933f2f at devfs_ioctl_f+0x1f
Nov  2 19:07:21 cuppy kernel: #14 0xffffffff80ac3db6 at kern_ioctl+0x246
Nov  2 19:07:21 cuppy kernel: #15 0xffffffff80ac3b01 at sys_ioctl+0x171
Nov  2 19:07:21 cuppy kernel: #16 0xffffffff80ed8d44 at amd64_syscall+0x314
Nov  2 19:07:21 cuppy kernel: #17 0xffffffff80eb8d4b at Xfast_syscall+0xfb
Nov  2 19:07:21 cuppy kernel: mps0: mps_reinit finished sc 0xfffffe0000ecd000 post 4 free 3

Just for fun

Then, after all that, I tried this:

$ sudo mpsutil flash update firmware \
9201-16i_Package_P20_IT_FW_BIOS_for_MSDOS_Windows/Firmware/HBA_9201_16i_IT/9201-16/9201-16i_it.bin
Password:
Updating firmware...
firmware successfully updated

I wonder if that would have worked the first time.

I will report back after I have this card in use.

Website Pin Facebook Twitter Myspace Friendfeed Technorati del.icio.us Digg Google StumbleUpon Premium Responsive

2 thoughts on “Flashing an LSI SAS 9201-16i”

  1. Hi Dan,

    I see in your followup that you managed to flash it successfully, but one thing to be aware of when buying cheap HBAs/network cards from China – some are fake. See, eg. this thread on ServeTheHome. For this reason I tend to prefer used system pulls when buying cards like IBM M1015s/M5015s, Dell H200s and Intel i350-based network cards. Those are very often clones with questionable hardware quality.

    Cheers, MJ (avid TechSnap listener)

Leave a Comment

Scroll to Top