Date: Fri, 23 Jan 2026 17:16:27 +0000 From: Mark Johnston <markj@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Alexander Motin <mav@FreeBSD.org> Subject: git: 6abefcdd2585 - stable/14 - Fix SATA NCQ error recovery after 25375b1415 Message-ID: <6973aceb.38212.6d23604f@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=6abefcdd2585019bda24dddeab49040ee39f4079 commit 6abefcdd2585019bda24dddeab49040ee39f4079 Author: Alexander Motin <mav@FreeBSD.org> AuthorDate: 2024-06-27 13:29:23 +0000 Commit: Mark Johnston <markj@FreeBSD.org> CommitDate: 2026-01-23 17:12:50 +0000 Fix SATA NCQ error recovery after 25375b1415 Since that commit ahci(4), siis(4) and mvs(4) drivers ended up using wrong command to fetch error information for NCQ commands. Since ATA errors are not very informative to begin with, the only noticeable effect is a lack of retries on those errors by CAM. MFC after: 1 week PR: 279978 (cherry picked from commit 87085c12ba8fa51f777bc636df67008b45e20d1c) --- sys/dev/ahci/ahci.c | 2 +- sys/dev/mvs/mvs.c | 2 +- sys/dev/siis/siis.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/dev/ahci/ahci.c b/sys/dev/ahci/ahci.c index 80cbdefd1e29..f9a44f93c26f 100644 --- a/sys/dev/ahci/ahci.c +++ b/sys/dev/ahci/ahci.c @@ -2177,7 +2177,7 @@ completeall: } xpt_setup_ccb(&ccb->ccb_h, ch->hold[i]->ccb_h.path, ch->hold[i]->ccb_h.pinfo.priority); - if (ccb->ccb_h.func_code == XPT_ATA_IO) { + if (ch->hold[i]->ccb_h.func_code == XPT_ATA_IO) { /* READ LOG */ ccb->ccb_h.recovery_type = RECOVERY_READ_LOG; ccb->ccb_h.func_code = XPT_ATA_IO; diff --git a/sys/dev/mvs/mvs.c b/sys/dev/mvs/mvs.c index 21e0984342d0..0c4c36d001ec 100644 --- a/sys/dev/mvs/mvs.c +++ b/sys/dev/mvs/mvs.c @@ -1799,7 +1799,7 @@ completeall: } xpt_setup_ccb(&ccb->ccb_h, ch->hold[i]->ccb_h.path, ch->hold[i]->ccb_h.pinfo.priority); - if (ccb->ccb_h.func_code == XPT_ATA_IO) { + if (ch->hold[i]->ccb_h.func_code == XPT_ATA_IO) { /* READ LOG */ ccb->ccb_h.recovery_type = RECOVERY_READ_LOG; ccb->ccb_h.func_code = XPT_ATA_IO; diff --git a/sys/dev/siis/siis.c b/sys/dev/siis/siis.c index 1e5fd5648c2d..372b3ca8a380 100644 --- a/sys/dev/siis/siis.c +++ b/sys/dev/siis/siis.c @@ -1396,7 +1396,7 @@ completeall: } xpt_setup_ccb(&ccb->ccb_h, ch->hold[i]->ccb_h.path, ch->hold[i]->ccb_h.pinfo.priority); - if (ccb->ccb_h.func_code == XPT_ATA_IO) { + if (ch->hold[i]->ccb_h.func_code == XPT_ATA_IO) { /* READ LOG */ ccb->ccb_h.recovery_type = RECOVERY_READ_LOG; ccb->ccb_h.func_code = XPT_ATA_IO;home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6973aceb.38212.6d23604f>
