public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
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

  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