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).
This commit is contained in:
Marius Strobl 2011-12-18 17:48:54 +00:00
parent cf2cbe3458
commit e0a4047562

View File

@ -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 */