All of lore.kernel.org
 help / color / mirror / Atom feed
From: Matan Barak <matanb-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
To: Doug Ledford <dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	Matan Barak <matanb-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>,
	Jason Gunthorpe
	<jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>,
	Or Gerlitz <ogerlitz-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>,
	Haggai Eran <haggaie-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>,
	Somnath Kotur
	<Somnath.Kotur-idTK6quXuVSLFuii7jzJGg@public.gmane.org>
Subject: [PATCH for-next V1 00/10] Add RoCE GID cache usage in verbs/cma
Date: Fri,  7 Aug 2015 16:00:53 +0300	[thread overview]
Message-ID: <1438952463-23707-1-git-send-email-matanb@mellanox.com> (raw)

Hi Doug,

This purpose of this series is to add usage of the GID cache to
the CMA and IB stack. Instead of passing Ethernet L2 attributes
via QP attributes, we could just use the GID cache that's already
points to a ndev and thus to all required L2 attributes.

The first five patches query the GID table to find only GIDs which
are related to the bounded net-device of the specific used port. This
extra information is carried via ib_sa_path_rec (extending it to
include the namespace and ifindex). Querying the ndev and port
is achieved by adding a gid_attr argument to ib_query_gid, add a
ndev argument to ib_find_cached_gid and add a new
ib_find_cached_gid_by_port. This usage of the GID table replaces
the usage of QP attributes.

The sixth patch adds an ib_cache_gid_find_by_filter function.
This allows the user to query the cache by a specific filter.
ib_cache_gid_find_by_filter is used by the seventh patch. Instead
of storing the smac and vid on the AH, we could just resolve
them from the net-device which the sgid index is assigned to.
This change means that instead of resolving all L2 attributes,
the server, we get the dgid and vlan and searches the GID cache
in order to find a matching GID index.

The last three patches removed unused fields and attributes.

This series depends on "Move RoCE GID management to IB/Core" series.

Matan

Matan Barak (10):
  IB/core: Add netdev and gid attributes paramteres to cache
  IB/core: Expose and rename ib_find_cached_gid_by_port cache API
  IB/core: Add netdev to path record
  IB/cm: cm_init_av_by_path should find a GID by its netdevice
  IB/cma: cma_validate_port should verify the port and netdevice
  IB/cache: Add ib_find_gid_by_filter cache API
  IB/core: Use GID table in AH creation and dmac resolution
  IB/cm: Remove the usage of smac and vid of qp_attr and cm_av
  IB/core: Remove smac and vlan id from qp_attr and ah_attr
  IB/core: Remove smac and vlan id from path record

 drivers/infiniband/core/addr.c                 |   3 +-
 drivers/infiniband/core/cache.c                | 112 +++++++++++++++--
 drivers/infiniband/core/cm.c                   |  40 ++-----
 drivers/infiniband/core/cma.c                  |  42 ++++---
 drivers/infiniband/core/core_priv.h            |   9 +-
 drivers/infiniband/core/device.c               |  19 ++-
 drivers/infiniband/core/mad.c                  |   2 +-
 drivers/infiniband/core/multicast.c            |   3 +-
 drivers/infiniband/core/sa_query.c             |  19 +--
 drivers/infiniband/core/sysfs.c                |   2 +-
 drivers/infiniband/core/ucma.c                 |   1 -
 drivers/infiniband/core/uverbs_cmd.c           |   3 +-
 drivers/infiniband/core/uverbs_marshall.c      |   4 +-
 drivers/infiniband/core/verbs.c                | 159 +++++++++++++++----------
 drivers/infiniband/hw/mlx4/ah.c                |  17 ++-
 drivers/infiniband/hw/mlx4/mad.c               |  12 +-
 drivers/infiniband/hw/mlx4/main.c              |   4 +-
 drivers/infiniband/hw/mlx4/mcg.c               |   2 +-
 drivers/infiniband/hw/mlx4/mlx4_ib.h           |   2 +-
 drivers/infiniband/hw/mlx4/qp.c                |  52 ++++++--
 drivers/infiniband/hw/mthca/mthca_av.c         |   2 +-
 drivers/infiniband/hw/ocrdma/ocrdma_ah.c       |  22 ++--
 drivers/infiniband/hw/ocrdma/ocrdma_hw.c       |  30 +++--
 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c    |   2 +-
 drivers/infiniband/ulp/ipoib/ipoib_main.c      |   2 +-
 drivers/infiniband/ulp/ipoib/ipoib_multicast.c |   2 +-
 drivers/infiniband/ulp/srp/ib_srp.c            |   2 +-
 drivers/infiniband/ulp/srpt/ib_srpt.c          |   3 +-
 include/rdma/ib_addr.h                         |   2 +-
 include/rdma/ib_cache.h                        |  40 ++++++-
 include/rdma/ib_sa.h                           |  12 +-
 include/rdma/ib_verbs.h                        |  18 ++-
 32 files changed, 422 insertions(+), 222 deletions(-)

-- 
2.1.0

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

             reply	other threads:[~2015-08-07 13:00 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-07 13:00 Matan Barak [this message]
     [not found] ` <1438952463-23707-1-git-send-email-matanb-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2015-08-07 13:00   ` [PATCH for-next V1 01/10] IB/core: Add netdev and gid attributes paramteres to cache Matan Barak
2015-08-07 13:00   ` [PATCH for-next V1 02/10] IB/core: Expose and rename ib_find_cached_gid_by_port cache API Matan Barak
2015-08-07 13:00   ` [PATCH for-next V1 03/10] IB/core: Add netdev to path record Matan Barak
2015-08-07 13:00   ` [PATCH for-next V1 04/10] IB/cm: cm_init_av_by_path should find a GID by its netdevice Matan Barak
2015-08-07 13:00   ` [PATCH for-next V1 05/10] IB/cma: cma_validate_port should verify the port and netdevice Matan Barak
2015-08-07 13:00   ` [PATCH for-next V1 06/10] IB/cache: Add ib_find_gid_by_filter cache API Matan Barak
2015-08-07 13:01   ` [PATCH for-next V1 07/10] IB/core: Use GID table in AH creation and dmac resolution Matan Barak
2015-08-07 13:01   ` [PATCH for-next V1 08/10] IB/cm: Remove the usage of smac and vid of qp_attr and cm_av Matan Barak
2015-08-07 13:01   ` [PATCH for-next V1 09/10] IB/core: Remove smac and vlan id from qp_attr and ah_attr Matan Barak
2015-08-07 13:01   ` [PATCH for-next V1 10/10] IB/core: Remove smac and vlan id from path record Matan Barak
2015-09-16 12:48   ` [PATCH for-next V1 00/10] Add RoCE GID cache usage in verbs/cma Or Gerlitz
     [not found]     ` <55F9651E.5040906-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2015-09-16 14:53       ` Doug Ledford

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1438952463-23707-1-git-send-email-matanb@mellanox.com \
    --to=matanb-vpraknaxozvwk0htik3j/w@public.gmane.org \
    --cc=Somnath.Kotur-idTK6quXuVSLFuii7jzJGg@public.gmane.org \
    --cc=dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=haggaie-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org \
    --cc=jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org \
    --cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=ogerlitz-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.