Имеет место следующий баг, который проявляется начиная от кернеля 2.6.32 до 3.2.0 различных дистрибутивов с различными (пробовал около 4 штук) usb 3g модемами на разных компах.
Модем внезапно перестает видится, при этом пропадает /dev/ttyUSB*, иногда даже он пропадает в списке lsusb. всякие usbreset из гугла не очень помогают.
Изучение логов показало, что когда модем входит в такой режим, то по dmesg можно увидеть такое:
[59888.189018] scsi 204:0:0:0: Direct-Access Novatel MMC Storage 2.31 PQ: 0 ANSI: 2 [59888.190170] sd 204:0:0:0: Attached scsi generic sg1 type 0 [59888.197722] sr0: scsi3-mmc drive: 0x/0x caddy [59888.198023] sr 205:0:0:0: Attached scsi CD-ROM sr0 [59888.198199] sr 205:0:0:0: Attached scsi generic sg2 type 5 [59888.203730] sd 204:0:0:0: [sdb] Attached SCSI removable disk [59888.246714] sr0: CDROM (ioctl) error, command: Xpwrite, Read disk info 51 00 00 00 00 00 00 00 02 00 [59888.246845] sr: Sense Key : Hardware Error [current] [59888.246852] sr: Add. Sense: No additional sense information
Если модем переткнуть руками чтобы он корректно заработал, то этот же фрагмент выглядит так:
[61144.293208] scsi 213:0:0:0: CD-ROM Novatel Mass Storage 1.00 PQ: 0 ANSI: 2 [61144.294742] sd 212:0:0:0: Attached scsi generic sg1 type 0 [61144.306165] sd 212:0:0:0: [sdb] Attached SCSI removable disk [61144.324149] sr0: scsi-1 drive [61144.324447] sr 213:0:0:0: Attached scsi CD-ROM sr0 [61144.324664] sr 213:0:0:0: Attached scsi generic sg2 type 5
Этот лог наводит меня на мысль, что глючит встроенный в модем сидиром, кернель видит баг, и сбрасывает все usb-устройство. И через секунду-две все повторяется снова.
Вопрос - как бы сказать кернелю игнорировать сидиром и остальные устройства, кроме собственно 3g модема?