Date: Mon, 21 Jan 2002 22:17:24 -0800 (PST) From: Kirk McKusick <mckusick@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/ufs/ffs ffs_alloc.c ffs_extern.h ffs_softdep.c Message-ID: <200201220617.g0M6HOx41725@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
mckusick 2002/01/21 22:17:24 PST Modified files: sys/ufs/ffs ffs_alloc.c ffs_extern.h ffs_softdep.c Log: This patch fixes a long standing complaint with soft updates in which small and/or nearly full filesystems would fail with `file system full' messages when trying to replace a number of existing files (for example during a system installation). When the allocation routines are about to fail with a file system full condition, they make a call to softdep_request_cleanup() which attempts to accelerate the flushing of pending deletion requests in an effort to free up space. In the face of filesystem I/O requests that exceed the available disk transfer capacity, the cleanup request could take an unbounded amount of time. Thus, the softdep_request_cleanup() routine will only try for tickdelay seconds (default 2 seconds) before giving up and returning a filesystem full error. Under typical conditions, the softdep_request_cleanup() routine is able to free up space in under fifty milliseconds. Revision Changes Path 1.85 +22 -6 src/sys/ufs/ffs/ffs_alloc.c 1.44 +2 -1 src/sys/ufs/ffs/ffs_extern.h 1.105 +41 -4 src/sys/ufs/ffs/ffs_softdep.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200201220617.g0M6HOx41725>