Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 05 Jan 2014 13:13:17 +0200
From:      Andriy Gapon <avg@FreeBSD.org>
To:        Vladimir Sharun <atz@ukr.net>, Current FreeBSD <freebsd-current@FreeBSD.org>
Subject:   Re: ARC "pressured out", how to control/stabilize ? (reformatted to text/plain)
Message-ID:  <52C93E4D.1050100@FreeBSD.org>
In-Reply-To: <1388839805.123581691.q97ijp8l@frv45.ukr.net>
References:  <1388839805.123581691.q97ijp8l@frv45.ukr.net>

next in thread | previous in thread | raw e-mail | index | archive | help
on 04/01/2014 14:50 Vladimir Sharun said the following:
[snip]
> ARC: 28G Total, 2085M MFU, 20G MRU, 29M Anon, 1858M Header, 3855M Other
[snip]
> ITEM                   SIZE  LIMIT     USED     FREE      REQ FAIL SLEEP
[snip]
> zio_data_buf_131072: 131072,      0,  488217,       9,287155442,   0,   0

I noticed a particular discrepancy between reported ARC usage and sizes of UMA
zones used by ZFS code:

488217 * 131072 = ~59GB right there.

There are several possibilities for this discrepancy:
- bad accounting or reporting of ARC stats
- those 128K buffers being used in a special way and thus not accounted as ARC
- some sort of resource leak

You could try to use DTrace to gather the stacks of all code paths that lead to
allocation of those buffers.  Something like:

fbt::zio_data_buf_alloc:entry
/arg0 == 131072/
{
	@[stack()] = count();
}

This could be a start for understanding the issue.

-- 
Andriy Gapon



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?52C93E4D.1050100>