From: Erez Zilber <erezz@Voltaire.COM>
To: Pete Wyckoff <pw@osc.edu>, Roland Dreier <rolandd@cisco.com>
Cc: Mike Christie <michaelc@cs.wisc.edu>,
linux-scsi <linux-scsi@vger.kernel.org>,
Eli Dorfman <elid@voltaire.com>
Subject: Re: [PATCH 2/3] iscsi iser: increase max_sectors
Date: Mon, 12 May 2008 15:10:26 +0300 [thread overview]
Message-ID: <482833B2.4000208@Voltaire.COM> (raw)
In-Reply-To: <20080507155308.GE9975@osc.edu>
Pete Wyckoff wrote:
> michaelc@cs.wisc.edu wrote on Mon, 05 May 2008 12:49 -0500:
>
>> Pete Wyckoff wrote:
>>
>>> iser has no limit on max sectors. This lets iscsi iser support
>>> large pass through commands just like iscsi TCP.
>>>
>>> Signed-off-by: Pete Wyckoff <pw@osc.edu>
>>> ---
>>> drivers/infiniband/ulp/iser/iscsi_iser.c | 2 +-
>>> 1 files changed, 1 insertions(+), 1 deletions(-)
>>>
>>> diff --git a/drivers/infiniband/ulp/iser/iscsi_iser.c b/drivers/infiniband/ulp/iser/iscsi_iser.c
>>> index 1b272a6..78f3242 100644
>>> --- a/drivers/infiniband/ulp/iser/iscsi_iser.c
>>> +++ b/drivers/infiniband/ulp/iser/iscsi_iser.c
>>> @@ -557,7 +557,7 @@ static struct scsi_host_template iscsi_iser_sht = {
>>> .change_queue_depth = iscsi_change_queue_depth,
>>> .can_queue = ISCSI_DEF_XMIT_CMDS_MAX - 1,
>>> .sg_tablesize = ISCSI_ISER_SG_TABLESIZE,
>>> - .max_sectors = 1024,
>>> + .max_sectors = 0xffff,
>>> .cmd_per_lun = ISCSI_MAX_CMD_PER_LUN,
>>> .eh_abort_handler = iscsi_eh_abort,
>>> .eh_device_reset_handler= iscsi_eh_device_reset,
>>>
>> Do we need to modify sg_tablesize and the related preallocations to take
>> advantage of this? iser sets the sg_tablesize to ISCSI_ISER_SG_TABLESIZE
>> and disables clustering, scsi-ml/block will only send commands up to
>> ISCSI_ISER_SG_TABLESIZE * PAGE_SIZE.
>>
>
> Yes. I run with another patch to change ISCSI_ISER_SG_TABLESIZE to
> 1 MB / 4kB + 1, allowing up to 1 MB transfers. (I think that was
> 3/3 way back when.) That's because iser limits the fmr code like
> this:
>
> params.max_pages_per_fmr = ISCSI_ISER_SG_TABLESIZE;
>
> The plus 1 handles the case that the 1 MB transfer doesn't start on
> a page boundary.
>
> But you point out that this sg_tablesize setting is also used to
> limit the maximum number of pages when building bios to send to the
> device. So these numbers should all agree.
>
> rdreier@cisco.com wrote on Mon, 05 May 2008 13:43 -0700:
>
>> > This could be problematic because, AFAIK, some HCAs (memfree, I think)
>> > don't support FMRs of more than 2MB. Roland, am I right?
>>
>> Mem-free HCAs don't support FMRs where the list of pages is bigger than
>> a page itself. So yes, with 4 KB pages, you get 512 * 4 KB that way.
>>
>> Of course the current iSER driver has much bigger FMR problems, since
>> some adapters don't support FMRs at all...
>>
>
> And certain current hardware is 2 MB tops anyway, but not all. Iser
> cannot place a limit on the SCSI queue until it knows on which
> device it will use to communicate.
>
>
Do you suggest that iSER should get these limits from the HW and set
max_sectors accordingly? I don't know if it's possible. Roland - do the
HCA drivers publish this limitation somehow? If not, maybe they should.
> The goal with these patches is to increase througphut for big
> transfers.
>
Are you interested in transfers > 2MB?
Erez
> What's the right thing to do then? Maybe punt to the user. How
> about a module parameter like SRP, then we calculate the right
> limits for each of these three related settigns: max_sectors,
> sg_tablesize, max_pages_per_fmr.
>
> Erez, is this something you're interested in figuring out? I'll be
> offline for a couple of weeks at least.
>
Currently, we don't need transfers > 2MB. BTW - I will be offline for
more than a couple of weeks :-) (see my other e-mail in
openfabrics-general). I'm adding Eli Dorfman from Voltaire to the
discussion. He will replace me in iSER related tasks.
Erez
next prev parent reply other threads:[~2008-05-12 12:09 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-12 20:52 [PATCH 0/3] iscsi iser limits Pete Wyckoff
2008-02-12 20:54 ` [PATCH 1/3] iscsi iser: remove DMA restrictions Pete Wyckoff
2008-02-12 21:10 ` James Bottomley
2008-02-12 21:46 ` Pete Wyckoff
2008-02-12 21:57 ` James Bottomley
2008-02-13 19:59 ` Pete Wyckoff
2008-02-14 21:10 ` [PATCH 1/3 v2] iscsi iser: remove DMA alignment restriction Pete Wyckoff
2008-05-05 13:19 ` Erez Zilber
2008-04-21 13:51 ` [PATCH 1/3] iscsi iser: remove DMA restrictions Erez Zilber
2008-04-23 13:41 ` [ofa-general] " Erez Zilber
2008-04-23 16:33 ` Mike Christie
2008-04-23 17:16 ` Mike Christie
2008-04-23 17:43 ` Mike Christie
2008-02-14 17:56 ` Mike Christie
2008-02-14 18:10 ` James Bottomley
2008-02-14 18:21 ` Mike Christie
2008-02-14 18:34 ` Mike Christie
2008-02-14 19:04 ` Mike Christie
2008-02-12 20:54 ` [PATCH 2/3] iscsi iser: increase max_sectors Pete Wyckoff
2008-05-05 13:36 ` Erez Zilber
2008-05-05 20:43 ` Roland Dreier
2008-05-05 17:49 ` Mike Christie
2008-05-07 15:53 ` Pete Wyckoff
2008-05-12 12:10 ` Erez Zilber [this message]
2008-02-12 20:54 ` [PATCH 3/3] iscsi iser: increase sg_tablesize Pete Wyckoff
2008-03-02 13:56 ` [PATCH 0/3] iscsi iser limits Erez Zilber
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=482833B2.4000208@Voltaire.COM \
--to=erezz@voltaire.com \
--cc=elid@voltaire.com \
--cc=linux-scsi@vger.kernel.org \
--cc=michaelc@cs.wisc.edu \
--cc=pw@osc.edu \
--cc=rolandd@cisco.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).