]> git.baikalelectronics.ru Git - kernel.git/commit
firewire: ohci: avoid separate DMA mapping for small AT payloads
authorClemens Ladisch <clemens@ladisch.de>
Mon, 11 Apr 2011 07:57:54 +0000 (09:57 +0200)
committerStefan Richter <stefanr@s5r6.in-berlin.de>
Tue, 19 Apr 2011 18:00:11 +0000 (20:00 +0200)
commit9bbfac75005af60dc1f75109ff1eab7aa2a19b3b
tree33b3cfb25fddbe12b4f19f02ce3253872eed2436
parent2c103ddc27ca692cb8da2364d821252a5d8765bb
firewire: ohci: avoid separate DMA mapping for small AT payloads

For AT packet payloads of up to eight bytes, we have enough unused space
in the DMA descriptors list so that we can put a copy of the payload
there and thus avoid having to create a separate streaming DMA mapping
for the payload buffer.

In a CPU-bound microbenchmark that just sends 8-byte packets, bandwidth
was measured to increase by 5.7 %, from 1009 KB/s to 1067 KB/s.  In
practice, the only performance-sensitive usage of small asynchronous
packets is the SBP-2 driver's write to the ORB_POINTER register during
SCSI command submission.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
drivers/firewire/ohci.c