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>
