bnx2x ドライバーで [intel|amd]_iommu=on と TSO を有効にすると、"rb_erase+0x1fb/0x390" へのインストラクションポインターでカーネルがクラッシュする
Issue
- カーネルパニックが発生し Red Hat Enterprise Linux 7 システムがクラッシュしました。
BUG: unable to handle kernel NULL pointer dereference at (null)
...
RIP:0010:[<ffffffff812bf01b>] [<ffffffff812bf01b>] rb_erase+0x1fb/0x390
..
- ネットワーク設定で TSO (TCP セグメンテーションオフロード) が有効になっている場合は以下のようになります。
$ ethtool -k eth0
Features for eth0:
tcp-segmentation-offload: on
tx-tcp-segmentation: on
tx-tcp-ecn-segmentation: on
tx-tcp6-segmentation: on
- そして、"[intel|amd]_iommu=on" をブートパラメーター (/boot/grub2/grub.cfg) として使用しています。
linux16 /boot/vmlinuz-3.10.0-123.el7.x86_64 root=/dev/sda5 intel_iommu=on crashkernel=130M@0M ro rhgb quiet LANG=en_US.UTF-8
Environment
- Red Hat Enterprise Linux 7
- kernel-3.10.0-123.el7
- bnx2x ドライバー
- TSO (TCP セグメンテーションオフロード) を有効にしている
- grub.cfg でカーネルパラメーター [intel|amd]_iommu=on を指定している
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
