summaryrefslogtreecommitdiffstats
path: root/include/rdma
diff options
context:
space:
mode:
authorCQ Tang <cq.tang@intel.com>2014-01-30 17:36:00 -0500
committerRoland Dreier <roland@purestorage.com>2014-03-20 10:19:12 -0700
commit49c0e2414b20d868cf006addf14152570aef2605 (patch)
treeab5c966c90f3d1ba1a4e462fbf0737db07577344 /include/rdma
parentdb498827ff62611c12c03f6d33bcc532d9fb497e (diff)
downloadop-kernel-dev-49c0e2414b20d868cf006addf14152570aef2605.zip
op-kernel-dev-49c0e2414b20d868cf006addf14152570aef2605.tar.gz
IB/qib: Change SDMA progression mode depending on single- or multi-rail
Improve performance by changing the behavour of the driver when all SDMA descriptors are in use, and the processes adding new descriptors are single- or multi-rail. For single-rail processes, the driver will block the call and finish posting all SDMA descriptors onto the hardware queue before returning back to PSM. Repeated kernel calls are slower than blocking. For multi-rail processes, the driver will return to PSM as quick as possible so PSM can feed packets to other rail. If all hardware queues are full, PSM will buffer the remaining SDMA descriptors until notified by interrupt that space is available. This patch builds a red-black tree to track the number rails opened by a particular PID. If the number is more than one, it is a multi-rail PSM process, otherwise, it is a single-rail process. Reviewed-by: Dean Luick <dean.luick@intel.com> Reviewed-by: John A Gregor <john.a.gregor@intel.com> Reviewed-by: Mitko Haralanov <mitko.haralanov@intel.com> Signed-off-by: CQ Tang <cq.tang@intel.com> Signed-off-by: Mike Marciniszyn <mike.marciniszyn@intel.com> Signed-off-by: Roland Dreier <roland@purestorage.com>
Diffstat (limited to 'include/rdma')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud