[openib-general] ehca weirdness??
Troy Benjegerdes
troy at scl.ameslab.gov
Thu Mar 23 16:45:09 PST 2006
On Thu, Mar 23, 2006 at 01:35:50PM -0800, Roland Dreier wrote:
> Troy> Okay, this is hokey. Both drivers should be able to
> Troy> coexist. Here is a full strace with the libmthca.so removed,
> Troy> which still doens't seem to work right.
>
> Yes, the drivers should be able to coexist. I just meant that
> libmthca was the one looking for the "vendor" attribute -- it won't
> find it, and (correctly) conclude that it can't drive that device.
>
> I'm not sure why libehca doesn't think it owns the device. I would
> suggest putting some printf() calls in the openib_driver_init()
> function in ehca_uinit.c to make sure it's getting called, and figure
> out where it's bailing out if it is.
We should probably check the result of dlopen..
libibverbs/src$ svn diff
Index: init.c
===================================================================
--- init.c (revision 5988)
+++ init.c (working copy)
@@ -62,10 +62,16 @@
void *dlhandle;
ibv_driver_init_func init_func;
struct ibv_driver *driver;
+ char * err;
+ printf("init.c: load_driver( %s )\n", so_path);
+
dlhandle = dlopen(so_path, RTLD_NOW);
- if (!dlhandle)
+ if (!dlhandle){
+ err = dlerror();
+ printf("load_driver: %s\n", err);
return;
+ }
dlerror();
init_func = dlsym(dlhandle, "openib_driver_init");
p5l3:/usr/src/openib-src/userspace/libibverbs/examples# ibv_devices
init.c: load_driver( /usr/lib/infiniband/libehca.so )
load_driver: /usr/lib/infiniband/libehca.so: undefined symbol:
ipz_qeit_reset
init.c: load_driver( (null) )
init_drivers
ibdev_name: ehca0
libibverbs: Warning: no userspace device-specific driver found for
uverbs0
driver search path: /usr/lib/infiniband
device node GUID
------ ----------------
More information about the general
mailing list