freebsd-dev/sys/dev/nvme
Justin Hibbits 2e0090af65 nvme(4): Add bus_dmamap_sync() at the end of the request path
Summary:
Some architectures, in this case powerpc64, need explicit synchronization
barriers vs device accesses.

Prior to this change, when running 'make buildworld -j72' on a 18-core
(72-thread) POWER9, I would see controller resets often.  With this change, I
don't see these resets messages, though another tester still does, for yet to be
determined reasons, so this may not be a complete fix.  Additionally, I see a
~5-10% speed up in buildworld times, likely due to not needing to reset the
controller.

Reviewed By: jimharris
Differential Revision: https://reviews.freebsd.org/D16570
2018-08-03 20:04:06 +00:00
..
nvme_ctrlr_cmd.c Refactor NVMe CAM integration. 2018-05-25 03:34:33 +00:00
nvme_ctrlr.c Refactor NVMe CAM integration. 2018-05-25 03:34:33 +00:00
nvme_ns_cmd.c NVMe: Add big-endian support 2018-02-22 13:32:31 +00:00
nvme_ns.c Set si_drv1 for nvmeXnsY in a new race-free way. 2018-04-30 19:21:20 +00:00
nvme_private.h Refactor NVMe CAM integration. 2018-05-25 03:34:33 +00:00
nvme_qpair.c nvme(4): Add bus_dmamap_sync() at the end of the request path 2018-08-03 20:04:06 +00:00
nvme_sim.c Refactor NVMe CAM integration. 2018-05-25 03:34:33 +00:00
nvme_sysctl.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
nvme_test.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
nvme_util.c sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
nvme.c Refactor NVMe CAM integration. 2018-05-25 03:34:33 +00:00
nvme.h Refactor NVMe CAM integration. 2018-05-25 03:34:33 +00:00