HomePhabricator

support: Add LockedPool

Description

support: Add LockedPool

Add a pool for locked memory chunks, replacing LockedPageManager.

This is something I've been wanting to do for a long time. The current
approach of locking objects where they happen to be on the stack or heap
in-place causes a lot of mlock/munlock system call overhead, slowing
down any handling of keys.

Also locked memory is a limited resource on many operating systems (and
using a lot of it bogs down the system), so the previous approach of
locking every page that may contain any key information (but also other
information) is wasteful.

Details

Provenance
Wladimir J. van der Laan <laanwj@gmail.com>Authored on Sep 18 2016, 07:55
deadalnixPushed on May 14 2017, 22:04
Parents
rABCf4d1fc259b5a: wallet: Get rid of LockObject and UnlockObject calls in key.h
Branches
Unknown
Tags
Unknown

Event Timeline

Wladimir J. van der Laan <laanwj@gmail.com> committed rABC4536148b1559: support: Add LockedPool (authored by Wladimir J. van der Laan <laanwj@gmail.com>).Oct 27 2016, 11:17