Bug 104191
Summary: | Brocade/Qlogic 1020: task bfad_worker blocked, bfad_read_firmware error | ||
---|---|---|---|
Product: | Networking | Reporter: | Daniel Mayer (listenmitglied) |
Component: | Other | Assignee: | Stephen Hemminger (stephen) |
Status: | NEW --- | ||
Severity: | high | ||
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 4.2 and 4.3 | Subsystem: | |
Regression: | No | Bisected commit-id: | |
Attachments: |
lspci -vvv
dmesg |
Created attachment 187061 [details]
dmesg
dmesg shows: [ 12.394101] bfa 0000:0b:00.0: Running firmware version is incompatible with the driver version [ 12.593368] bfa 0000:0b:00.0: bfa init failed So most likely the kernel firmware need an update. Because not in dmesg visible: The Brocade runs the firmware 3.2.5.0 Sorry for the many messages. I can't find an "edit" button... I updated the firmware to 3.2.5.1, as they find themselves in the lib/firmware. Same error. Same error with 4.3-rc1, too: "[ 12.862681] bfa 0000:0b:00.0: Running firmware version is incompatible with the driver version [ 13.065387] bfa 0000:0b:00.0: bfa init failed [ 13.069794] bfa 0000:0b:00.1: Running firmware version is incompatible with the driver version [ 13.268674] bfa 0000:0b:00.1: bfa init failed " Update by myself: I found in drivers/scsi/bfa in the file bfad.c at lines 66-69 the entries: #define BFAD_FW_FILE_CB "cbfw-3.2.3.0.bin" #define BFAD_FW_FILE_CT "ctfw-3.2.3.0.bin" #define BFAD_FW_FILE_CT2 "ct2fw-3.2.3.0.bin" and changed them to *3.2.5.1.bin. The files are present under Ubuntu 15.04x64 Server in /lib/firmware. The error messages have disappeard. Surely nothing like a patch but more an individual solution, but it works and clarifies: Please update the bfa-driver to fetch the correct firmware-files according to the firmware on the card. Qlogic mostly shows 3.2.5.0-firmware on their site, but only under "RedHat x64" shows the 3.2.5.1-liveCD. So there may be the need of a man-entry or FAQ or st like that. |
Created attachment 187051 [details] lspci -vvv Hi, new with kernel 4.2 (perhaps 4.1 also), the error repeats every 120seconds: [ 720.031766] INFO: task bfad_worker:297 blocked for more than 120 seconds. [ 720.033326] Not tainted 4.2.0 #2 [ 720.034846] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [ 720.036421] bfad_worker D ffff88046d655400 0 297 2 0x00000000 [ 720.036428] ffff88045443be98 0000000000000046 ffff880467779cc0 ffff880455a58000 [ 720.036433] ffff880455177a18 0000000000000296 0000000000000000 ffff88045443c000 [ 720.036436] ffff88044dc00000 ffffffffc01f9300 0000000000000000 0000000000000000 [ 720.036440] Call Trace: [ 720.036464] [<ffffffffc01f9300>] ? bfad_read_firmware+0xc0/0xc0 [bfa] [ 720.036481] [<ffffffff817195f7>] schedule+0x37/0x80 [ 720.036489] [<ffffffff81099354>] kthread+0xa4/0xe0 [ 720.036494] [<ffffffff810992b0>] ? kthread_create_on_node+0x180/0x180 [ 720.036498] [<ffffffff8171d58f>] ret_from_fork+0x3f/0x70 [ 720.036502] [<ffffffff810992b0>] ? kthread_create_on_node+0x180/0x180 [ 720.036506] INFO: task bfad_worker:305 blocked for more than 120 seconds. [ 720.038094] Not tainted 4.2.0 #2 [ 720.039677] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [ 720.041306] bfad_worker D ffff88046d795400 0 305 2 0x00000000 [ 720.041310] ffff88044d1d3e98 0000000000000046 ffff880467135640 ffff88044e75d640 [ 720.041314] ffff880455177a18 0000000000000296 0000000000000000 ffff88044d1d4000 [ 720.041317] ffff880078660000 ffffffffc01f9300 0000000000000000 0000000000000000 [ 720.041321] Call Trace: [ 720.041330] [<ffffffffc01f9300>] ? bfad_read_firmware+0xc0/0xc0 [bfa] [ 720.041334] [<ffffffff817195f7>] schedule+0x37/0x80 [ 720.041339] [<ffffffff81099354>] kthread+0xa4/0xe0 [ 720.041343] [<ffffffff810992b0>] ? kthread_create_on_node+0x180/0x180 [ 720.041346] [<ffffffff8171d58f>] ret_from_fork+0x3f/0x70 [ 720.041350] [<ffffffff810992b0>] ? kthread_create_on_node+0x180/0x180 I used kernel 4.0.6 up to now, no problems there.