There is a lot of systemd config chatter around, but essentially it does
ExecStart=/lib/systemd/systemd-modules-load /etc/rdma/modules/%I.conf
Which in this case will be /etc/rdma/modules/rdma.conf
That config does not contain "ib_umad" module.
The solutions that come to mind immediately would either be:
1. add ib_umad to /etc/rdma/modules/rdma.conf to be auto-loaded
2. consider this optional and keep the service off unless a admin made ib_umad load
ConditionPathExists=/sys/class/infiniband_mad/abi_version
Given that there might be plenty of cases for #1 to fail (containers, module not available, module fails to load) I'd think that #2 is required and the decision to add #1 is not mine to make (no experience what it actually does).
I see that /etc/rdma/modules/rdma.conf has other commented out modules, so even if we don't want it auto-loaded we might add it disabled by default.
The service actually defines:
# Ensure required kernel modules are loaded before starting
<email address hidden>
<email address hidden>
$ dpkg -S /lib/systemd/ system/ rdma-load- modules@ .service system/ rdma-load- modules@ .service
rdma-core: /lib/systemd/
There is a lot of systemd config chatter around, but essentially it does /lib/systemd/ systemd- modules- load /etc/rdma/ modules/ %I.conf modules/ rdma.conf
ExecStart=
Which in this case will be /etc/rdma/
That config does not contain "ib_umad" module.
The solutions that come to mind immediately would either be: modules/ rdma.conf to be auto-loaded hExists= /sys/class/ infiniband_ mad/abi_ version
1. add ib_umad to /etc/rdma/
2. consider this optional and keep the service off unless a admin made ib_umad load
ConditionPat
Given that there might be plenty of cases for #1 to fail (containers, module not available, module fails to load) I'd think that #2 is required and the decision to add #1 is not mine to make (no experience what it actually does).
I see that /etc/rdma/ modules/ rdma.conf has other commented out modules, so even if we don't want it auto-loaded we might add it disabled by default.