[ofa-general] Another OFED 1.3 XRC bug with 2.6.9 kernel
Jack Morgenstein
jackm at dev.mellanox.co.il
Tue Feb 19 04:40:33 PST 2008
On Tuesday 19 February 2008 02:35, Tang, Changqing wrote:
>
> I have taken sometime to trace down this bug.
>
> When running OFED 1.3 on 2.6.9-42.ELsmp kernel, putenv("IBV_FORK_SAFE=1");
> causes ibv_get_device_list() to print out a Warning and set errno = 22 :
>
> A:errno=0
> libibverbs: Warning: fork()-safety requested but init failed
> B:errno=22
>
> errno keeps value 22 and causes ibv_modify_xrc_rcv_qp() to fail.
>
> Another way to make ibv_modify_xrc_rcv_qp() to fail is to set errno = 22 just
> before calling this function. However, this only happens on 2.6.9-42.ELsmp kernel,
> on 2.6.18-8.e15 kernel, it succeeds.
>
> 2.6.9-42.ELsmp is the kernel in Mellanox testing cluster helios.mellanox.com/ibd001-0032
>
> Thanks for Mellanox guys to have a look
>
>
> --CQ
I fixed a bug just like this in OFED 1.3 on Jan 30. The fix is in OFED 1.3 RC4 -- are you using
that version? If not, please install RC4 and re-test.
(The bug was in kernel space:
===========
IB/core: fixed thinko in return values for ib_uverbs_xxxx_xrc_rcv_qp() procs.
Wed, 30 Jan 2008 15:11:08 +0000 (17:11 +0200)
commit 78273e00083543535edd4c9db830b4ac45eb556a
IB/core: fixed thinko in return values for ib_uverbs_xxxx_xrc_rcv_qp() procs.
Incorrectly returned 0 instead of in_len in several procedures.
=================
This bug caused userspace to return the "errno" value even when the kernel operation
completed successfully, which is what you seem to be seeing.
- Jack
More information about the general
mailing list