From owner-freebsd-bugs@FreeBSD.ORG Sun Oct 18 12:40:02 2009 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 95CEC1065692 for ; Sun, 18 Oct 2009 12:40:02 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 56F818FC13 for ; Sun, 18 Oct 2009 12:40:02 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id n9ICe2Sw067750 for ; Sun, 18 Oct 2009 12:40:02 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id n9ICe2Q2067749; Sun, 18 Oct 2009 12:40:02 GMT (envelope-from gnats) Resent-Date: Sun, 18 Oct 2009 12:40:02 GMT Resent-Message-Id: <200910181240.n9ICe2Q2067749@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Alexander Best Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C9E7F106566C for ; Sun, 18 Oct 2009 12:36:31 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from www.freebsd.org (www.freebsd.org [IPv6:2001:4f8:fff6::21]) by mx1.freebsd.org (Postfix) with ESMTP id B7A818FC08 for ; Sun, 18 Oct 2009 12:36:31 +0000 (UTC) Received: from www.freebsd.org (localhost [127.0.0.1]) by www.freebsd.org (8.14.3/8.14.3) with ESMTP id n9ICaVJI021013 for ; Sun, 18 Oct 2009 12:36:31 GMT (envelope-from nobody@www.freebsd.org) Received: (from nobody@localhost) by www.freebsd.org (8.14.3/8.14.3/Submit) id n9ICaVAd021012; Sun, 18 Oct 2009 12:36:31 GMT (envelope-from nobody) Message-Id: <200910181236.n9ICaVAd021012@www.freebsd.org> Date: Sun, 18 Oct 2009 12:36:31 GMT From: Alexander Best To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Cc: Subject: kern/139718: all mounted fs don't get synced during reboot/shutdown with >= 1 mounted inaccessible device X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 18 Oct 2009 12:40:02 -0000 >Number: 139718 >Category: kern >Synopsis: all mounted fs don't get synced during reboot/shutdown with >= 1 mounted inaccessible device >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Oct 18 12:40:01 UTC 2009 >Closed-Date: >Last-Modified: >Originator: Alexander Best >Release: 9.0-CURRENT >Organization: >Environment: FreeBSD otaku 9.0-CURRENT FreeBSD 9.0-CURRENT #0 r197914: Sat Oct 10 02:58:19 CEST 2009 root@otaku:/usr/obj/usr/src/sys/ARUNDEL i386 >Description: when the system is being shutdown or rebooted and a mounted device isn't accessible any longer all other mounted devices aren't being synced correctly and thus marked dirty. this also happens if the inaccessible device was mounted read-only. the reboot/shutdown sequence hangs after the message "All buffers synced.". after a reset all previosly mounted sttorage devices need to be fsck'ed. see this thread for further info: http://lists.freebsd.org/pipermail/freebsd-current/2009-October/012679.html Matthias Andree described the problem like this: "1. If the device for one file system is gone, why would I mark *other* file systems dirty? There is no reason to do so. 2. If a file system was mounted read-only, and its device is removed, there are by definition ZERO dirty buffers that we need to synch on shutdown, so why does the premature unplug-readonly-before-unmount spoil the shutdown?" >How-To-Repeat: 1. mount a removable device (e.g. an usb stick) (better use -r to prevent data loss) 2. unplug the device (without unmounting it) 3. `shutdown -r now` >Fix: >Release-Note: >Audit-Trail: >Unformatted: