summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormarius <marius@FreeBSD.org>2011-12-18 17:48:54 +0000
committermarius <marius@FreeBSD.org>2011-12-18 17:48:54 +0000
commitdc82ddf5204d572d72e326d3e742e76b42fff1a1 (patch)
tree690614e478d7827d564cd911c525a5e0d6c6cea1
parentf0e45fd7759501ef8a95d542c1d70be3ddf200b6 (diff)
downloadFreeBSD-src-dc82ddf5204d572d72e326d3e742e76b42fff1a1.zip
FreeBSD-src-dc82ddf5204d572d72e326d3e742e76b42fff1a1.tar.gz
Fix compilation on sparc64 by actually supplying the bus_dma_tag_t member
of the rx_ring to bus_dmamap_sync(9). Given that netmap code tries to obtain the bus addresses of netmap buffers via vtophys(9) instead of using bus_dma(9) it currently has zero chance of actually working on sparc64 though (and for that matter f.e. also not with MACs limited to 32-bit DMA on x86 machines with more than 4GB of RAM).
-rw-r--r--sys/dev/netmap/if_em_netmap.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/dev/netmap/if_em_netmap.h b/sys/dev/netmap/if_em_netmap.h
index 681a652..03951d4 100644
--- a/sys/dev/netmap/if_em_netmap.h
+++ b/sys/dev/netmap/if_em_netmap.h
@@ -329,7 +329,7 @@ em_netmap_rxsync(void *a, u_int ring_nr, int do_lock)
if ((curr->status & E1000_RXD_STAT_DD) == 0)
break;
ring->slot[j].len = le16toh(curr->length);
- bus_dmamap_sync(rxr->tag, rxr->rx_buffers[l].map,
+ bus_dmamap_sync(rxr->rxtag, rxr->rx_buffers[l].map,
BUS_DMASYNC_POSTREAD);
j = (j == lim) ? 0 : j + 1;
/* make sure next_to_refresh follows next_to_check */
OpenPOWER on IntegriCloud