summaryrefslogtreecommitdiffstats
path: root/sys/dev/mxge
diff options
context:
space:
mode:
authorgallatin <gallatin@FreeBSD.org>2006-11-29 15:30:39 +0000
committergallatin <gallatin@FreeBSD.org>2006-11-29 15:30:39 +0000
commit45926e53d0a86af2776153b353c65aa3f9f6af08 (patch)
tree27bd66c9edfea0b6d880bfb826480ae0c648be35 /sys/dev/mxge
parentcf4e18e619444dd7f4b9dde3ea1af1855e633c0a (diff)
downloadFreeBSD-src-45926e53d0a86af2776153b353c65aa3f9f6af08.zip
FreeBSD-src-45926e53d0a86af2776153b353c65aa3f9f6af08.tar.gz
Fix mxge_submit_8rx() to behave like the comments says it does,
and ensure that it copies at most 32 bytes at a time.
Diffstat (limited to 'sys/dev/mxge')
-rw-r--r--sys/dev/mxge/if_mxge.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/dev/mxge/if_mxge.c b/sys/dev/mxge/if_mxge.c
index a50d6c5..4a274fd 100644
--- a/sys/dev/mxge/if_mxge.c
+++ b/sys/dev/mxge/if_mxge.c
@@ -1705,7 +1705,9 @@ mxge_submit_8rx(volatile mcp_kreq_ether_recv_t *dst,
low = src->addr_low;
src->addr_low = 0xffffffff;
- mxge_pio_copy(dst, src, 8 * sizeof (*src));
+ mxge_pio_copy(dst, src, 4 * sizeof (*src));
+ mb();
+ mxge_pio_copy(dst + 4, src + 4, 4 * sizeof (*src));
mb();
dst->addr_low = low;
mb();
OpenPOWER on IntegriCloud