From: "Martin K. Petersen" <martin.petersen@oracle.com>
To: Jens Axboe <axboe@kernel.dk>
Cc: "Martin K. Petersen" <martin.petersen@oracle.com>,
Christof Schmitt <christof.schmitt@de.ibm.com>,
linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [patch 0/1] Apply segment size and segment boundary to integrity data
Date: Thu, 15 Jul 2010 12:35:27 -0400 [thread overview]
Message-ID: <yq1iq4gpusw.fsf@sermon.lab.mkp.net> (raw)
In-Reply-To: <4C3F3400.7060005@kernel.dk> (Jens Axboe's message of "Thu, 15 Jul 2010 10:14:56 -0600")
>>>>> "Jens" == Jens Axboe <axboe@kernel.dk> writes:
Jens> That sounds like a very batch design decision. Either the limits
Jens> are explicitly given and different, or if not we have to assume
Jens> that they are the same as the data limits at least.
Imagine a controller that has a 4KB segment, 1 entry limit. If we
capped the DI sgl the same way as the data we'd only be able to issue
512-byte requests unless the DI entries happened to be contiguous in
memory.
For several types of I/O the DI sgl is much longer than the data sgl.
Especially if the submitter is using buffer_heads to map 512-byte
blocks.
And consequently we require vendors to be able to handle the
pathological case in which any data scatterlist honoring the
segmentation constraints given by the driver can be matched with an
integrity scatterlist in which there is a separate entry for each
logical block. No vendor has had any problems with this. Therefore
there are no block layer data integrity queue limits.
If a device appears that does in fact have constraints I have no
problems intruducing a set of suitable knobs.
--
Martin K. Petersen Oracle Linux Engineering
next prev parent reply other threads:[~2010-07-15 16:35 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-15 15:34 [patch 0/1] Apply segment size and segment boundary to integrity data Christof Schmitt
2010-07-15 15:34 ` [patch 1/1] block: Apply segment size and boundary limits " Christof Schmitt
2010-07-15 15:53 ` Jens Axboe
2010-07-15 16:03 ` [patch 0/1] Apply segment size and segment boundary " Martin K. Petersen
2010-07-15 16:14 ` Jens Axboe
2010-07-15 16:35 ` Martin K. Petersen [this message]
2010-07-15 16:40 ` Jens Axboe
2010-07-16 8:30 ` Christof Schmitt
2010-07-20 4:45 ` Martin K. Petersen
2010-07-20 9:28 ` Christof Schmitt
2010-07-21 4:20 ` Martin K. Petersen
2010-08-02 11:05 ` Christof Schmitt
2010-08-03 4:44 ` Martin K. Petersen
2010-08-11 8:07 ` Christof Schmitt
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=yq1iq4gpusw.fsf@sermon.lab.mkp.net \
--to=martin.petersen@oracle.com \
--cc=axboe@kernel.dk \
--cc=christof.schmitt@de.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox