From owner-cvs-all Sat Nov 25 18:55:19 2000 Delivered-To: cvs-all@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 969FD37B479; Sat, 25 Nov 2000 18:55:15 -0800 (PST) Received: (from dillon@localhost) by freefall.freebsd.org (8.9.3/8.9.2) id SAA07705; Sat, 25 Nov 2000 18:55:15 -0800 (PST) (envelope-from dillon@FreeBSD.org) Message-Id: <200011260255.SAA07705@freefall.freebsd.org> From: Matt Dillon Date: Sat, 25 Nov 2000 18:55:15 -0800 (PST) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/kern vfs_bio.c vfs_cluster.c vfs_subr.c vfs_vnops.c src/sys/sys buf.h vnode.h src/sys/ufs/ffs ffs_inode.c ffs_softdep.c src/sys/ufs/ufs ufs_readwrite.c src/sys/vm swap_pager.c vm_page.c vm_page.h vm_pageout.c X-FreeBSD-CVS-Branch: RELENG_4 Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG dillon 2000/11/25 18:55:15 PST Modified files: (Branch: RELENG_4) sys/kern vfs_bio.c vfs_cluster.c vfs_subr.c vfs_vnops.c sys/sys buf.h vnode.h sys/ufs/ffs ffs_inode.c ffs_softdep.c sys/ufs/ufs ufs_readwrite.c sys/vm swap_pager.c vm_page.c vm_page.h vm_pageout.c Log: MFC the major low memory deadlock solution. This patch removes most of the preexisting low-memory-handling hacks and replaces it with a relatively simple concept: The entire I/O path (except networking) is allowed to dig into the system memory reserve but will effectively free resources rather then leave them wired/cached if the system is found to be in a low-memory situation, thus allowing I/O to continue to operate. This patch also fixes a VXLOCK self-deadlock and generates a message if it detects what used to be the deadlock. (this also MFCd) Finally, this patch removes code related to the case where the original page could not be found during bogus page recovery and replaces it with a panic. The original page had better still exist since we have an extra reference on it and on the VM object during the I/O. (this also MFCd) Revision Changes Path 1.242.2.4 +92 -62 src/sys/kern/vfs_bio.c 1.92.2.2 +7 -1 src/sys/kern/vfs_cluster.c 1.249.2.7 +11 -5 src/sys/kern/vfs_subr.c 1.87.2.4 +4 -2 src/sys/kern/vfs_vnops.c 1.88.2.2 +2 -1 src/sys/sys/buf.h 1.111.2.3 +2 -1 src/sys/sys/vnode.h 1.56.2.1 +4 -1 src/sys/ufs/ffs/ffs_inode.c 1.57.2.5 +20 -18 src/sys/ufs/ffs/ffs_softdep.c 1.65.2.3 +5 -1 src/sys/ufs/ufs/ufs_readwrite.c 1.130.2.7 +4 -2 src/sys/vm/swap_pager.c 1.147.2.4 +30 -7 src/sys/vm/vm_page.c 1.75.2.4 +3 -1 src/sys/vm/vm_page.h 1.151.2.5 +98 -74 src/sys/vm/vm_pageout.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message