From owner-cvs-src@FreeBSD.ORG Tue Dec 16 09:05:06 2003 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9DF5F16A4CF; Tue, 16 Dec 2003 09:05:06 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D537E43D45; Tue, 16 Dec 2003 09:05:05 -0800 (PST) (envelope-from jeff@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.10/8.12.10) with ESMTP id hBGH550B019698; Tue, 16 Dec 2003 09:05:05 -0800 (PST) (envelope-from jeff@repoman.freebsd.org) Received: (from jeff@localhost) by repoman.freebsd.org (8.12.10/8.12.10/Submit) id hBGH553d019697; Tue, 16 Dec 2003 09:05:05 -0800 (PST) (envelope-from jeff) Message-Id: <200312161705.hBGH553d019697@repoman.freebsd.org> From: Jeff Roberson Date: Tue, 16 Dec 2003 09:05:05 -0800 (PST) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/kern vfs_subr.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Dec 2003 17:05:06 -0000 jeff 2003/12/16 09:05:05 PST FreeBSD src repository Modified files: sys/kern vfs_subr.c Log: - When doing a forced unmount, VFS attempts to keep VCHR vnodes valid by reassigning their v_ops field to specfs, detaching from the mountpoint, etc. However, this is not sufficient. If we vclean() the vnode the pages owned by the vnode are lost, potentially while buffers reference them. Implement parts of vclean() seperately in vgonechrl() so that the pages and bufs associated with a device vnode are not destroyed while in use. Revision Changes Path 1.474 +28 -1 src/sys/kern/vfs_subr.c