lkml.org 
[lkml]   [2008]   [Jun]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: Scatter-gather list constraints
From
On Wed, 25 Jun 2008 10:23:00 -0400 (EDT)
Alan Stern <stern@rowland.harvard.edu> wrote:

> On Wed, 25 Jun 2008, FUJITA Tomonori wrote:
>
> > > For example, suppose an I/O request starts out with two S-G elements
> > > of 1536 bytes and 2048 bytes respectively, and the DMA requirement is
> > > that all elements except the last must have length divisible by 1024.
> > > Then the request could be broken up into three requests of 1024, 512,
> > > and 2048 bytes.
> >
> > I can't say that it's easy to implement a clean mechanism to break up
> > a request into multiple requests until I see a patch.
>
> And I can't write a patch without learning a lot more about how the
> block core works.
>
> > What I said is that you think that this is about extending something
> > in the block layer but it's about adding a new concept to the block
> > layer.
>
> Is it? What does the block layer do when it receives an I/O request
> that don't satisfy the other constraints (max_sectors or
> dma_alignment_mask, for example)?

As I explained, you need something new.

I don't think that max_sectors works as you expect.

dma_alignment_mask is not used in the FS path. And I think that
dma_alignment_mask doens't solve your problems.


> > > Is it reasonable to have 120-KB bounce buffers?
> >
> > The block layer does. Why do you think that USB can't?
>
> Why do you think I think that USB can't? I didn't ask whether it was
> _possible_; I asked whether it was _reasonable_.

What the block layer does is reasonable with regard to this, I think.


\
 
 \ /
  Last update: 2008-06-26 04:09    [W:2.066 / U:0.136 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site