Firmware Updates to LSI HBA?

Status
Not open for further replies.

jamiejunk

Contributor
Joined
Jan 13, 2013
Messages
134
Got some new LSI HBA cards for some new setups I'm doing. In my older servers I'm not sure what version of the IT firmware they are running. Seems like the suggested version of the firmware is version 16. So I want to kill all the birds with the same stone.

So my first question is, can I swap out an HBA with a different HBA and not lose or effect my pools? My thought is I'll update the firmware on the new cards, then just replace the cards in the existing servers. Seems like i'd have less downtime doing that. Then take the existing cards, flash them offline in another server and put them into the new servers i'm building.

Second question is how are you guys flashing these cards? Are you using the USB.ISO thing and booting into freedos or whatever and flashing the cards? Or sticking them in a windows machine and flashing the cards?

Thanks!
 

mjws00

Guru
Joined
Jul 25, 2014
Messages
798
The consensus I've seen is flash from a DOS based USB stick. That's how I do it. I used a different box with a gigabyte mobo, as my server threw errors when trying to crossflash. This is common on the supermicro boards as well. So don't be afraid to use other hardware, it actually could be the problem and not a user error.

I like cyberjocks's advice to match firmware version to driver version. So you might as well use ver 16. IT drivers are pretty bare and stable so I doubt much changes in them version to version. Not worth risking a reflash to match versions unless you see a problem, imho. But I HATE firmware update risk. YMMV.

Freenas will happily switch HBA's. Your pool is based on GPT id's so you can move controllers and devices all you like. The intent is that it is hardware agnostic and allows for flexibilty. I'd pucker a little as anything can happen on a rainy day. But worst case should be swapping old hardware back, especially as you are changing to a known good configuration, not some oddball driver.

That's my two bits. I'd do the first one on hardware with a throw away pool if you can. But I'm a paranoid SOB.

Mike
 

Bigtexun

Dabbler
Joined
Jul 17, 2014
Messages
33
Using the latest firmware is not always best. Problems that briefly affected some of the Asrock motherboards were caused by conflicts in the latest version of controller firmware interacting with the latest microcode for the motherboard chipset. And the "correct" version of code that is best for your application often depends more on the OS's drivers than any known firmware bugs.

So if you have something that is known to be stable and working, DO NOT change the firmware, unless you are wanting to test the new firmware, or if you are solving a problem. If you are wanting system stability, and the system is stable now, you are /done/. The same is generally true for any motherboard microcode or firmware. The one place on a motherboard you *may* want to track current code would be the IPMI system if you have it hooked up to your network, and there are security/stability flaws you want to fix there. If you don't use IPMI, then don't mess with that either.

For system stability, if it ain't broken, don't fix it... At least with regard to firmware and drivers. Obviously on software layers closer to the users, or to layers requiring security updates, that advice has less meaning. But you should always assume that any software change is going to reduce stability. That means having a good backup, and have a roll-back plan, before you try any new code. Plan for the worst, and hope for the best.

When I got my newest motherboard, I asked the support guy if I needed a firmware update, and he confirmed that I had the correct mix of code revisions for FreeNAS, and that I should never apply any updates to the on-board firmware versions just because they are available.
 

cyberjock

Inactive Account
Joined
Mar 25, 2012
Messages
19,526
Sorry Bigtexun, you are incorrect. FreeNAS' driver version and firmware MUST match. Doing anything else is dangerous and can affect stability. I've seen 3 or 4 cases in the last week where this is so.

FreeNAS 9.2.1.x runs P16 drivers, so that's the ONLY firmware you should be running on your LSI card.

If FreeNAS 9.3 runs P18 drivers, then you NEED to upgrade to P18. The release notes always say what driver is being used because it is imperative that you upgrade your firmware to match. Failure to do so can result in bad consequences.
 

Z300M

Guru
Joined
Sep 9, 2011
Messages
882
Sorry Bigtexun, you are incorrect. FreeNAS' driver version and firmware MUST match. Doing anything else is dangerous and can affect stability. I've seen 3 or 4 cases in the last week where this is so.

FreeNAS 9.2.1.x runs P16 drivers, so that's the ONLY firmware you should be running on your LSI card.

If FreeNAS 9.3 runs P18 drivers, then you NEED to upgrade to P18. The release notes always say what driver is being used because it is imperative that you upgrade your firmware to match. Failure to do so can result in bad consequences.
OK, cj, so -- thinking ahead -- if 9.3 has the P18 drivers, I should update the LSI firmware to P18 before letting the system access the drives once I have updated to FreeNAS 9.3?
 

cyberjock

Inactive Account
Joined
Mar 25, 2012
Messages
19,526
OK, cj, so -- thinking ahead -- if 9.3 has the P18 drivers, I should update the LSI firmware to P18 before letting the system access the drives once I have updated to FreeNAS 9.3?

That is the most ideal situation, yes.
 

jamiejunk

Contributor
Joined
Jan 13, 2013
Messages
134
Got some new cards today. Unfortunately most of them I was only able to roll back to version 17 of the driver. Wonderful.
 

Ericloewe

Server Wrangler
Moderator
Joined
Feb 15, 2014
Messages
20,194
Got some new cards today. Unfortunately most of them I was only able to roll back to version 17 of the driver. Wonderful.
How come? The old versions are typically archived. Have you tried LSI's website?
 

jamiejunk

Contributor
Joined
Jan 13, 2013
Messages
134
I was able to get the 16 firmware no problem, but on certain cards it would error out. Couldn't downgrade the NVDATA. Whatever the hell that means.

f7DL0xX.png
 

aufalien

Patron
Joined
Jul 25, 2013
Messages
374
You must force it. I've done it many times, something like -force or some such.
 

BigDave

FreeNAS Enthusiast
Joined
Oct 6, 2013
Messages
2,479
Not sure this will help, but I'll tell you that I made a mistake and flashed my new M1015
card with the P19 firmware:oops:
When I realized my mistake I just tried to flash the P16 firmware, FAIL!
I found you must use megarec tool to "wipe" the firmware FIRST, then flash with
the older version. My driver and firmware version now matches (both 16).
Hope this helps...
 

aufalien

Patron
Joined
Jul 25, 2013
Messages
374
Not sure this will help, but I'll tell you that I made a mistake and flashed my new M1015
card with the P19 firmware:oops:
When I realized my mistake I just tried to flash the P16 firmware, FAIL!
I found you must use megarec tool to "wipe" the firmware FIRST, then flash with
the older version. My driver and firmware version now matches (both 16).
Hope this helps...

Not really, adding -force to his flash command works. No additional tool needed here.
 

SirMaster

Patron
Joined
Mar 19, 2014
Messages
241
You are supposed to erase the flash first on the LSI controllers before flashing the new version. Then you can go up and down versions however you want.

No need for a separate tool. LSI's own firmware tool can do all this.

To erase:
Code:
sas2flash -o -e 6


To flash the new firmware:
Code:
sas2flash -o -f whatever.bin


Optionally flash the SAS BIOS too (not needed for IT mode):
Code:
sas2flash -o -b mptsas2.rom
 

cyberjock

Inactive Account
Joined
Mar 25, 2012
Messages
19,526
I will tell you that in the last 2 weeks I've run into at least 4 cases where matching LSI drivers and firmware is a big deal. A year ago we hadn't had problems, but it seems that is no longer the case. Thankfully 9.3 will now tell you if your firmware doesn't match. That's a big win for us LSI users!
 

aufalien

Patron
Joined
Jul 25, 2013
Messages
374
I will tell you that in the last 2 weeks I've run into at least 4 cases where matching LSI drivers and firmware is a big deal. A year ago we hadn't had problems, but it seems that is no longer the case. Thankfully 9.3 will now tell you if your firmware doesn't match. That's a big win for us LSI users!

Oh that's huge. Nice feature.
 

TXAG26

Patron
Joined
Sep 20, 2013
Messages
310
I will tell you that in the last 2 weeks I've run into at least 4 cases where matching LSI drivers and firmware is a big deal. A year ago we hadn't had problems, but it seems that is no longer the case. Thankfully 9.3 will now tell you if your firmware doesn't match. That's a big win for us LSI users!

Do you know if 9.3 will include multiple versions of the LSI driver? E.g. a version for FW16, and FW18 or 19 (whatever the latest is when it is released)? It seems like having it pick the driver version based upon the hardware firmware might reduce the heartburn with upgrading and reducing the chance of something going south.
 

SirMaster

Patron
Joined
Mar 19, 2014
Messages
241
If you really wanted to I don't see why you couldn't just install the P19 driver on any version of FreeNAS. It supports FreeBSD 7.2-10.0
 

cyberjock

Inactive Account
Joined
Mar 25, 2012
Messages
19,526
There is no way to include multiple driver versions with any version of FreeBSD without serious recoding of the driver. The first driver that loads is going to steal the hardware's resources and what do you think is going to happen if you tried to load a second driver to that hardware? Very. Bad. Things.

There's other technical reasons why you can't load 2 drivers. For example, FreeBSD seems to be smart enough to know better and won't let you do it. Not exactly sure what the mechanism is, but when I experimented with Areca drivers for my Areca controller you couldn't load 2 at the same time. ;)
 

TXAG26

Patron
Joined
Sep 20, 2013
Messages
310
There is no way to include multiple driver versions with any version of FreeBSD without serious recoding of the driver. The first driver that loads is going to steal the hardware's resources and what do you think is going to happen if you tried to load a second driver to that hardware? Very. Bad. Things.

There's other technical reasons why you can't load 2 drivers. For example, FreeBSD seems to be smart enough to know better and won't let you do it. Not exactly sure what the mechanism is, but when I experimented with Areca drivers for my Areca controller you couldn't load 2 at the same time. ;)

I wasn't talking about loading two hot drivers at the same time. What I meant was, having multiple driver versions available, and based upon the LSI hardware fw, FreeNAS loads/uses the appropriately matched driver. E.g. if your LSI controller is running FW19, FreeNAS will use the FW19 matched driver.

I guess I'm thinking as to how Windows handles drivers and the ability to roll-back to previous driver versions if need be.
 
Status
Not open for further replies.
Top