_ [comp] 続々・kernel 2.6.21 変

CONFIG_USB_SUSPEND=n にしてからついにおかしな現象に遭遇。s2disk したあと、サスペンド処理が進まずに戻ってきてしまった。dmesg を見ると、

hub 5-0:1.0: over-current change on port 1
ehci_hcd 0000:00:1d.7: port 1 resume error -19
hub 5-0:1.0: hub_port_status failed (err = -32)
hub 5-0:1.0: connect-debounce failed, port 1 disabled
hub 5-0:1.0: over-current change on port 2
ehci_hcd 0000:00:1d.7: port 2 resume error -19
hub 5-0:1.0: hub_port_status failed (err = -32)
hub 5-0:1.0: connect-debounce failed, port 2 disabled
       :

と延々と出続けている。しかも s2disk から戻ってきてから出始めているのではなく、その前の日にサスペンドしてからレジュームしてまる1日延々と出続けていたようだ。おかげでこのログだけで syslog が 200MB くらいに…。 正常にサスペンド/レジュームできたときとそうでないときの kern.log の差分を調べてみた。

 usb usb3: root hub lost power or was reset
 usb usb4: root hub lost power or was reset
 usb usb5: root hub lost power or was reset
-ehci_hcd 0000:00:1d.7: debug port 1
- usbdev2.19_ep00: PM: resume from 0, parent 2-1 still 1
+ehci_hcd 0000:00:1d.7: debug port 1 IN USE
+ usbdev2.20_ep00: PM: resume from 0, parent 2-1 still 1
 usbhid 2-1:1.0: PM: resume from 1, parent 2-1 still 1
- usbdev2.19_ep81: PM: resume from 0, parent 2-1:1.0 still 1
- usbdev2.19: PM: resume from 0, parent 2-1 still 1
-Restarting tasks ... <6>usb 2-1: USB disconnect, address 19
-usb 2-1: new low speed USB device using uhci_hcd and address 20
+ usbdev2.20_ep81: PM: resume from 0, parent 2-1:1.0 still 1
+ usbdev2.20: PM: resume from 0, parent 2-1 still 1
+Restarting tasks ... <6>usb 2-1: USB disconnect, address 20
+usb 2-1: new low speed USB device using uhci_hcd and address 21
 usb 2-1: configuration #1 chosen from 1 choice
-input: Logitech Optical USB Mouse as /class/input/input30
+input: Logitech Optical USB Mouse as /class/input/input31
 input: USB HID v1.10 Mouse [Logitech Optical USB Mouse] on usb-0000:00:1d.1-1
+hub 5-0:1.0: over-current change on port 1
+ehci_hcd 0000:00:1d.7: port 1 resume error -19
+hub 5-0:1.0: hub_port_status failed (err = -32)
+hub 5-0:1.0: connect-debounce failed, port 1 disabled

1箇所、

-ehci_hcd 0000:00:1d.7: debug port 1
+ehci_hcd 0000:00:1d.7: debug port 1 IN USE

の部分が極めて怪しい。 ひとまず uhci_hcd があれば大丈夫っぽいので、ehci_hcd は外してみた。これでしばらく様子見。