Date: Fri, 21 Jan 2022 02:26:59 GMT From: Alexander Motin <mav@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Subject: git: 0c3d88b9ab38 - stable/13 - nvme: Explain a workaround a little better Message-ID: <202201210226.20L2Qx2l001383@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch stable/13 has been updated by mav: URL: https://cgit.FreeBSD.org/src/commit/?id=0c3d88b9ab385b6b84e77629676eda74211af65c commit 0c3d88b9ab385b6b84e77629676eda74211af65c Author: Warner Losh <imp@FreeBSD.org> AuthorDate: 2021-10-01 15:53:10 +0000 Commit: Alexander Motin <mav@FreeBSD.org> CommitDate: 2022-01-21 02:07:30 +0000 nvme: Explain a workaround a little better The don't touch the mmio of the drive after we do a EN 1->0 transition is only for a tiny number of dirves that have this unforunate issue. Sponsored by: Netflix (cherry picked from commit 77054a897f6440632267e75ebe31793c7555b79e) --- sys/dev/nvme/nvme_ctrlr.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/dev/nvme/nvme_ctrlr.c b/sys/dev/nvme/nvme_ctrlr.c index 10b30c584f71..eb95fa33b90b 100644 --- a/sys/dev/nvme/nvme_ctrlr.c +++ b/sys/dev/nvme/nvme_ctrlr.c @@ -318,10 +318,10 @@ nvme_ctrlr_disable(struct nvme_controller *ctrlr) cc &= ~NVME_CC_REG_EN_MASK; nvme_mmio_write_4(ctrlr, cc, cc); + /* - * Some drives have issues with accessing the mmio after we - * disable, so delay for a bit after we write the bit to - * cope with these issues. + * A few drives have firmware bugs that freeze the drive if we access + * the mmio too soon after we disable. */ if (ctrlr->quirks & QUIRK_DELAY_B4_CHK_RDY) pause("nvmeR", MSEC_2_TICKS(B4_CHK_RDY_DELAY_MS));
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202201210226.20L2Qx2l001383>