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>