Re: myx 64-bit dma
Brad Smith <[email protected]>
| Newsgroups | gmane.os.openbsd.tech |
|---|---|
| Message-ID | <[email protected]> |
On Thu, Mar 26, 2026 at 01:46:42PM -0400, Brad Smith wrote: > With myx(4) the BUS_DMA_64BIT flag is missing from bus_dmamem_alloc(). > > Tested with > > myx0 at pci19 dev 0 function 0 "Myricom Z8E" rev 0x01: msi, model 10G-PCIE2-8BL2-2S, address 00:60:dd:45:ba:f8 Re-tested again with an update to date kernel. Index: if_myx.c =================================================================== RCS file: /cvs/src/sys/dev/pci/if_myx.c,v retrieving revision 1.121 diff -u -p -u -p -r1.121 if_myx.c --- if_myx.c 3 Jun 2025 00:20:31 -0000 1.121 +++ if_myx.c 27 Jun 2026 19:54:56 -0000 @@ -523,7 +523,7 @@ myx_attachhook(struct device *self) ifp->if_softc = sc; ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; - ifp->if_xflags = IFXF_MPSAFE; + ifp->if_xflags = IFXF_MPSAFE | IFXF_MBUF_64BIT; ifp->if_ioctl = myx_ioctl; ifp->if_qstart = myx_start; ifp->if_watchdog = myx_watchdog; @@ -661,7 +661,7 @@ myx_dmamem_alloc(struct myx_softc *sc, s return (1); if (bus_dmamem_alloc(sc->sc_dmat, mxm->mxm_size, align, 0, &mxm->mxm_seg, 1, &mxm->mxm_nsegs, - BUS_DMA_WAITOK | BUS_DMA_ZERO) != 0) + BUS_DMA_WAITOK | BUS_DMA_ZERO | BUS_DMA_64BIT) != 0) goto destroy; if (bus_dmamem_map(sc->sc_dmat, &mxm->mxm_seg, mxm->mxm_nsegs, mxm->mxm_size, &mxm->mxm_kva, BUS_DMA_WAITOK) != 0)