ZFS vnode starvation with large kmem_size

Pawel Jakub Dawidek pjd at FreeBSD.org
Fri Apr 13 08:43:05 UTC 2007


On Thu, Apr 12, 2007 at 01:23:18PM +0900, Hidetoshi Shimokawa wrote:
> Hi Pawel,
> 
> I observed vnode starvation with large kmem_size in loader.conf.
> It seems that even if zfs eats vnodes up to maxvnodes,
> vnodes cannot be reclaimed and vnlru kthread will give up.
> As far as I understand, the problem comes from difference
> of name cache mechanism. I attached a patch for a workaround.
> 
> How to repeat:
>   arch: amd64 or i386
>   physical memory: 512MB
>   vm.kmem_size=671088640
>     ( In this setting:
>        kern.maxvnodes: 35077
>        vfs.zfs.dnlc.ncsize: 33095 )
> 
>   Create zfs filesystem and extract ports.tar.gz(many files) on it.
>   After a while you can see that the system is not responsive because of
>   vnode starvation.

Good catch! Thanks for the report. I just committed a fix, can you try
it and confirm it works for you?

-- 
Pawel Jakub Dawidek                       http://www.wheel.pl
pjd at FreeBSD.org                           http://www.FreeBSD.org
FreeBSD committer                         Am I Evil? Yes, I Am!
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20070413/12b18069/attachment.pgp


More information about the freebsd-current mailing list