dmesg
zeigt viele Nachrichten von 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
...
Ich habe diese Nachricht noch nicht gesehen. Was bedeutet es allgemein? Sollte ich besorgt sein?
(Nach meinen Recherchen ist es nicht verteilungsspezifisch, aber wenn es relevant ist, werden die Meldungen auf einer EC2-Instanz angezeigt, auf der Ubuntu 16.04 ausgeführt wird.)
Antworten:
An Ihrem Kernel oder Ihren Gerätetreibern ist nichts auszusetzen. Das Problem liegt in der Hardware Ihrer Maschine. Das Problem ist, dass es keine Hardware gibt.
Dies ist ein Fehler auf mehreren Virtualisierungsplattformen (einschließlich mindestens XEN, QEMU und VirtualBox), der die Menschen seit mindestens einem Jahrzehnt plagt. Das Problem ist, dass sich die UART-Hardware, die von verschiedenen Marken virtueller Maschinen emuliert wird, unmöglich verhält und Zeichen mit einer unglaublich hohen Zeilengeschwindigkeit sendet. Für den Kernel ist dies nicht von fehlerhafter realer UART-Hardware zu unterscheiden, die kontinuierlich einen Interrupt für einen leeren Ausgabepuffer / vollen Eingabepuffer auslöst. (Es gibt solche fehlerhaften realen Hardwares, und Sie werden feststellen, dass Embedded-Linux-Leute dieses Problem auch hier und da diskutieren.) Der Kernel schiebt die Daten heraus / zieht die Daten hinein, und der UART löst sofort einen Interrupt aus, der besagt, dass er für mehr bereit ist .
H. Peter Anvin hat 2008 einen Patch zur Verfügung gestellt, um QEMU zu reparieren. Sie müssen Amazon fragen, wann EC2 aufholen wird.
Weitere Lektüre
quelle
Nur um einen Datenpunkt zur Unterstützung von JdeBP hinzuzufügen : Ich habe dies auf meinen XEN-VMs gesehen, und ich habe es nur gesehen, wenn ich dmesg ausführe. Ich vermute, dass ich beim Ausführen von dmesg den virtuellen UART überlade (und den oben beschriebenen Fehler manifestiere), weil dmesg eine ganze Reihe von Dingen auf einmal ausspuckt. Auf jeden Fall ist es für mich kein Problem, nur ein roter Hering.
quelle