From nobody Fri Jan 17 21:10:37 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4YZXSs4jD4z5kDyC; Fri, 17 Jan 2025 21:10:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4YZXSs1XtZz47dM; Fri, 17 Jan 2025 21:10:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1737148237; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TFKylcMHdmJM97fEfNpTGFq7Zz3v+tBtvZ1q17U0xiI=; b=DFp6HW/sdho+Bah5Mr1qPkeYH9Z3AmcVluopdPApmwT+Ygphsoen1OVbeafHTDe9EvhPVr oY8CvI6z3pxvGKeWPC4kpoJDyq7GQ7K/8nO0BVhjlzv2PZUOfwc7NVt3JR4AM1h4xZyZdR N/IPDd7z/3gRsVPDTO7C/jy9k20tTU49lVPew5nMcbbD0TC6FP2WncjuEHeDfMZ8AWV6lr 5k3v1HJss8bg2FgAFt2PNLXvdzBKPYSuGUs2cCxTH4SqS+yL6O2SrRT8p6BXcwL2Ug6CoB qVjCMP8rhrUgoCYspURqdJSf98FyIbRPnanp0iMvpiYIJSyrD91ktUosbMahuw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1737148237; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TFKylcMHdmJM97fEfNpTGFq7Zz3v+tBtvZ1q17U0xiI=; b=hJkFUsMmFVGU6bkgf65SIC4uNBcvMV//RpvDVe7oSc03qCgdJ42muGa8QheO+lSeooWR1R /9egTvAvVJaGbkYPPjYe1XM2FtefIUfrw729n68umNWXzoCm3n3ZW7AdOUUanuwR734LSM QNHlcMfKHrWguvD1tkDuNAWxgxBhWtcmMx023TvbIVKGmeQB3YcTHiEK0pWFGVxzrQ377f kABuS3fkDzRmpnWqsMHmf9U+qfYtauI9W5uamye56EEQyRlrknYHWyo8BjyZgqndongcd+ sN43LpDshWyP4NqS50W9SyAAI3+Yhzsp0Me1nhpPJBSVgYyopf1l7xo5R1JI9A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1737148237; a=rsa-sha256; cv=none; b=Q1AvHBxGaVwsDyHZ8Nj6N4HTqtJZgta62T3Q9Wr/9K1sDezlFpB8EXRBdIvhQNwQKBSJ0t +JU9onTho532ULMQWYcDaynRog/9JepTDnSbiMt1zzxwVmf1rnzIgjxrNcEMlXJ03rb/RT HKeRZ8wMVCowM1opdqdU2kLIGDR4MFvivd2eTmKO8ac4/mXFmLW7MGREoXdtjmxGtpHolL nmcwo6v1sF5q6/RBA2mhfTYmtiM8U1gQ63oGG67w9ScYbzqkkAGgvatGf6fE5Rva7gZ5X2 06DP6SA5PpEIrkUEwqD11I5r6Eolk0giI0ZMqdOSkzAqRSat/cjuWyIsxU0jFw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4YZXSs10CGzb6Z; Fri, 17 Jan 2025 21:10:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 50HLAb7b004394; Fri, 17 Jan 2025 21:10:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 50HLAbia004391; Fri, 17 Jan 2025 21:10:37 GMT (envelope-from git) Date: Fri, 17 Jan 2025 21:10:37 GMT Message-Id: <202501172110.50HLAbia004391@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: a8b49e7c6629 - main - cam: Add 3e/3 as a fatal code List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a8b49e7c66292852339481536f039719e7914200 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=a8b49e7c66292852339481536f039719e7914200 commit a8b49e7c66292852339481536f039719e7914200 Author: Warner Losh AuthorDate: 2025-01-17 21:06:32 +0000 Commit: Warner Losh CommitDate: 2025-01-17 21:07:40 +0000 cam: Add 3e/3 as a fatal code We see this error: (da4:mps0:0:3:0): SCSI sense: HARDWARE FAILURE asc:3e,3 (Logical unit failed self-test) for drives that have failed. Our vendor tells us there's no recovery from that state, though we can still grab logs from the drives and run their diagnostics. Drives in this state need to bascially be remanufactured because some part of them has failed. The prior default behavior is to retry, and retrying takes a long time to work out. Instead, short-circuit the retries and fail right away. I selected ENXIO because no I/O to LBAs is possible for drives in this state (both my experience and per vendor). Some googling suggests that other vendors behave identically, but it was inconclusive. Should this be too pessimistic, we can adjust in the future. Also, this is with some aging drives in our fleet, and if we have more than one drive in this state, our systems take so long to get to mountroot that the watchdog fires sometimes. Adding this patch makes them boot reliably again. MFC After: 1 week Sponsored by: Netflix Reviewed by: mav Differential Revision: https://reviews.freebsd.org/D48505 --- sys/cam/scsi/scsi_all.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/cam/scsi/scsi_all.c b/sys/cam/scsi/scsi_all.c index a26354e3dd97..0f31757cae25 100644 --- a/sys/cam/scsi/scsi_all.c +++ b/sys/cam/scsi/scsi_all.c @@ -2308,7 +2308,7 @@ static struct asc_table_entry asc_table[] = { { SST(0x3E, 0x02, SS_RDEF, "Timeout on logical unit") }, /* DTLPWROMAEBKVF */ - { SST(0x3E, 0x03, SS_RDEF, /* XXX TBD */ + { SST(0x3E, 0x03, SS_FATAL | ENXIO, "Logical unit failed self-test") }, /* DTLPWROMAEBKVF */ { SST(0x3E, 0x04, SS_RDEF, /* XXX TBD */