Date: Wed, 15 Sep 2010 16:57:15 +0200 From: Attilio Rao <attilio@freebsd.org> To: Kostik Belousov <kostikbel@gmail.com> Cc: 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: <AANLkTikMxAZDa9KGvY-aPfCJ=gQL0gNpF5Marsbw-Wuv@mail.gmail.com> In-Reply-To: <20100915145209.GK2465@deviant.kiev.zoral.com.ua> References: <201009151424.o8FEOLZE039185@svn.freebsd.org> <20100915145209.GK2465@deviant.kiev.zoral.com.ua>
next in thread | previous in thread | raw e-mail | index | archive | help
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: >> =C2=A0 Fix bogus busying mechanism from cdevsw callbacks: >> =C2=A0 - D_TRACKCLOSE may be used there as d_close() are expected to mat= ch up >> =C2=A0 =C2=A0 d_open() calls > VFS is not very good at properly calling VOP_CLOSE(). As example, prematu= re > vnode reclaim due to devfs unmount would cause VOP_CLOSE() to be called > only once despite the number of opens being =C2=A0> 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. Attilio --=20 Peace can only be achieved by understanding - A. Einstein
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTikMxAZDa9KGvY-aPfCJ=gQL0gNpF5Marsbw-Wuv>