Date: Tue, 29 Oct 2002 16:26:41 -0800 (PST) From: Matthew Dillon <dillon@apollo.backplane.com> To: Gregory Bond <gnb@itga.com.au> Cc: freebsd-stable@FreeBSD.ORG Subject: Re: unmounting disabled with writeprotected floppy Message-ID: <200210300026.g9U0QfQW012243@apollo.backplane.com> References: <200210292337.KAA25179@lightning.itga.com.au>
next in thread | previous in thread | raw e-mail | index | archive | help
:> I think a write-protected floppy should _not_ be allowed to be
:> mounted _writeable_ at all. It should either not be mounted at all
:> or be mounted readonly implicitly.
:
:This is a hardware limitation. The only way to discover a floppy is
:write-protected is to try and write to it and get an error back.
:
My take on this whole thing is:
* There is a generally recognized problem with user-inserted media.
* Some potential solutions clash with the necessity that the OS
keep its representation of the data in a sane state, and the OS
really does not currently have a good/safe framework to deal with the
situation (error'd dirty write buffers). Such a framework is not
as simple as you might think. Consider async writes on a softupdates
managed buffer for example. Wishing for it isn't going make it happen.
* The best overall solution to the floppy issue, in my view, is to be
able to throw away the dirty write-error'd buffers at umount time,
and to perhaps mark them in a way that reduces the system's constant
attempts to write them out while the mount is still active so it
does not intefere with unrelated system operation.
So. Maybe a BX_HADWRITEERROR flag to begin with to indicate historical
write errors (B_ERROR cannot be used for this purpose), and a flag to
umount that tells it to get rid of any dirty buffers with
BX_HADWRITEERROR set, allowing the umount operation to succeed. That
seems to be a reasonable interim solution (and one that would not have
to be ripped out later if a more involved solution is implemented).
-Matt
Matthew Dillon
<dillon@backplane.com>
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200210300026.g9U0QfQW012243>
