Date: Wed, 7 Aug 2002 20:38:31 -0400 (EDT) From: Rashim Gupta <guptar@cs.rpi.edu> To: Terry Lambert <tlambert2@mindspring.com> Cc: "David E. Cross" <crossd@cs.rpi.edu>, <fs@freebsd.org> Subject: Re: vnodes (UFS journaling)? Message-ID: <Pine.GSO.4.31.0208072033520.24055-100000@dishwasher.cs.rpi.edu> In-Reply-To: <3D51A6A3.87B90E3B@mindspring.com>
next in thread | previous in thread | raw e-mail | index | archive | help
we are trying to implement a logging facility for the File System. Hence we need to open the log file and keep its vnode open throughout the duration while the system is mounted. Hence, we cannot free the vnode after searching for it using the root file system since we need to access it later on. However, if we do not return the vnode, then doing an "ls -al" in the dirctory where the log file is present hangs the kernel. Any suggestions how we can solve this problem. Thanks Rashim Gupta On Wed, 7 Aug 2002, Terry Lambert wrote: > "David E. Cross" wrote: > > Ok, we've noticed an "unfortunate" side-effect of our work. We leak data > > (part of the journal shows up in other files). I think it is because > > of our handling of the vnode, and it being reused for other files (as > > oppsoed to trashing memory, etc. The entries it writes in the files are > > valid). We've tried _not_ calling vput(jvp) on it after the initial > > open but then any access to the file hangs the kernel (in inode). How > > can we say "don't reuse this" but allow other people to access it? > > Wow. This is an incredibly opaque question. > > The normal way you prevent reuse is "don't give it back to the > system in the first place, and it won't get given to someone > else *by* the system". > > The normal way you make someone's reference to it "stale" is > "assign deadops to it". > > Under no circumstances should you give it back to the system > while there are references to it at all. > > What is it that you are trying to do with the vnode? > > -- Terry To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-fs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.4.31.0208072033520.24055-100000>