Devesh Sharma [Fri, 31 Oct 2014 06:06:56 +0000 (11:36 +0530)]
RDMA/libocrdma: fix library stack curruption
The library abi structures are not matching with the
upstream driver abi code. The mismatch is causing
stack curruption on some platforms while running
user application.
The cq polling logic was hitting an infinite loop while generating
flush completions for a torn down QP. This patch adds a check in
flush completion logic to detect SQ/RQ empty condition and stop
polling loop.
Devesh Sharma [Thu, 26 Jun 2014 11:24:07 +0000 (16:54 +0530)]
RDMA/libocrdma: do not allow RDMA on UD QP
As per IB compilance it is not allowed to post RDMA operations
on a UD QP. This patch is adding a compilance check and if any
violation is detected -EINVAL is returned.
Devesh Sharma [Thu, 26 Jun 2014 10:49:27 +0000 (16:19 +0530)]
RDMA/libocrdma: dont skip setting deffer_arm
ibv_request_notify_cq() when called for the first time ocrdma tries to skip
setting deffered_arm flag. This may lead CQ to an un-armed state thus, never
generating CQ event and leaving consumer in hung state.