「serial8250:irq4には作業が多すぎる」カーネルメッセージを理解する


16

dmesg serial8250からの多くのメッセージを示します。

$ dmesg | grep -i serial
[    0.884481] Serial: 8250/16550 driver, 32 ports, IRQ sharing enabled
[    6.584431] systemd[1]: Created slice system-serial\x2dgetty.slice.
[633232.317222] serial8250: too much work for irq4
[633232.453355] serial8250: too much work for irq4
[633248.378343] serial8250: too much work for irq4
...

このメッセージを見たことがありません。一般的にはどういう意味ですか?心配する必要がありますか?

(私の調査では、ディストリビューション固有ではありませんが、関連がある場合は、Ubuntu 16.04を実行しているEC2インスタンスでメッセージが表示されます。)


EC2インスタンスにシリアルドライバーが必要なのはなぜですか?これらのシリアル「ポート」には何が接続されていますか?(推測:他の何かが多くのirq4シグナルを引き起こしており、ドライバーが混乱します。解決策:おそらく必要ないので、ドライバーを無効にしてください)。
dirkt

たぶん、SSH経由でログインしてコンソールを操作すると発生する可能性がありますか?
フィリップクラッセン

2
EC2インスタンスのシリアルポートは、EC2の「コンソール出力」dirktです。
JdeBP

回答:


19

カーネルまたはデバイスドライバーに問題はありません。問題は、マシンのハードウェアにあります。問題は、不可能なハードウェアであるということです。

これは、少なくとも10年にわたって人々を悩ませてきたいくつかの仮想化プラットフォーム(少なくともXEN、QEMU、VirtualBoxを含む)のエラーです。問題は、さまざまなブランドの仮想マシンによってエミュレートされるUARTハードウェアがありえない動作をし、文字を信じられないほど速いラインスピードで送信することです。カーネルにとって、これは、空の出力バッファ/完全な入力バッファの割り込みを継続的に発生させる障害のある実際の UARTハードウェアと区別がつきません。(このような欠陥のある実際のハードウェアが存在するため、組み込みLinuxの人々もこの問題についてあちこちで議論しています。)カーネルはデータをプッシュ/データプルし、UARTはすぐに割り込みを発生させて、さらに準備ができていると言います。 。

H. Peter Anvinは、2008年にQEMUを修正するパッチを提供しました。EC2が追い付く時期をAmazonに尋ねる必要があります。

参考文献


1
2008年にパッチがリリースされましたか?「EC2が追い付くのをAmazonに依頼する必要があります。」Azure(7月18日)Linux 4.15.0-1013-azure x86_64のUbuntuサーバー上のAzureでこのエラーが発生します。
ケヴィン

2

JdeBPをサポートするデータポイントを追加するだけです。XENVMでこれを見てきましたが、dmesgを実行したときにしか見ていません。私の推測では、dmesgを実行すると、仮想UARTが過負荷になります(そして、上記のバグが現れます)。なぜなら、dmesgは一度に大量のものを吐き出しているからです。いずれにせよ、それは私にとっては問題ではなく、ただのニシンです。


3番目のOSセットアップを報告できます:Mac OSのMac 18.06.1-ce-mac73(26764)のdockerにあるDebian Stretch Dockerコンテナー(OS O High Sierra 10.13.6) Pythonのアプリは)...随時応答しなくなる
ヘニング
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.