NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: kern/57558: pgdaemon 100% busy - no scanning (ZFS case)
The following reply was made to PR kern/57558; it has been noted by GNATS.
From: mlelstv%serpens.de@localhost (Michael van Elst)
To: gnats-bugs%netbsd.org@localhost
Cc:
Subject: Re: kern/57558: pgdaemon 100% busy - no scanning (ZFS case)
Date: Sat, 5 Aug 2023 13:24:55 -0000 (UTC)
chuq%chuq.com@localhost (Chuck Silvers) writes:
> this patch is not correct. it does not do the right thing when there
> is plenty of KVA but a shortage of physical pages.
I doubt that this is handled well enough outside of zfs.
The result of using ZFS (removing pkgsrc tree, unpacking it again) is
about 3.2GB of kernel pools used (from 8GB total RAM).
Trying to reduce ZFS again by tuning ZFS, shrinking maxvnodes and
then allocating user pages ends in the following (only pools >10G shown):
anonpl 0.078G
arc_buf_hdr_t_f 0.018G
buf16k 0.014G
dmu_buf_impl_t 0.107G
dnode_t 0.173G
kmem-00064 0.037G
kmem-00128 0.089G
kmem-00192 0.182G
kmem-00256 0.069G
kmem-00384 0.161G
kmem-01024 0.020G
kmem-02048 0.033G
mutex 0.020G
namecache 0.020G
pcglarge 0.042G
pcgnormal 0.107G
phpool-64 0.014G
rwlock 0.020G
sa_cache 0.032G
vcachepl 0.206G
zfs_znode_cache 0.072G
zio_buf_131072 0.015G
zio_buf_16384 0.075G
zio_buf_4096 0.019G
zio_buf_512 0.170G
zio_cache 0.161G
That's about 2GB left. Things like dnodes or the zio_cache are never
flushed, the 512 byte zio buffer pool is still huge because it is
totally fragmented, but also vcachepl is never drained.
ZFS tries to drop referenced metadata in Solaris or FreeBSD, but
for NetBSD that's still a nop.
The OpenZFS code in current FreeBSD looks quite different too in
that area.
Home |
Main Index |
Thread Index |
Old Index