[ofiwg] detecting FABRIC_DIRECT mismatch

Jason Gunthorpe jgunthorpe at obsidianresearch.com
Fri May 13 12:52:12 PDT 2016


On Fri, May 13, 2016 at 06:52:18PM +0000, Hefty, Sean wrote:

> - Set a bit in the major version number to indicate FABRIC_DIRECT.
>   This would be done automatically via the FI_VERSION macro.  Add a
>   new FI_FABRIC_DIRECT flag to fi_getinfo.  Maybe this can be

Erm, there are huge problems with overloading symbols with different
ABIs. If it links it must work. Anything else is a total abuse of the
dynamic linking infrastructure.

I don't know the details of how direct works, but if you must build a
special hardware specific version of libfabric.so, then those symbols
must not overlap with the normal full function library symbols.

Stated another way - you should be able to build a single libfabric.so
that provides support for all possible modes, !DIRECT, DIRECT and all
DIRECT hardware permutations simultaneously. If that isn't possible
due to symbol collisions then the design of the direct feature is very
wrong.

Jason



More information about the ofiwg mailing list