buffers not syncing correctly during shutdown
Alexander Best
alexbestms at math.uni-muenster.de
Wed Oct 14 13:30:45 UTC 2009
Gary Jennejohn schrieb am 2009-10-14:
> On Wed, 14 Oct 2009 12:49:54 +0200 (CEST)
> Alexander Best <alexbestms at math.uni-muenster.de> wrote:
> > hi there,
> > to keep it short:
> > 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`
> > what happens is that the usual shutdown routine gets processed
> > until all
> > buffers are synced, but then the system stalls.
> > after resetting the system all devices (which were supposed to be
> > synced) are
> > marked dirty and are being fsck'ed.
> > cheers.
> > alex
> > oh...and i'm running FreeBSD otaku 9.0-CURRENT FreeBSD 9.0-CURRENT
> > #0 r197914:
> > Sat Oct 10 02:58:19 CEST 2009
> > root at otaku:/usr/obj/usr/src/sys/ARUNDEL
> > i386
> I'm inclined to say that umount'ing the file systems is failing
> because
> you pulled the USB stick out without doing umount. Of course, that
> results in all file systems still being marked dirty. Obviously,
> this
> pathological case isn't being handled.
> I personally don't see why it ever should be handled. This is UNIX
> not
> Windows and users should be smart enough to know that they umount
> such
> devices before removing them otherwise nasty things can happen.
> ---
> Gary Jennejohn
this is 2009 and not the 70s/80s. the amount or non-removable devices is
declining day by day. eventually all storage devices will become removable and
freebsd should keep up with this development.
i don't think labelling this obvious bug as a grand unix feature is valid.
also there are other scenarios where this problem can occur. if the device
produces i/o errors you won't be able to unmount it even with the -f switch.
alex
More information about the freebsd-current
mailing list