ports/138596: [MAINTAINER] sysutils/samesame vlruwk problem
Alex de Kruijff
samesame at akruijff.dds.nl
Sun Sep 6 22:00:05 UTC 2009
>Synopsis: [MAINTAINER] sysutils/samesame vlruwk problem
>Arrival-Date: Sun Sep 06 22:00:02 UTC 2009
>Originator: Alex de Kruijff
FreeBSD Server1.lan 6.1-RELEASE-p20 FreeBSD 6.1-RELEASE-p20 #0: Wed Nov 14 02:07:49 CET 2007 akruijff at Server1.lan:/temp/obj/temp/src/sys/SERVER-SMP i386
FreeBSD Gateway.lan 7.1-RELEASE-p2 FreeBSD 7.1-RELEASE-p2 #0: Fri Feb 6 03:34:06 CET 2009 akruijff at Gateway.lan:/temp/obj/temp/src/sys/SERVER i386
If unlink(2) is called very quicky, very ofter in a small amount of time,
then the system is left in a vlruwk state. 'sysctl -a | grep vn' shows
that there are few free vnodes. It just so happens that my program has a
use for that.
Wait for report ports/138590 to be handeld, then
samefile -V and sameln -V should give "SameSame 1.5 ..."
cp -Rp /usr/src /usr/src1
cp -Rp /usr/src /usr/src2
cp -Rp /usr/src /usr/src..
cp -Rp /usr/src /usr/srcN
find /usr/src* -type f | samefile -i > .samefile
sameln -w < .samefile
1) Whe using -w hurts, don't use it. It can still be used in a pipe but
there's little advantage in that.
2) It looks like a problem in the kernel.
3) A work around in the SameSame code:
I'm assuming this is FreeBSD related, therefor I was thinking of patch
file. The patch file should add code that checks the vnodes level. It
can do this by modifing the file src/mainAction.cpp just before the line:
"// Is it time to sync?".
I don't work on this option any time soon. Anyone else is welkomed to.
More information about the freebsd-ports-bugs