Date: Thu, 22 Feb 2007 16:39:00 +0100 (CET) From: Oliver Fromme <olli@lurza.secnetix.de> To: freebsd-fs@FreeBSD.ORG, bjoern.koenig@alpha-tierchen.de, anderson@FreeBSD.ORG Subject: Re: The patch delete no umount eject flash disk freebsd panic Message-ID: <200702221539.l1MFd0Vr075915@lurza.secnetix.de> In-Reply-To: <45DDAE70.8010508@alpha-tierchen.de>
next in thread | previous in thread | raw e-mail | index | archive | help
Recently I had an idea to solve (or work around) the problem in a completely different way, using FUSE. With FUSE it would be possible (and quite simple, in fact) to implement an msdosfs-like file system as a userland daemon. The daemon could be started during boot and run until shutdown, i.e. the mount would exist all the time. You could insert and remove USB sticks, compact flash cards and other removable FAT media at will, without having to mount or umount. If you remove the device, the files would simply disappear from the mountpoint. Any files still open by processes would have to return some sensible error code (maybe EBADF or ESTALE). The actual code for the daemon could be borrowed from the kernel's msdosfs, or from mtools (ports/emulators/mtools). Unfortunately I don't have sufficient time right now for doing it myself. But if someone picks up that idea and implements it, it would be quite useful. Using FUSE isn't difficult, bascially you have to link against the library and implement handlers for a number of file system related functions (lookup, read, write etc.). Since it runs entirely in userland, there's no danger of kernel panics, and debugging is quite simple. Maybe something for the FreeBSD ideas web page ...? Best regards Oliver -- Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing b. M. Handelsregister: Registergericht Muenchen, HRA 74606, Geschäftsfuehrung: secnetix Verwaltungsgesellsch. mbH, Handelsregister: Registergericht Mün- chen, HRB 125758, Geschäftsführer: Maik Bachmann, Olaf Erb, Ralf Gebhart Any opinions expressed in this message are personal to the author and may not necessarily reflect the opinions of secnetix GmbH & Co KG in any way. FreeBSD-Dienstleistungen, -Produkte und mehr: http://www.secnetix.de/bsd "Being really good at C++ is like being really good at using rocks to sharpen sticks." -- Thant Tessman
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200702221539.l1MFd0Vr075915>