From: "santosh.shilimkar@oracle.com" <santosh.shilimkar@oracle.com>
To: Sagi Grimberg <sagig@mellanox.com>, linux-rdma@vger.kernel.org
Cc: linux-nfs@vger.kernel.org, "Nicholas A. Bellinger" <nab@linux-iscsi.org>
Subject: Re: [PATCH v1 00/24] New fast registration API
Date: Sat, 19 Sep 2015 19:20:53 -0400 [thread overview]
Message-ID: <55FDEDD5.1090105@oracle.com> (raw)
In-Reply-To: <1442482947-27785-1-git-send-email-sagig@mellanox.com>
On 9/17/15 5:42 AM, Sagi Grimberg wrote:
> Hi all,
>
> As discussed on the linux-rdma list, there is plenty of room for
> improvement in our memory registration APIs. We keep finding
> ULPs that are duplicating code, sometimes use wrong strategies
> and mis-use our current API.
>
> As a first step, this patch set replaces the fast registration API
> to accept a kernel common struct scatterlist and takes care of
> the page vector construction in the core layer with hooks for the
> drivers HW specific assignments. This allows to remove a common
> code duplication as it was done in each and every ULP driver.
>
> The changes from v0 (WIP) are:
> - Rebased on top of 4.3-rc1 + Christoph's ib_send_wr conversion patches
>
> - Allow the ULP to pass page_size argument to ib_map_mr_sg in order
> to have it work better in some specific workloads. This suggestion
> came from Bart Van Assache which pointed out that some applications
> might use page sizes significantly smaller than the system PAGE_SIZE
> of specific architectures
>
> - Fixed some logical bugs in ib_sg_to_pages
>
> - Added a set_page function pointer for drivers to pass to ib_sg_to_pages
> so some drivers (e.g mlx4, mlx5, nes) can avoid keeping a second page
> vector and/or re-iterate on the page vector in order to perform HW specific
> assignments (big/little endian conversion, extra flags)
>
> - Converted SRP initiator and RDS iwarp ULPs to the new API
>
> - Removed fast registration code from hfi1 driver (as it isn't supported
> anyway). I assume that the correct place to get the support back would
> be in a shared SW library (hfi1, qib, rxe).
>
> - Updated the change logs
>
> So far my tests covered:
> - ULPs:
> * iser initiator
> * iser target
> * xprtrdma
> * svcrdma
> - Drivers:
> * mlx4
> * mlx5
> * Steve Wise was kind enough to run NFS client/server over cxgb4 and I
> have yet to receive any negative feedback from him.
>
> I don't have access to other HW devices (qib, nes) nor iwarp devices so RDS is
> compile tested only.
>
Nice to see this consolidaton happening. I too don't have access to
iWARP hardware for RDS test but will use this series and convert our WIP
IB fastreg code and see how it goes.
Regards,
Santosh
next prev parent reply other threads:[~2015-09-19 23:21 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-17 9:42 [PATCH v1 00/24] New fast registration API Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 01/24] IB/core: Introduce new " Sagi Grimberg
2015-09-22 21:21 ` Bart Van Assche
2015-09-24 7:37 ` Sagi Grimberg
2015-09-28 20:57 ` Bart Van Assche
2015-09-29 5:59 ` Christoph Hellwig
2015-09-29 6:47 ` Sagi Grimberg
2015-09-29 6:49 ` Sagi Grimberg
2015-09-29 6:42 ` Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 02/24] IB/mlx5: Remove dead fmr code Sagi Grimberg
2015-09-22 21:24 ` Bart Van Assche
2015-09-17 9:42 ` [PATCH v1 03/24] IB/mlx5: Support the new memory registration API Sagi Grimberg
2015-09-22 21:27 ` Bart Van Assche
2015-09-24 7:39 ` Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 04/24] IB/mlx4: " Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 05/24] RDMA/ocrdma: " Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 06/24] RDMA/cxgb3: " Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 07/24] iw_cxgb4: " Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 08/24] IB/qib: " Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 09/24] RDMA/nes: " Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 10/24] IB/iser: Port to new fast " Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 11/24] iser-target: Port to new memory " Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 12/24] xprtrdma: " Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 13/24] svcrdma: " Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 14/24] RDS/IW: Convert " Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 15/24] IB/srp: " Sagi Grimberg
2015-09-22 21:58 ` Bart Van Assche
2015-09-24 9:06 ` Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 16/24] IB/mlx5: Remove old FRWR API support Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 17/24] IB/mlx4: " Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 18/24] RDMA/ocrdma: Remove old FRWR API Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 19/24] RDMA/cxgb3: " Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 20/24] iw_cxgb4: " Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 21/24] IB/qib: " Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 22/24] RDMA/nes: " Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 23/24] IB/hfi1: Remove Old fast registraion API support Sagi Grimberg
2015-09-17 9:42 ` [PATCH v1 24/24] IB/core: Remove old fast registration API Sagi Grimberg
2015-09-19 22:45 ` [PATCH v1 00/24] New " Christoph Hellwig
2015-09-24 6:53 ` Sagi Grimberg
2015-09-24 13:39 ` Christoph Hellwig
2015-09-19 23:20 ` santosh.shilimkar [this message]
2015-09-20 9:36 ` Sagi Grimberg
2015-09-21 23:28 ` santosh.shilimkar
2015-09-22 7:19 ` Sagi Grimberg
2015-09-22 7:56 ` Sagi Grimberg
2015-09-22 18:23 ` santosh shilimkar
2015-09-22 21:22 ` Bart Van Assche
2015-09-24 7:40 ` Sagi Grimberg
2015-09-29 19:03 ` Bart Van Assche
2015-09-29 20:58 ` Sagi Grimberg
2015-09-30 6:47 ` Sagi Grimberg
2015-09-30 18:59 ` Bart Van Assche
2015-09-30 20:15 ` Bart Van Assche
2015-10-01 7:16 ` Sagi Grimberg
2015-10-01 17:53 ` Bart Van Assche
2015-10-01 20:58 ` Bart Van Assche
[not found] ` <35618B90-4D6E-4036-A69B-4405F020D440@dev.mellanox.co.il>
2015-10-02 15:37 ` Bart Van Assche
2015-10-06 8:37 ` Sagi Grimberg
2015-10-06 18:49 ` Bart Van Assche
2015-10-07 6:42 ` Sagi Grimberg
2015-10-07 15:46 ` Bart Van Assche
2015-10-07 15:48 ` Sagi Grimberg
2015-10-07 9:20 ` Christoph Hellwig
2015-10-07 9:25 ` Sagi Grimberg
2015-10-07 9:36 ` Christoph Hellwig
2015-10-07 10:00 ` Sagi Grimberg
2015-10-07 16:30 ` Bart Van Assche
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=55FDEDD5.1090105@oracle.com \
--to=santosh.shilimkar@oracle.com \
--cc=linux-nfs@vger.kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=nab@linux-iscsi.org \
--cc=sagig@mellanox.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).