Date: Fri, 16 Jan 2004 08:31:01 -0800 (PST) From: Brian Feldman <green@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/fs/unionfs union_subr.c union_vnops.c Message-ID: <200401161631.i0GGV1en069849@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
green 2004/01/16 08:31:01 PST FreeBSD src repository Modified files: sys/fs/unionfs union_subr.c union_vnops.c Log: Fix an upper-vnode leak created in revision 1.52. When an upper-layer file has been removed, it should be purged from the cache, but it need not be removed from the directory stack causing corruption; instead, it will simply be removed once the last references and holds on it are dropped at the end of the unlink/rmdir system calls, and the normal !UN_CACHED VOP_INACTIVE() handler for unionfs finishes it off. This is easily reproduced by repeated "echo >file; rm file" on a unionfs mount. Strangely, "echo -n >file; rm file" didn't make it happen. Revision Changes Path 1.76 +11 -16 src/sys/fs/unionfs/union_subr.c 1.105 +2 -3 src/sys/fs/unionfs/union_vnops.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200401161631.i0GGV1en069849>