Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 19 Jul 2007 09:02:50 -0600 (MDT)
From:      "M. Warner Losh" <imp@bsdimp.com>
To:        idiotbg@gmail.com
Cc:        LoN_Kamikaze@gmx.de, freebsd-stable@freebsd.org, freebsd@meijome.net, olli@lurza.secnetix.de, josh@tcbug.org
Subject:   Re: removing external usb hdd without unmounting causes reboot?
Message-ID:  <20070719.090250.1387160138.imp@bsdimp.com>
In-Reply-To: <200707190943.55428.idiotbg@gmail.com>
References:  <20070719130252.6880b967@localhost> <469F101C.5060906@gmx.de> <200707190943.55428.idiotbg@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
In message: <200707190943.55428.idiotbg@gmail.com>
            Momchil Ivanov <idiotbg@gmail.com> writes:
: What is then the reason for the kernel not being able to unmount a
: filesystem whose provider is no longer present?

The problem is that the device driver has wound down, deallocated
memory, etc.  Now the kernel comes along with stale references to the
device and panic ensues.  It is really just that simple.  There's no
replacement of the now-dead device with dead calls.

And even if you fixed that, most of the file systems in the tree today
do not tolerate errors on writes at all and that also leads to
panics.  This is why firewire freezes the I/Os rather than failing
them (and why umount -f on a firewire drive hangs).

Warner



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070719.090250.1387160138.imp>