Date: Wed, 15 Sep 2010 11:11:19 -0400 From: Ed Maste <emaste@freebsd.org> To: Attilio Rao <attilio@freebsd.org> Cc: Kostik Belousov <kostikbel@gmail.com>, svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r212661 - head/sys/dev/aac Message-ID: <20100915151119.GB1522@sandvine.com> In-Reply-To: <AANLkTikMxAZDa9KGvY-aPfCJ=gQL0gNpF5Marsbw-Wuv@mail.gmail.com> References: <201009151424.o8FEOLZE039185@svn.freebsd.org> <20100915145209.GK2465@deviant.kiev.zoral.com.ua> <AANLkTikMxAZDa9KGvY-aPfCJ=gQL0gNpF5Marsbw-Wuv@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Sep 15, 2010 at 04:57:15PM +0200, Attilio Rao wrote: > 2010/9/15 Kostik Belousov <kostikbel@gmail.com>: > > On Wed, Sep 15, 2010 at 02:24:21PM +0000, Attilio Rao wrote: > >> Author: attilio > >> Date: Wed Sep 15 14:24:21 2010 > >> New Revision: 212661 > >> URL: http://svn.freebsd.org/changeset/base/212661 > >> > >> Log: > >> ?? Fix bogus busying mechanism from cdevsw callbacks: > >> ?? - D_TRACKCLOSE may be used there as d_close() are expected to match up > >> ?? ?? d_open() calls > > VFS is not very good at properly calling VOP_CLOSE(). As example, premature > > vnode reclaim due to devfs unmount would cause VOP_CLOSE() to be called > > only once despite the number of opens being ??> 1. > > Yes. > That makes implementing a similar semantic in drivers very difficult > and not very well fixable, in particular within the d_* callbacks. > I'm seriously wondering if we might just make a shortcut just for > supporting such a feature (busying the device on real devfs entry > activity) as several of them may be needing and may be probabilly > needing to be 100%. > Luckilly, it seems that such paths are not experienced very frequently. Yeah, the old code in aac(4) meant that the module couldn't be unloaded after running the arcconf management tool. This change at least works for the common cases. The mfi(4) driver has a similar local refcount / prevent unload test, and I imagine many other drivers want to implement the same functionality. -Ed
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100915151119.GB1522>