web-dev-qa-db-ja.com

dmesg(およびコンソール)にあふれるUSBデバイスメッセージ

USBマウスをラップトップに接続すると、dmesgに次のメッセージが殺到します。

usb 3-1: USB disconnect, device number 28
usb 3-1: new low-speed USB device number 29 using xhci_hcd
usb 3-1: New USB device found, idVendor=045e, idProduct=00cb
usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
usb 3-1: Product: Microsoft USB Optical Mouse
usb 3-1: Manufacturer: PixArt
usb 3-1: ep 0x81 - rounding interval to 64 microframes, ep desc says 80 microframes
input: PixArt Microsoft USB Optical Mouse as /devices/pci0000:00/0000:00:14.0/usb3/3-1/3-1:1.0/input/input39
hid-generic 0003:045E:00CB.001C: input: USB HID v1.11 Mouse [PixArt Microsoft USB Optical Mouse] on usb-0000:00:14.0-1/input0
usb 3-1: USB disconnect, device number 29
usb 3-1: new low-speed USB device number 30 using xhci_hcd
usb 3-1: New USB device found, idVendor=045e, idProduct=00cb
usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
usb 3-1: Product: Microsoft USB Optical Mouse
usb 3-1: Manufacturer: PixArt
usb 3-1: ep 0x81 - rounding interval to 64 microframes, ep desc says 80 microframes
input: PixArt Microsoft USB Optical Mouse as /devices/pci0000:00/0000:00:14.0/usb3/3-1/3-1:1.0/input/input40
hid-generic 0003:045E:00CB.001D: input: USB HID v1.11 Mouse [PixArt Microsoft USB Optical Mouse] on usb-0000:00:14.0-1/input0

マウスが絶えず取り外され、その後再び発見されたように見えます。

コンソールにログインしているとき(つまり CTRL+ALT+F1)これらのメッセージは私のコンソールにも殺到します。これらのメッセージが気にならないように、この問題を修正する方法はありますか?

6
Martin Vegter

一時的な解決策(再起動後にリセットされます):

(ルートとして)

sysctl -w kernel.printk="3 4 1 7"

上記の永続的なバージョン:

  • /etc/sysctl.d/、おそらくno_msgs.confにファイルを作成します(必須 .confで終了します)
  • ファイルの内容:

    kernel.printk = 3 4 1 7
    
  • rootとして、実行します:(上記で使用したファイル名を使用します)これにより、これがすぐに有効になり、再起動するたびに再度設定されます。

    sysctl -p /etc/sysctl.d/no_msgs.conf
    

kernel.printkのパラメータは次のとおりです:(順番に、左から右へ)

  • console_loglevel:これよりも高い優先度(低い数値!)のメッセージがコンソールに出力されます
  • default_message_loglevel:明示的な優先度のないメッセージは、この優先度で出力されます
  • minimum_console_loglevel:console_loglevelを設定できる最小(最高)値
  • default_console_loglevel:console_loglevelのデフォルト値

これらの値は、エラーメッセージを印刷またはログに記録するときのprintk()の動作に影響を与えます。さまざまなログレベルの詳細については、「man 2」syslogを参照してください。

基本的に、値をデフォルトの4からに下げているため、「警告4) 'タイプのメッセージ、worseタイプのメッセージのみがコンソールへの出力を許可されます。 (3 =エラー、2 =クリティカル、1 =アラート、0 =緊急(ええと!))

でメッセージが止まらない場合は、2 4 1 7を試してみてください。おそらくそれは十分な力を得ていませんか?コンピュータの別のポートに接続してみてください。または、セルフパワーハブに接続してみてください。デバイスはそのように振動するべきではありません。

1
lornix

Linuxでは、PixArt OEMマウスは常にポーリングされない場合、ランレベル1または3で毎分切断/再接続することがわかっています。内部バッファオーバーフロー、FWがクラッシュし、再接続します。 usbhidドライバーのデフォルトの動作は、割り込みを待つことだけです。

基本:https://github.com/sriemer/fix-linux-mouse

このマウスのpatchlinux-usbメーリングリストに送信しました。

https://marc.info/?l=linux-usb&m=154159427814212&w=2

カーネルブートオプションusbhid.quirks=0x045e:0x00cb:0x00000400HID_QUIRK_ALWAYS_POLLを有効にします。

もう1つの方法は、gpmサービスをアクティブにすることです。次に、gpmがマウスをポーリングしており、実際に仮想端末で使用できます。