Comment 3 for bug 124990

Revision history for this message
Roland Dreier (roland.dreier) wrote :

Thanks for integrating some of these rules. A few comments on the rules you decided to leave out:

1) The ucm devices are indeed missing from devices.txt. I'll go through LANANA to get them added to the InfiniBand character major and let you know when they're there.

2) The rdma_ucm device is a misc device created with MISC_DYNAMIC_MINOR, so I don't think there's any way to put it in devices.txt. I notice that you already have a rules such as the one for /dev/mapper/control (which is also a misc device with dynamic minor that does not appear in devices.txt):

    KERNEL=="device-mapper", NAME="mapper/control"

so I think it would make sense to also include the rule

    KERNEL=="rdma_ucm", NAME="infiniband/%k"

3) What is the reasoning behind requiring the permission rules to come from the package that creates the group? If the package is never installed and the group does not exist, the rule is just silently ignored. And the group may exist without being created by the package (NIS for example) -- it's certainly within reason for someone to have minimal cluster nodes running with /usr on NFS, so they don't need to install libibverbs1 on their cluster nodes and hence wouldn't get any udev rules except what udev itself ships.

With that said, I'm not _that_ opposed to putting some udev rules in the libibverbs1 package, except that it really complicates my life by forcing the Ubuntu package to be permanently different from the upstream Debian package, because the README.Debian for udev says:

    MAINTAINERS BEWARE: the use of /etc/udev/rules.d/ by other packages is
    discouraged, except when only RUN rules are added.

and the Debian udev package ships with the InfiniBand group rdma rules already.