The following reply was made to PR kernel/6524; it has been noted by GNATS.

From: Mark Kettenis <mark.kette...@xs4all.nl>
To: o...@bartula.de
Cc: gn...@openbsd.org, b...@cvs.openbsd.org
Subject: Re: kernel/6524: vge(4) goes dead under load on recent snapshots
Date: Thu, 16 Dec 2010 11:54:35 +0100 (CET)

 Does this diff fix the issue?
 
 Index: if_vge.c
 ===================================================================
 RCS file: /cvs/src/sys/dev/pci/if_vge.c,v
 retrieving revision 1.48
 diff -u -p -r1.48 if_vge.c
 --- if_vge.c   27 Aug 2010 17:08:00 -0000      1.48
 +++ if_vge.c   16 Dec 2010 10:52:53 -0000
 @@ -915,6 +915,9 @@ vge_newbuf(struct vge_softc *sc, int idx
  #define VGE_RXCHUNK 4
        sc->vge_rx_consumed++;
        if (sc->vge_rx_consumed == VGE_RXCHUNK) {
 +              bus_dmamap_sync(sc->sc_dmat, rxmap, 0,
 +                  rxmap->dm_mapsize, BUS_DMASYNC_PREWRITE);
 +
                for (i = idx; i != idx - sc->vge_rx_consumed; i--)
                        sc->vge_ldata.vge_rx_list[i].vge_sts |=
                            htole32(VGE_RDSTS_OWN);

Reply via email to