GNOME Bugzilla – Bug 691076
Don't automatically probe serial ports coming from usb adapters
Last modified: 2013-03-05 20:06:14 UTC
ModemManager >= 0.7 supports RS232 modems, which may be connected a) directly to a platform RS232 port or b) through a USB<->RS232 adapter. By default, platform RS232 ports (a) aren't probed unless whitelisted by the user. But currently RS232 ports coming from USB ports (b) are automatically probed when found. This is not correct, as USB<->RS232 adapters are not only used for RS232 modems, so we're actually blocking the RS232 port and the user cannot use it until we finish our probing, which in MM < 0.7 takes quite a lot. In addition to this, distributions are already blacklisting USB<->RS232 adapters alltogether in ModemManager; see e.g.: https://bugs.launchpad.net/ubuntu/+source/modemmanager/+bug/1094138 I believe that the proper fix for this is to avoid automatically probing ports coming from USB<->RS232 adapters. Instead of directly blacklisting them, we could have a new udev tag (e.g. "ID_MM_DEVICE_IGNORE_AUTOMATIC") which would tell MM that this port shouldn't be included when automatically probing new ports. As we have a Scan() method in DBus, which is specifically thought for RS232 modems (which cannot be notified by udev), these tagged ports would get probed only when this Scan() method runs.
Pushed a new 'manual-scan-greylist' branch to MM git with the changes, still need to test them, though.
Seems to work well with several adapters I have and the RS232-only Cinterion modem. The modem is only detected through manually launched scans (e.g. "mmcli --scan").
I have no problem with this. You also brought up on IRC that if the user does want automatic probing, a udev rule that calls mmcli --scan when the serial interface appears would work, which is probably a good solution for this case.
Merged to git master now!