I would just like to add that on all versions of ubuntu after 12.04 the version of brocade drivers that are included with the kernel is problematic and will result in rx queue kernel panics under high network and CPU load.
The issue has been resolved by the inclusion off 3.2.5.1 drivers in the 4.2+ linux kernels.
4.1 has the new driver and firmwares, but is broken and will not initiate the cards at boot time:
So, if you are experiencing the bna rx kernel panic stacktrace you can try updating to the newest kernel and firmwares as outlined below:
-----------------
The kernel files for can be installed for 64 bit systems as follows:
To get the firmwares:
(as root):
To install 4.2.0 kernel (ubuntu team hasn't posted 4.2.1 yet - which is the current stable, although marked unstable I have been using it for a while without any stability issues - much less crashing than with the old 3.2.3.0 drivers/3.x combo)
(as root):
Once done, reboot and things should come up as normal.
A quick check should reveal that you are now running the newest firmware and drivers:
(as root):
If something doesn't work or you wish to revert - you can go back by removing the 4.2.0 kernel packages (grub should rebuild after)
(as root):
As a note, if your dpkg or apt script complains that the disk is full - you have to remove some older kernels taking up space in /boot (often its own partition of very small size) before you can install/remove any kernels. You probably have some kernels for 3.13, 3.16 or 3.19 in /boot that are no longer being used and could be moved/deleted.
Now you can reboot and the old kernel will show up with the old drivers.
The issue has been resolved by the inclusion off 3.2.5.1 drivers in the 4.2+ linux kernels.
4.1 has the new driver and firmwares, but is broken and will not initiate the cards at boot time:
Code:
[ 15.069887] scsi host4: Brocade FC/FCOE Adapter, hwpath: 0000:41:00.1 driver: 3.2.23.0
[ 15.071153] bnad_pci_probe : (0xffff88061e4a5000, 0xffffffffc00d10c0) PCI Func : (2)
[ 15.071718] bar0 mapped to ffffc90004100000, len 262144
[ 15.072094] BNA: Initialization failed err=1
[ 15.072156] bnad_pci_probe : (0xffff88061e4a6000, 0xffffffffc00d10c0) PCI Func : (3)
[ 15.072207] bar0 mapped to ffffc90004180000, len 262144
[ 15.072535] BNA: Initialization failed err=1
So, if you are experiencing the bna rx kernel panic stacktrace you can try updating to the newest kernel and firmwares as outlined below:
-----------------
The kernel files for can be installed for 64 bit systems as follows:
To get the firmwares:
(as root):
Code:
cd /lib/firmware
wget http://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/plain/ctfw-3.2.5.1.bin
wget http://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/plain/ct2fw-3.2.5.1.bin
wget http://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/plain/cbfw-3.2.5.1.bin
To install 4.2.0 kernel (ubuntu team hasn't posted 4.2.1 yet - which is the current stable, although marked unstable I have been using it for a while without any stability issues - much less crashing than with the old 3.2.3.0 drivers/3.x combo)
(as root):
Code:
mkdir /tmp/420kernel/; cd /tmp/420kernel
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.2-unstable/linux-headers-4.2.0-040200_4.2.0-040200.201508301530_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.2-unstable/linux-headers-4.2.0-040200-generic_4.2.0-040200.201508301530_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.2-unstable/linux-image-4.2.0-040200-generic_4.2.0-040200.201508301530_amd64.deb
dpkg -i linux-headers-4.2.0*.deb linux-image-4.2.0*.deb
Once done, reboot and things should come up as normal.
A quick check should reveal that you are now running the newest firmware and drivers:
(as root):
Code:
modinfo bna; uname -a; cat /etc/*release*
filename: /lib/modules/4.2.0-040200-generic/kernel/drivers/net/ethernet/brocade/bna/bna.ko
firmware: ct2fw-3.2.5.1.bin
firmware: ctfw-3.2.5.1.bin
version: 3.2.25.1
description: QLogic BR-series 10G PCIe Ethernet driver
license: GPL
author: Brocade
srcversion: 82BFE8B363B3EB37FB14E65
alias: pci:v00001657d00000022sv*sd*bc02sc00i*
alias: pci:v00001657d00000014sv*sd*bc02sc00i*
depends:
intree: Y
vermagic: 4.2.0-040200-generic SMP mod_unload modversions
signer: Build time autogenerated kernel key
sig_key: B35:4D8:43:77:6E:54:6A:4C:A7:1D4:58:67:FC:94:56:69:2F
sig_hashalgo: sha512
parm: bnad_msix_disableisable MSIX mode (uint)
parm: bnad_ioc_auto_recover:Enable / Disable auto recovery (uint)
parm: bna_debugfs_enable:Enables debugfs feature, default=1, Range[false:0|true:1] (uint)
Linux hostname 4.2.0-040200-generic #201508301530 SMP Sun Aug 30 19:31:40 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.3 LTS"
NAME="Ubuntu"
VERSION="14.04.3 LTS, Trusty Tahr"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 14.04.3 LTS"
VERSION_ID="14.04"
HOME_URL="The leading OS for PC, tablet, phone and cloud | Ubuntu"
SUPPORT_URL="Official Ubuntu Documentation"
BUG_REPORT_URL="Bugs : Ubuntu"
If something doesn't work or you wish to revert - you can go back by removing the 4.2.0 kernel packages (grub should rebuild after)
(as root):
Code:
apt-get remove 'linux-headers-4.2.0*' 'linux-image-4.2.0*'
update-initramfs -uk all
update-grub
Now you can reboot and the old kernel will show up with the old drivers.
Last edited: