All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sagi Grimberg <sagig-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
To: Bart Van Assche <bvanassche-HInyCGIudOg@public.gmane.org>
Cc: Or Gerlitz <ogerlitz-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>,
	roland-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
	linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	roid-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org,
	oren-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org
Subject: Re: [PATCH for-3.11 7/7] IB/iser: Introduce fast memory registration model (FRWR)
Date: Tue, 23 Jul 2013 17:33:36 +0300	[thread overview]
Message-ID: <51EE9440.7060707@mellanox.com> (raw)
In-Reply-To: <51EE6FFE.8040802-HInyCGIudOg@public.gmane.org>

On 7/23/2013 2:58 PM, Bart Van Assche wrote:
> On 07/22/13 15:11, Sagi Grimberg wrote:
>> So just to clarify the flow:
>> . at connection establishment allocate pool of fastreg descriptors
>> . upon each IOP take a fastreg descriptor from the pool
>>      . if it is not invalidated - invalidate it.
>>      . register using FRWR.
>> . when cleanup_task is called - just return the fastreg descriptor to
>> the pool.
>> . at connection teardown free all resources.
>> Still to come:
>> . upon each IOP response, check if the target used remote invalidate -
>> if so mark relevant fastreg as valid.
>
> Hello Sagi and Or,
>
> Thanks for the clarifications. I have one more question though. My 
> interpretation of section "10.6 Memory Management" in the IB 
> specification is that memory registration maps a memory region that 
> either has contiguous virtual addresses or contiguous physical 
> addresses. However, there is no such requirement for an sg-list. As an 
> example, for direct I/O to a block device with a sector size of 512 
> bytes it is only required that I/O occurs in multiples of 512 bytes 
> and from memory aligned on 512-byte boundaries. So the use of direct 
> I/O can result in an sg-list where the second and subsequent sg-list 
> elements have a non-zero offset. Do you agree with this ? Are such 
> sg-lists mapped correctly by the FRWR code ?
>
> Bart.
>

Hey Bart,

You are on the money with this observation, like FMRs, FRWR cannot 
register any arbitrary SG-list. You have the same limitations.
Unlike SRP where the initiator will use multiple FMRs to register such 
"unaligned" SG-lists,
iSER uses a bounce buffer to copy the data to a nice physically 
contiguous memory area (see patch 5/7 fall_to_bounce_buf routine), thus 
will pass a single R_Key for each transaction.
An equivalent FRWR implementation for SRP will also use multiple FRWRs 
in-order to register such "un-aligned" SG-lists and publish the R_Keys 
in ib_sge.

Hope this helps,

-Sagi
--
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

  parent reply	other threads:[~2013-07-23 14:33 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-18 13:25 [PATCH for-3.11 0/7] Add Fast-Reg support to the iser initiator driver Or Gerlitz
     [not found] ` <1374153931-7313-1-git-send-email-ogerlitz-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2013-07-18 13:25   ` [PATCH for-3.11 1/7] IB/iser: Use proper debug level value for info prints Or Gerlitz
2013-07-18 13:25   ` [PATCH for-3.11 2/7] IB/iser: Restructure allocation/deallocation of connection resources Or Gerlitz
2013-07-18 13:25   ` [PATCH for-3.11 3/7] IB/iser: Accept session->cmds_max from user space Or Gerlitz
2013-07-18 13:25   ` [PATCH for-3.11 4/7] IB/iser: Generalize rdma memory registration Or Gerlitz
2013-07-18 13:25   ` [PATCH for-3.11 5/7] IB/iser: Handle unaligned SG in separate function Or Gerlitz
2013-07-18 13:25   ` [PATCH for-3.11 6/7] IB/iser: Place the fmr pool into a union in iser's IB conn struct Or Gerlitz
2013-07-18 13:25   ` [PATCH for-3.11 7/7] IB/iser: Introduce fast memory registration model (FRWR) Or Gerlitz
     [not found]     ` <1374153931-7313-8-git-send-email-ogerlitz-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2013-07-22 11:46       ` Bart Van Assche
     [not found]         ` <51ED1B8E.7070703-HInyCGIudOg@public.gmane.org>
2013-07-22 13:11           ` Sagi Grimberg
     [not found]             ` <51ED2F97.2080400-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2013-07-23 11:58               ` Bart Van Assche
     [not found]                 ` <51EE6FFE.8040802-HInyCGIudOg@public.gmane.org>
2013-07-23 14:21                   ` Or Gerlitz
     [not found]                     ` <CAJZOPZ+1TLQ-vwsZG8dgxhP332CQeDNOWfzGRdTbwRxLRhL95w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-07-23 14:47                       ` Bart Van Assche
     [not found]                         ` <51EE9773.9050003-HInyCGIudOg@public.gmane.org>
2013-07-24 16:47                           ` Or Gerlitz
     [not found]                         ` <51F000CB.3050808@mellanox.com>
     [not found]                           ` <51F000CB.3050808-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2013-07-26  9:27                             ` Bart Van Assche
2013-07-23 14:33                   ` Sagi Grimberg [this message]
2013-07-22 14:37           ` Or Gerlitz
2013-07-26 17:15       ` Vu Pham
     [not found]         ` <51F2AEB6.6090000-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2013-07-28  8:15           ` Or Gerlitz
     [not found]             ` <51F4D305.7090700-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2013-07-28  9:26               ` Sagi Grimberg

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=51EE9440.7060707@mellanox.com \
    --to=sagig-vpraknaxozvwk0htik3j/w@public.gmane.org \
    --cc=bvanassche-HInyCGIudOg@public.gmane.org \
    --cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=ogerlitz-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org \
    --cc=oren-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org \
    --cc=roid-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org \
    --cc=roland-DgEjT+Ai2ygdnm+yROfE0A@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.