diff options
author | David Gwynne <dlg@cvs.openbsd.org> | 2016-04-14 00:26:39 +0000 |
---|---|---|
committer | David Gwynne <dlg@cvs.openbsd.org> | 2016-04-14 00:26:39 +0000 |
commit | 7b94a73c4c7cae7481aa386315ca8759e366a86b (patch) | |
tree | 7ce1af9579f6e276e7a7ac0c4e7b57ab4ca7c20e /sys | |
parent | e1de02a05fec85775dadbb3fcb3b2a10723a78d1 (diff) |
cut the memory for io buffers up into page sized chunks
nvme 1.0 does not use conventional scatter gather lists of
address+length pairs. instead, it simply expects a list of page
addresses. this should be ok if we only feed it single VA chunks
which map directly to only whole physical pages.
nvme 1.1 introduced another scather format, but still accepts the
1.0 format too. we'll stick to the 1.0 format so we can support 1.0
devs.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/dev/ic/nvme.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/ic/nvme.c b/sys/dev/ic/nvme.c index 0e3dc93cdc4..0417ec3dee8 100644 --- a/sys/dev/ic/nvme.c +++ b/sys/dev/ic/nvme.c @@ -1,4 +1,4 @@ -/* $OpenBSD: nvme.c,v 1.35 2016/04/14 00:19:57 dlg Exp $ */ +/* $OpenBSD: nvme.c,v 1.36 2016/04/14 00:26:38 dlg Exp $ */ /* * Copyright (c) 2014 David Gwynne <dlg@openbsd.org> @@ -970,7 +970,7 @@ nvme_ccbs_alloc(struct nvme_softc *sc, u_int nccbs) ccb = &sc->sc_ccbs[i]; if (bus_dmamap_create(sc->sc_dmat, sc->sc_mdts, sc->sc_max_sgl, - sc->sc_mdts, 0, BUS_DMA_NOWAIT | BUS_DMA_ALLOCNOW, + sc->sc_mps, sc->sc_mps, BUS_DMA_NOWAIT | BUS_DMA_ALLOCNOW, &ccb->ccb_dmamap) != 0) goto free_maps; |