Re: Infrastructure for zerocopy I/O

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 25 Nov 2015, Markus Rechberger wrote:

> Seems like it's getting stuck again, since we're entering devices with
> a higher bandwidth need now it seems to be necessary to really fix it
> in the kernel.
> 
> I propose add it as it is, it's proven that it works and there are 2
> testcases out there right now and it decreases the CPU load on intel
> Atoms as well.
> Otherwise it might take ages until things are getting forward here.
> Apple is just running fine for ages and they're not struggling on
> mailinglists about it. Aside of that the Mac USB 2.0 through USB 3.0
> support also works rock solid while linux is just a shame in that area
> .. it never worked and even totally crashes some systems.
> While that linux issue is known for a long time it just seems like
> it's accepted already.
> Either come up with a solution or just add this patch so we can make use of it!

I want to see a modified version of your patch.  Several things need to 
be changed or fixed, but the major change needs to be the way memory is 
allocated.  It should be done as part of the mmap system call, not as a 
separate ioctl.

There are numerous smaller issues: The allocated memory needs to be 
charged against usbfs_memory_usage, the memory should be allocated 
using dma_zalloc_coherent instead of kmalloc, proc_do_submiturb should 
check that the buffer starts anywhere within the allocated memory 
rather than just at the beginning, and so on.

I'd make these changes myself, but I just don't have enough free time 
now.  If anybody else would like to work on them, please feel free.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux