After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 691076 - Don't automatically probe serial ports coming from usb adapters
Don't automatically probe serial ports coming from usb adapters
Status: RESOLVED FIXED
Product: NetworkManager
Classification: Platform
Component: ModemManager
git master
Other Linux
: Normal normal
: ---
Assigned To: Aleksander Morgado
NetworkManager maintainer(s)
Depends on:
Blocks: 647556
 
 
Reported: 2013-01-03 15:43 UTC by Aleksander Morgado
Modified: 2013-03-05 20:06 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Aleksander Morgado 2013-01-03 15:43:44 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.
Comment 1 Aleksander Morgado 2013-03-02 13:14:19 UTC
Pushed a new 'manual-scan-greylist' branch to MM git with the changes, still need to test them, though.
Comment 2 Aleksander Morgado 2013-03-04 12:41:43 UTC
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").
Comment 3 Dan Williams 2013-03-05 18:38:46 UTC
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.
Comment 4 Aleksander Morgado 2013-03-05 20:06:14 UTC
Merged to git master now!