Date: Fri, 25 Mar 2005 17:30:31 +0000 (UTC) From: David Schultz <das@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/sys proc.h src/sys/ufs/ffs ffs_softdep.c Message-ID: <200503251730.j2PHUV0B066153@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
das 2005-03-25 17:30:31 UTC
FreeBSD src repository
Modified files:
sys/sys proc.h
sys/ufs/ffs ffs_softdep.c
Log:
When the softupdates worklist gets too long, threads that attempt to
add more work are forced to process two worklist items first.
However, processing an item may generate additional work, causing the
unlucky thread to recursively process the worklist. Add a per-thread
flag to detect this situation and avoid the recursion. This should
fix the stack overflows that could occur while removing large
directory trees.
Tested by: kris
Reviewed by: mckusick
Revision Changes Path
1.422 +1 -0 src/sys/sys/proc.h
1.179 +5 -2 src/sys/ufs/ffs/ffs_softdep.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200503251730.j2PHUV0B066153>
