
Today I was upgrading Dell PERC 6/i Integrated controller firmware on, rather old to put it mildly, PowerEdge 2950 server running Centos 7. Sadly update was failing with following message when I tried firing dup (dell update package for Red Hat Linux SAS-RAID_Firmware_3P52K_LN_6.3.3-0002_X00.BIN):
Oct 26 13:51:15 mielnet-web-dev03 kernel: sasdupie[11976]: segfault at 20 ip 00007fe7b2f3000d sp 00007ffe7d58bb00 error 4 in sasdupie[7fe7b2f0b000+110000]
What is going on? What’s causing segfault? After fiddling and googling I end up doing this:
chmod +x /tmp/SAS-RAID_Firmware_3P52K_LN_6.3.3-0002_X00.BIN /tmp/SAS-RAID_Firmware_3P52K_LN_6.3.3-0002_X00.BIN --extract /tmp/dup_extract_dir cd /tmp/dup_extract_dir ./sasdupie -i -o inv.xml -debug
and after examining /tmp/dup_extract_dir/debug.log it turned out that sasdupie is segfaulting when trying to use libstorelibir.so.5 – so I figured version on system might be just too new. Lets try using a bit older version of this static object located under /opt/dell/srvadmin/lib64/ – it’s part of srvadmin-storelib RPM package by the way, RPM that can be installed from Dell repo.
cd /opt/dell/srvadmin/lib64 rm libstorelibir.so.5 ln -s libstorelibir-3.so libstorelibir.so.5
Keeping my fingers crossed and touching wood I typed using my nose:
/tmp/SAS-RAID_Firmware_3P52K_LN_6.3.3-0002_X00.BIN Running validation... PERC 6/i Integrated Controller 0 The version of this Update Package is newer than the currently installed version. Software application name: PERC 6/i Integrated Controller 0 Firmware Package version: 6.3.3-0002 Installed version: 6.0.2-0002 ................................................ Device: PERC 6/i Integrated Controller 0 Application: PERC 6/i Integrated Controller 0 Firmware The operation was successful.
Nice. No segfaults. Shout-out to Luiz Angelo Daros de Luca.
Thanks! it works for me!
You are my hero.
Haha, no worries, glad it helped.
nice!
sudo ln -fs libstorelibir-3.so libstorelibir.so.5followed by
sudo ln -fs libstorelibir.so.5.07-0 libstorelibir.so.5to return things to sanity after you’ve finished the update.
Fixed my R310 and openmanage stopped complaining about “firmware version is out of date”
Thanks!!!! This tip allowed me to install a required BIOS firmware update on an ancient R410 running recently upgraded to a distro derived from RHEL7. I was getting an “Inventory collection failed.” message and found this thread from:
https://www.dell.com/community/PowerEdge-HDD-SCSI-RAID/Dell-PERC-6-i-Integrated-Firmware-Update-fails-with-inventory/td-p/4605951
I would like to point out that in my case there seemed to be two links pointing at the .5 library so I did:
[root@xxxx lib64]# mv libstorelibir.so libstorelibir.so.save
[root@xxxx lib64]# mv libstorelibir.so.5 libstorelibir.so.5.save
[root@xxxx lib64]# ln -s libstorelibir-3.so.16.04-0 libstorelibir.so
[root@xxxx lib64]# ln -s libstorelibir-3.so.16.04-0 libstorelibir.so.5
The firmware installed fine after that. I did restore the original links before rebooting to put the firmware in place.