opnsense / tools

OPNsense release engineering toolkit
https://opnsense.org/
BSD 2-Clause "Simplified" License
279 stars 206 forks source link

OFED disabled in src.conf #405

Closed rileyg98 closed 6 months ago

rileyg98 commented 6 months ago

Hi, I understand that yes, OPNsense does have the Infiniband drivers enabled by default, it doesn't seem to have OpenSM and other utilities from the OFED package required to run a Subnet Manager to use the full speed of IB cards.

As it's not a port, I've had trouble building a package, and given the support for IB is already built into the kernel, is there a reason for the "WITHOUT_OFED=YES" in src.conf?

I understand #65 was lodged in 2018 and closed later that year, but without OpenSM it's hard to get the full capabilities out of these cards, as currently with the standard 40Gbit interfaces the best that can be used on OPNsense is 10Gbit EoIB - as opposed to the full 40Gbit IPoIB/RDMA modes.

fichtner commented 6 months ago

can you make a PR for config/24.7 then we can readd it and verify in the nightly build, but I suspect core support will not be a priority

rileyg98 commented 6 months ago

No problem, I'll do so now

rileyg98 commented 6 months ago

Appreciate that you added this in so quickly for me. I do understand it's pretty damn niche, just don't want to run OpenSM on Windows (not only because the Windows version is considered not suitable for prod, just jankiness in general) but I also know I'm not the only one who should appreciate this given people love these cheap 40gbit cards.

I'm still running a build in a 13.2 FreeBSD VM right now with the change added for 24.1, but I don't expect it to fail given upstream has this enabled.

rileyg98 commented 6 months ago

Sorry to comment here again but I just discovered that WITH_OFED does not enable the actual OpenSM. Turns out you also need "WITH_OFED_EXTRA" - wondered why my builds weren't actually building said binary, but dug through the source tree and src.conf manpage and found this extra switch. I've already created another PR to introduce this in. Edit: i'll open a new issue for it.