lkml.org 
[lkml]   [2002]   [Jan]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [linux-usb-devel] Re: highmem and usb [was: "sr: unaligned transfer" in 2.5.2-pre1]
> > > Not that I've seen a writeup about highmem (linux/Documentation
> > > doesn't seem to have one anyway) but if I infer correctly from that
> > > DMA-mapping.txt writeup, URBs don't support it because there's no way
> > > to specify buffers as a "struct page *" or an array of "struct
> > > scatterlist". That's the only way that document identifies to access
> > > "highmem memory".
>
> This sounds like another good reason to have URBs take scatterlists
> directly, oddly enough. :)

If it's got to be done, I'd much rather it were "page + offset", so that the
usbcore code can be simpler. We know how to turn scatterlists into
bulk queued requests, so there's no need for anything more ... :)


> > No, you can always ask to get pages low mem bounced. Highmem is no
> > requirement, and if your device really can't support it there's no point
> > in attempting to support it.
>
> I presume there is some overhead in bouncing to lowmem? I imagine that
> highmem support for the HCDs wouldn't be that difficult -- they are just
> PCI devices, after all.

I'm unclear on what "bouncing to lowmem" involves, but I'd rather avoid
teaching all three HCDs a second model for addressing transfer buffers.

At least until later in the 2.5 series, when we believe they'll share a lot
more common code and so that new model can be taught to just ONE
piece of code. Fixing bugs in one place easier than in three!


> I'd rather eliminate as much overhead as possible -- I already get
> complaints from performance fanatics about the inability of usb-storage to
> get past 92% bus saturation (sustained), and the problem will only get
> worse on USB 2.0

Well then you'll be glad to see a patch from me, soonish, that teaches
the usb-storage "transport" code to use bulk queueing. That'll get the
bandwidth utilization up as high as it can get. It won't address any of
these highmem issues though.

- Dave



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

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