From owner-freebsd-bugs@FreeBSD.ORG Mon Jan 22 13:00:43 2007 Return-Path: X-Original-To: freebsd-bugs@hub.freebsd.org Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5FA3616A417 for ; Mon, 22 Jan 2007 13:00:43 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id 4B69513C46A for ; Mon, 22 Jan 2007 13:00:43 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l0MD0hlX049720 for ; Mon, 22 Jan 2007 13:00:43 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l0MD0gaK049716; Mon, 22 Jan 2007 13:00:42 GMT (envelope-from gnats) Date: Mon, 22 Jan 2007 13:00:42 GMT Message-Id: <200701221300.l0MD0gaK049716@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: Bruce Evans Cc: Subject: Re: kern/108199: System crash while trying to unmount manually ejected USB Flash drive X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Bruce Evans List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 22 Jan 2007 13:00:43 -0000 The following reply was made to PR kern/108199; it has been noted by GNATS. From: Bruce Evans To: Mark Linimon Cc: ggg_mail@inbox.ru, freebsd-gnats-submit@freebsd.org Subject: Re: kern/108199: System crash while trying to unmount manually ejected USB Flash drive Date: Mon, 22 Jan 2007 23:56:28 +1100 (EST) On Mon, 22 Jan 2007, Mark Linimon wrote: > Synopsis: System crash while trying to unmount manually ejected USB Flash drive > This is a well-reported problem that is going to take some system > rearchitecting to fix. The underlying layers of the file system were > not initially written with the criteria that file systems were dynamic. > But thanks for reporting. However, the underlying layers were initially more robust against panics although not against data loss. They simply discarded buffers after the first write error. Now, unwriteable buffers are supposed to be retried forever, but sometimes even that doesn't happen, since there is code that still hasn't caught up with the changed error handling. I think the panic was fixed in ffs a few years ago (umount -f just returns an error in at least my version of FreeBSD-5.2). Some negative progress has been made since then, so ffs now panics near where msdosfs used to panic (vinvalbuf() hasn't caught up), and msdosfs doesn't get that far since it now panics in vop_stdfsync() in the diagnostic message about the problem. Bruce