OpenSolaris

Printable Version Enter a New Search
Bug ID 6647989
Synopsis ZFS ARC sizing causes problems with ballooning
State 3-Accepted (Yes, that is a problem)
Category:Subcategory kernel:zfs
Keywords xen | xvm-server10-reviewed
Responsible Engineer Mark Maybee
Reported Against
Duplicate Of
Introduced In
Commit to Fix
Fixed In
Release Fixed
Related Bugs 6801983
Submit Date 8-January-2008
Last Update Date 21-July-2008
Description
On my Thinkpad with 4Gb of memory, if I start three domains
(two 1Gb, one of which is HVM, one 512Mb), then the machine becomes barely usable.
It's evidently running out of memory. Tuning down zfs_arc_max
to 256Mb helps enormously (it's still not perfect whilst
things are booting, but it's interactively usable and remains
so).

Presumably the ballooning down of dom0 is screwing up what
the ZFS ARC expects to happen, as we take a huge chunk of
memory out of action and never give it back, but never tell ZFS
what we've done (and it does seem to want to know).
Re-assigning to ZFS after Stu Maybee suggested I get
a crash dump. Whilst I originally
reproduced this on my laptop, I've used a lab
machine for generating the dump. I did:

xm mem-set 0 1400

(the equivalent of starting several domUs on the machine)
to give:

[1]> ::memstat
Page Summary                Pages                MB  %Tot
------------     ----------------  ----------------  ----
Kernel                     823493              3216   43%
Anon                          861                 3    0%
Exec and libs                 532                 2    0%
Page cache                     83                 0    0%
Free (cachelist)              984                 3    0%
Free (freelist)             57102               223    3%
Balloon                   1031394              4028   54%

Total                     1914449              7478

and the machine becomes nearly unusable:

killerbee:/ # ls /
bash: fork: Resource temporarily unavailable

On my laptop, limiting zfs_arc_max to 256Mb fixed the problem.

Crash dump is at /net/mdb.eng/cores/johnlev/6647989

> ::arc ! grep size
size                      =       796 MB
Work Around
N/A
Comments
N/A