Date: Fri, 2 Nov 2018 11:26:44 -0600 From: Warner Losh <imp@bsdimp.com> To: Ian Lepore <ian@freebsd.org> Cc: "freebsd-arch@freebsd.org" <freebsd-arch@freebsd.org> Subject: Re: NANDFS -- Any current users? Message-ID: <CANCZdfqG5R6v7E4vNGC66L66akAghNO1k6o6htMufEQUmOBg9g@mail.gmail.com> In-Reply-To: <1541178458.22340.242.camel@freebsd.org> References: <CANCZdfrZULYWd9vhykobHu585RPMSDN=bAZG9ZA3pjUhv3dwUw@mail.gmail.com> <1541178458.22340.242.camel@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Nov 2, 2018 at 11:07 AM Ian Lepore <ian@freebsd.org> wrote: > On Fri, 2018-11-02 at 11:01 -0600, Warner Losh wrote: > > Are there any current users of NANDFS? > > This may be a good thing to ask in arm@ and mips@. Some old arm kernel > configs include it, because some of the *Plug line of armv5 systems > come with compatible nand parts on the board (but of course just having > it in the kernel doesn't mean anyone is actually using it). > I'll be polling there to. > We tried to use it at $work a few years ago, but it was too buggy to > deploy. Fixes have been done to it since then, but I/we never re-tested > because we had an alternate homebrew solution. > I had similar experience... My analysis is that it can't possibly work. It fails to abide by the vnode locking protocol, so the vnodes can be freed up out from under the routines that are trying to use them as a locking protocol for their data. This has remained unfixed since it was identified in the 10-current time frame. I'd wanted to use it since an append only filesystem is well suited to SSDs, but found that while the code worked OKish on the system when there was no load, but as soon as you started churning vnodes it would panic. nandfs_lookup, for example, drops the lock and relocks the vnode without refing it so it can disappear as soon as it unlock returns if there's no reference. There's other places where there's lock ordering issues with its use of the lock manager and the way it mixes with mtx_lock/unlock. These two issues are what made me give up on it since the quick, naive changes revealed the next layer of issues that I'm not recalling at the moment. Warner
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfqG5R6v7E4vNGC66L66akAghNO1k6o6htMufEQUmOBg9g>