[ 62.816884] qla2xxx [0000:21:00.0]-0063:3: Failed to load firmware image (ql2400_fw.bin). [ 62.816889] qla2xxx [0000:21:00.0]-0090:3: Fimware image unavailable. [ 62.816891] qla2xxx [0000:21:00.0]-0091:3: Firmware images can be retrieved from: ftp://ftp.qlogic.com/outgoing/linux/firmware/. [ 63.526024] qla2xxx [0000:21:00.0]-00c2:3: Unable to initialize EFT (258).
and I opened following bug report: qla2xxx firmware not loaded
I thought that it probably is not optimal but as it was working like before I thought that I do not need to act immediately.
Yesterday I got a bug report that one file downloaded from our server was corrupt. This is nothing unusual and happens a few times per year. After checking that the checksums were correct I thought that it probably happened during the download and the user just needs to download the file again and everything is okay.
Unfortunately I got another bug report that evening that files had wrong checksums and they were changing with every try to download the file again: ports/168956: lang/gcc46 version 22.214.171.12420608 checksum mismatch
I was not able to reproduce this but as both files were on the same RAID connected with the same Fibre Channel controller I thought maybe the missing firmware is the problem. I blacklisted the modules in dracut so that they are not included in the ramdisk hoping that the firmware will be loaded if the modules are loaded from the disk instead of being loaded from the ramdisk. And it worked. The firmware is now loaded (at least the driver is no longer complaining about it) and until now I have no further error reports. Let’s see if this was the correct fix.
Update 1: So it seemed pretty unlikely that the firmware of a Fibre Channel controller is responsible for the data corruption. I am now trying something new. I downgraded the kernel from 3.4.0 to 3.3.4.