summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorDavid Gwynne <dlg@cvs.openbsd.org>2016-04-14 00:26:39 +0000
committerDavid Gwynne <dlg@cvs.openbsd.org>2016-04-14 00:26:39 +0000
commit7b94a73c4c7cae7481aa386315ca8759e366a86b (patch)
tree7ce1af9579f6e276e7a7ac0c4e7b57ab4ca7c20e /sys
parente1de02a05fec85775dadbb3fcb3b2a10723a78d1 (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.c4
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;