diff options
-rw-r--r-- | sys/dev/pci/if_vic.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/dev/pci/if_vic.c b/sys/dev/pci/if_vic.c index 259f442104f..dd8d58e4098 100644 --- a/sys/dev/pci/if_vic.c +++ b/sys/dev/pci/if_vic.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_vic.c,v 1.42 2007/04/17 03:55:07 dlg Exp $ */ +/* $OpenBSD: if_vic.c,v 1.43 2007/04/21 12:52:46 dlg Exp $ */ /* * Copyright (c) 2006 Reyk Floeter <reyk@openbsd.org> @@ -771,9 +771,13 @@ vic_rx_proc(struct vic_softc *sc) printf("%s: mbuf alloc failed\n", DEVNAME(sc)); break; } + bus_dmamap_sync(sc->sc_dmat, rxb->rxb_dmamap, 0, + rxb->rxb_m->m_pkthdr.len, BUS_DMAMAP_PREREAD); + rxd->rx_physaddr = rxb->rxb_dmamap->dm_segs[0].ds_addr; rxd->rx_buflength = rxb->rxb_m->m_pkthdr.len; rxd->rx_length = 0; + rxd->rx_owner = VIC_OWNER_DRIVER; ifp->if_ipackets++; |