sl-modem issues

أحمد المحمودي aelmahmoudy at
Mon Jun 29 15:56:12 BST 2009


  It seems that the 2.9.11~20080817-3ubuntu2 release of sl-modem is 
one of causes of Launchpad bug 375148 "no more /dev/ttySL0 
device node". In that release Ubuntu removed a modprobe conf file that 
creates a static device (mknod /dev/slamr0).
I understand that creating static devices is not allowed in Ubuntu, but 
the problem is that sl-modem code doesn't dynamically create devices.

The following is the output of udevadm when modprobing slamr module, as 
far as I understand, this output is not enough to get udev to 
dynamically create a /dev/slamr* device.

# udevadm monitor --environment --kernel

you can see all the uevents sent when the module registers itself, the
driver, the device, and finally the block and/or the class, etc. in
sysfs. The slamr module only sends these uevents:

UEVENT[1237419361.101064] add      /module/slamr (module)

UEVENT[1237419361.142691] add      /bus/pci/drivers/slamr (drivers)

Btw, sl-modem it isn't really maintained upstream (they just accept patches).
As far as I understand, sl-modem code shouldn't use udev because of 
license problems. [1] [2]

Maurizio Avogadro (he co-maintains sl-modem in Debian) suggested to me 
the following few months ago:

"I think that the needed information for udev (basically major and
minor) are usually sent in the block or in the class uevent: if I got
this right, the class uevent is sent if an instance of the GPL-only
structs class_create() and device_create() has been created.

I completely ignore whether there are some other ways to send the needed
data to udev or not: that was the way slamr sent the needed information
along with its class uevent until kernel 2.6.13 (when the structs had
different names).

I think the patch you added has been introduced in order to
automatically load the slamr module when an _already_existing_ char
device node having major 242 is being accessed (thus superceding the
corresponding alias line)."

I think that the patch he mentioned in the last paragraph is Ubuntu's
autoload.diff patch, that I've merged into Debian.


 ‎أحمد المحمودي (Ahmed El-Mahmoudy)
  Digital design engineer
 GPG KeyID: 0xEDDDA1B7 (@
 GPG Fingerprint: 8206 A196 2084 7E6D 0DF8  B176 BC19 6A94 EDDD A1B7

More information about the Ubuntu-motu mailing list