Am Dienstag, den 22.05.2018, 12:36 +0200 schrieb Michael Biebl:
> Am 22.05.2018 um 12:27 schrieb Benjamin Drung:
> > What do you suggest to do instead? 
> 
> For that I know too little how rdma works, so I can't really answer
> that.

Mellanox ConnectX architecture is:  mlx4_core is the lower level
PCI driver which register on the PCI id, and protocol specific drivers
are depended on it: mlx4_en - for Ethernet and mlx4_ib for Infiniband.
NIC could have multiple ports which can change their type dynamically.
We use the request_module() call to load the relevant protocol driver
when needed: on loading time or at port type change event. The ib_ipoib
kernel modules provides IP over Infiniband support.

The order is as following:
1) The kernel loads mlx4_core on boot (due to device detection)
2) mlx4_core loads mlx4_ib
3) udev triggers rdma-load-modules@infiniband.service
4) rdma-load-modules@infiniband.service loads ib_ipoib (can be
configured in /etc/rdma)
5) networking.service brings up the IPoIB devices

> networking.service calls 'udevadm
> > settle' in 'ExecStartPre'.
> 
> It does, indeed. But not unconditionally.
> 
> ifupdown is basically installed on every system, even if e.g.
> NetworkManager is actually in charge and /e/n/i is empty.
> 
> This would mean you unconditionally pull in systemd-udev-
> settle.service
> on basically every system out there, and we certainly don't want
> that.
> systemd-udev-settle.service is a hack.

-- 
Benjamin Drung
System Developer
Debian & Ubuntu Developer

ProfitBricks GmbH
Greifswalder Str. 207
10405 Berlin

Email: benjamin.dr...@profitbricks.com
URL: https://www.profitbricks.de

Sitz der Gesellschaft: Berlin
Registergericht: Amtsgericht Charlottenburg, HRB 125506 B
Geschäftsführer: Achim Weiss, Matthias Steinberg, Christoph Steffens

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to