diff options
author | Ben Hutchings <bhutchings@solarflare.com> | 2012-12-20 18:48:20 +0000 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-03-28 12:06:01 -0700 |
commit | bbd3cfb8cbb326f32f1daec0ea6ffbf855a7ecc8 (patch) | |
tree | 3542c319ffc731dbc351835afb114ac6d81a1dda /kernel/rwsem.c | |
parent | 16cec22e5099020edb0ba8b6ae8f1b011e2ec4d5 (diff) | |
download | kernel_samsung_espresso10-bbd3cfb8cbb326f32f1daec0ea6ffbf855a7ecc8.zip kernel_samsung_espresso10-bbd3cfb8cbb326f32f1daec0ea6ffbf855a7ecc8.tar.gz kernel_samsung_espresso10-bbd3cfb8cbb326f32f1daec0ea6ffbf855a7ecc8.tar.bz2 |
sfc: Properly sync RX DMA buffer when it is not the last in the page
[ Upstream commit 3a68f19d7afb80f548d016effbc6ed52643a8085 ]
We may currently allocate two RX DMA buffers to a page, and only unmap
the page when the second is completed. We do not sync the first RX
buffer to be completed; this can result in packet loss or corruption
if the last RX buffer completed in a NAPI poll is the first in a page
and is not DMA-coherent. (In the middle of a NAPI poll, we will
handle the following RX completion and unmap the page *before* looking
at the content of the first buffer.)
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
[bwh: Backported to 3.0: adjust context]
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'kernel/rwsem.c')
0 files changed, 0 insertions, 0 deletions