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.
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:
- Flashing IT firmware for LSI 9211-8i on FreeBSD
- Flashing an LSI 9211-8i from IR to IT firmware
- Flashing my m1015
- 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:
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:
- The Firmware Revision is 19.00.00.00 and matches what was displayed on the screen during boot.
- 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: 1285cNov 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.
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)
I only just noticed your comment.
That card is still here, and it works. I could put it up for sale.