A performance issue was identified at a customer's site.  This issue resulted
in failures in their production environment.  It was eventually determined
that the excessive amount of time it took the IB stack to look up GIDs was
the primary culprit behind the problems observed.  This patch series resolves
the issue.  The first patch is the primary resolution and the one that we
can't live without, while the other two patches make incremental improvements
and could be skipped if need be (although I tend to think they make sense).

Roland, this was a showstopper for our customer.  As a mathematical experiment,
mlx4 hardware (dual port) has a 128 entry GID table, and without this patch,
if the GID you are looking for is on a second port, or God forbid a second
card, then the slowdown to search for the right GID is entirely unlivable.

Doug Ledford (3):
  IB/cma: use cached gids
  IB/cma: Check for GID on listening device first
  IB/cache: don't fill the cache with junk

 drivers/infiniband/core/cache.c | 132 +++++++++++++++++++++++++++++++---------
 drivers/infiniband/core/cma.c   |  65 ++++++++++----------
 2 files changed, 136 insertions(+), 61 deletions(-)

-- 
1.8.3.1

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to