Date: Thu, 29 Nov 2007 16:37:31 -0800 From: Julian Elischer <julian@elischer.org> To: bv@wjv.com Cc: freebsd-fs@freebsd.org Subject: Re: File remove problem Message-ID: <474F5B4B.5070502@elischer.org> In-Reply-To: <20071130002750.GA36329@wjv.com> References: <474F4E46.8030109@nokia.com> <20071130002750.GA36329@wjv.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Bill Vermillion wrote: > On Fri, Nov 30, 2007 at 09:41 David Cecil saw "Error reading FAT table? > Try SKINNY table?" And promptly said: > >> Hi, > >> I've been looking into a problem we're seeing on FreeBSD 6.1, though I >> believe the bug will exist in current, or at least 7.0. > >> Under certain circumstances, when a file is >> removed from the filesystem, and the filesystem >> is remounted read-only immediately afterwards, >> an error such as the following is displayed: >> g_vfs_done():mirror/gmroots1f[WRITE(offset=1349058560, >> length=16384)]error = 1 > >> I have determined that the buffer contains an update to the >> inode for the file that's deleted. The inode for the directory >> change appears to be updated correctly. So what's not making it >> to disk is the updated file inode with its changed link counts >> (should now be zero). So, somehow this inode is being missed >> during the sync prior to the remount completing. > >> I'm still looking through the code to find the problem, but any >> insights from those more familiar with the code would be much >> appreciated. > > Are you sure the sync occurred? What happens if you run 'sync' > and then perform the above process? Kirk said that soft updates can take up to 3 syncs for the dependencies to flush through.. I don't know if that is relevant. One would think the making it read-only would call the same code as unmount to make sure everything was flushed through.. > > Bill > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?474F5B4B.5070502>