Compile error: ‘IBV_ODP_SUPPORT_SRQ_RECV’ undeclared
smichnowicz opened this issue · comments
Simon Michnowicz commented
Dear Developers,
I went to compile perftest but got the following compile errors
/usr/include/infiniband/verbs.h:78: note: this is the location of the previous definition
78 | #define container_of(ptr, type, member) \
|
src/perftest_resources.c: In function ‘check_odp_transport_caps’:
src/perftest_resources.c:1398:40: error: ‘IBV_ODP_SUPPORT_SRQ_RECV’ undeclared (first use in this function); did you mean ‘IBV_EXP_ODP_SUPPORT_SRQ_RECV’?
1398 | if (!(caps & (IBV_ODP_SUPPORT_RECV | IBV_ODP_SUPPORT_SRQ_RECV))) {
| ^~~~~~~~~~~~~~~~~~~~~~~~
| IBV_EXP_ODP_SUPPORT_SRQ_RECV
src/perftest_resources.c:1398:40: note: each undeclared identifier is reported only once for each function it appears in
src/perftest_resources.c: In function ‘check_odp_support’:
src/perftest_resources.c:1456:52: error: ‘struct ibv_device_attr_ex’ has no member named ‘xrc_odp_caps’; did you mean ‘odp_caps’?
1456 | if ( !check_odp_transport_caps(user_param, dattr.xrc_odp_caps) )
| ^~~~~~~~~~~~
| odp_caps
The file /usr/include/infiniband/verbs.h exists. Does the program depend upon the version of this file?
It is a Centos 7.9 system and I have the following packages installed:
yum list installed | grep verb
libibverbs.x86_64 41mlnx1-OFED.4.9.3.0.0.49510 installed
libibverbs-devel.x86_64 41mlnx1-OFED.4.9.3.0.0.49510 installed
libibverbs-devel-static.x86_64 41mlnx1-OFED.4.9.3.0.0.49510 installed
libibverbs-utils.x86_64 41mlnx1-OFED.4.9.3.0.0.49510 installe
thanks
Simon
HassanKhadour commented
Hi,
It seems that your ofed uses legacy verbs, you need to use the legacy branch of perftest
https://github.com/linux-rdma/perftest/tree/legacy_verbs_support
HassanKhadour commented
Please reopen if the issue continues