vmwareでNetBSDを動かすとネットワークあたりで落ちるので-currentから引っ張ってきて対応。for NetBSD-3.1.1:
*** if_pcn.c.org Mon Oct 29 15:48:11 2007 --- if_pcn.c Mon Oct 29 15:56:54 2007 *************** *** 127,132 **** --- 127,133 ---- * transmit logic can deal with this, we just are hoping to sneak by. */ #define PCN_NTXSEGS 16 + #define PCN_NTXSEGS_VMWARE 8 #define PCN_TXQUEUELEN 128 #define PCN_TXQUEUELEN_MASK (PCN_TXQUEUELEN - 1) *************** *** 712,720 **** } /* Create the transmit buffer DMA maps. */ for (i = 0; i < PCN_TXQUEUELEN; i++) { if ((error = bus_dmamap_create(sc->sc_dmat, MCLBYTES, ! PCN_NTXSEGS, MCLBYTES, 0, 0, &sc->sc_txsoft[i].txs_dmamap)) != 0) { printf("%s: unable to create tx DMA map %d, " "error = %d\n", sc->sc_dev.dv_xname, i, error); --- 713,722 ---- } /* Create the transmit buffer DMA maps. */ + printf("%s: VMware Tx segment count bug detected\n", sc->sc_dev.dv_xname); for (i = 0; i < PCN_TXQUEUELEN; i++) { if ((error = bus_dmamap_create(sc->sc_dmat, MCLBYTES, ! PCN_NTXSEGS_VMWARE, MCLBYTES, 0, 0, &sc->sc_txsoft[i].txs_dmamap)) != 0) { printf("%s: unable to create tx DMA map %d, " "error = %d\n", sc->sc_dev.dv_xname, i, error);