From owner-freebsd-stable@freebsd.org Mon Jul 11 17:31:02 2016 Return-Path: Delivered-To: freebsd-stable@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A2DB4B9214C for ; Mon, 11 Jul 2016 17:31:02 +0000 (UTC) (envelope-from karl@denninger.net) Received: from mail.denninger.net (denninger.net [70.169.168.7]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 747AF1ABD for ; Mon, 11 Jul 2016 17:31:02 +0000 (UTC) (envelope-from karl@denninger.net) Received: from [192.168.1.40] (Karl-Desktop.Denninger.net [192.168.1.40]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.denninger.net (Postfix) with ESMTPSA id 40B293A7A09 for ; Mon, 11 Jul 2016 12:31:00 -0500 (CDT) Subject: Re: Not-so stable if you take a CAM error.... To: freebsd-stable@freebsd.org References: <2b0c454b-c1a0-4b5b-e778-bf0939e90ae1@denninger.net> <6e9c07e1-12a6-a7cd-f775-6b0fe5a706bc@denninger.net> <1468243977.72182.118.camel@freebsd.org> <877f5e8e-c1e7-6fb0-6ceb-031ce3e68582@denninger.net> <1468254746.72182.121.camel@freebsd.org> From: Karl Denninger Message-ID: Date: Mon, 11 Jul 2016 12:30:34 -0500 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: <1468254746.72182.121.camel@freebsd.org> Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-512; boundary="------------ms000401070808090703050005" X-Content-Filtered-By: Mailman/MimeDel 2.1.22 X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Jul 2016 17:31:02 -0000 This is a cryptographically signed message in MIME format. --------------ms000401070808090703050005 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable On 7/11/2016 11:32, Ian Lepore wrote: > On Mon, 2016-07-11 at 09:50 -0400, Brandon Allbery wrote: >> On Mon, Jul 11, 2016 at 9:46 AM, Karl Denninger >> wrote: >> >>> Here's the backtrace ... sounds like expected behavior, which is >>> not-so >>> good all-in for a situation like this. I guess the strategy is to >>> turn >>> off softupdates before attempting such an update so as not to crash >>> the >>> host machine if there's a problem with the card. >>> >> I would tend to assume that removable media should not have >> softupdates >> enabled. Even with properly working media, it's practically begging >> for >> corruption. >> > Writing to an sdcard without softupdates enabled will be an exercise in= > patience. Like, come back next week and maybe it'll be done. > > The only thing that comes to mind with this is maybe some sort of mount= > flag to say you're willing to live with any amount of filesystem > corruption in lieu of panicking. I'm not sure how easy/practical that > would be to implement, though. > > -- Ian Why not force-detach the volume that takes the error instead of a panic()= ? That would lead to a panic if the detached volume was the system volume (obviously) but for a data volume it would simply result in it being forcibly unmounted (and dirty, so if it's corrupt it will get caught when reattached.) It seems that the current paradigm of saying "screw you, panic the machine" violates the principle of least astonishment and is overly punitive vis-a-vis necessity. Refusing further I/O because the volume may now have a corrupt filesystem appears to be facially reasonable, but that doesn't necessarily wind up being fatal the system itself -- it is if that's the system volume and is not covered by some sort of redundancy, obviously, but it's not in all cases. (Note that you can't just unmount the filesystem involved in the error; it has to be the volume that gets forcibly detached and whatever flows through from that you have to live with. The reason is that on any sort of solid-state media the OS has zero control over zoning and write amplification means far more the data you were actually modifying may have been lost -- it's entirely possible that *several megabytes* of data just got trashed by the write error, and it's even possible that the block(s) involved cross a filesystem boundary!) --=20 Karl Denninger karl@denninger.net /The Market Ticker/ /[S/MIME encrypted email preferred]/ --------------ms000401070808090703050005 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature 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 WNK3SfXD5xUfO8iVLiy8aUJHjD8AAAAAAAA= --------------ms000401070808090703050005--