-
Michael Lippautz authored
Adds the following abstractions: - MemoryRegion: Simple Address and size pair. - PageMemory: Abstraction holding an overall reservation and some writeable area. - PageMemoryRegion: Either a contiguous area of normal pages or an area for a single large page. Creates guard pages around writable regions. Guard regions are always added, independently of whether the provided allocator can actually commit them properly and capped at a maximum of 16KiB. In practice this will result in all platforms except PPC getting protected regions and PPC only getting an unprotected region. Drive-by: - Remove multi-threaded handling of PageMemoryRegion as all data structures are thread local and no regions are shared across threads. Change-Id: I1232216b13ce51482676b16a467dd97d141ac4c7 Bug: 1056170 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2083304 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Anton Bikineev <bikineev@chromium.org> Reviewed-by:
Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/master@{#747210}
af447700