lkml.org 
[lkml]   [2000]   [Aug]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: PATCH - final (I hope) tidy up for generic_make_request interface
On Wednesday August 23, torvalds@transmeta.com wrote:
>
>
> On Thu, 24 Aug 2000, Neil Brown wrote:
> >
> > - moves create_bounce out of __make_request and into
> > generic_make_request, as potentially any client might use high
> > memory, and ever driver needs a bounce buffer.
>
> This is wrong.
>
> Not every driver necessarily needs a bounce buffer. Yes, _currently_ they
> do, but there are 64-bit PCI cards that could do DMA directly to high
> memory. The part of your change would make such a driver unable to take
> advantage of the resources offered by the hardware.
>
> Linus

Well, yes, but my understanding from the comment:
/*
* Temporary solution - in 2.5 this will be done by the lowlevel
* driver. Create a bounce buffer if the buffer data points into
* high memory - keep the original buffer otherwise.
*/
was that we were happy with this restriction, and that it would be
removed in 2.5.

If we leave the create_bounce in __make_request (now
elevator_make_request) then
1/ any driver that wants to dma from high memory needs to provide
it's own elevator algorithm and
2/ every make_request_fn has to do the create_bounce for itself.

Neither of these seem sensible from a software maintenance
perspective.

But, if you really like, I will move create_bounce back into
elevator_request, and also into md_make_request (and probably into
rd_make_request when I submit that patch - rd doesn't need the
elevator algorithm at all) and resubmit.

NeilBrown
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 12:38    [W:0.553 / U:0.100 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site