diff options
author | Ian Campbell <ian.campbell@citrix.com> | 2011-02-01 19:26:36 +0000 |
---|---|---|
committer | Ian Campbell <ian.campbell@citrix.com> | 2011-02-01 19:26:36 +0000 |
commit | 04d1f61a1fd9e86f4aafc6333b223b736a488b58 (patch) | |
tree | 7d595ae7fa88ca36c3967f733c19e02d7fa39395 /xen/Makefile | |
parent | 3ddd6a650bd220252584fdd111fa284ed062363b (diff) | |
download | xen-04d1f61a1fd9e86f4aafc6333b223b736a488b58.tar.gz xen-04d1f61a1fd9e86f4aafc6333b223b736a488b58.tar.bz2 xen-04d1f61a1fd9e86f4aafc6333b223b736a488b58.zip |
libxc: maintain a small, per-handle, cache of hypercall buffer memory
Constantly m(un)locking memory can have significant overhead on
systems with large numbers of CPUs. This was previously fixed by
20841:fbe8f32fa257 but this was dropped during the transition to
hypercall buffers.
Introduce a small cache of single page hypercall buffer allocations
which can be resused to avoid this overhead.
Add some statistics tracking to the hypercall buffer allocations.
The cache size of 4 was chosen based on these statistics since they
indicated that 2 pages was sufficient to satisfy all concurrent single
page hypercall buffer allocations seen during "xl create", "xl
shutdown" and "xl destroy" of both a PV and HVM guest therefore 4
pages should cover the majority of important cases.
This fixes http://bugzilla.xensource.com/bugzilla/show_bug.cgi?id=1719.
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Reported-by: Zheng, Shaohui <shaohui.zheng@intel.com>
Tested-by: Haitao Shan <maillists.shan@gmail.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
Diffstat (limited to 'xen/Makefile')
0 files changed, 0 insertions, 0 deletions