]> git.proxmox.com Git - mirror_edk2.git/commit - MdeModulePkg/Core/Dxe/Mem/Pool.c
MdeModulePkg/DxeCore: use separate lock for pool allocations
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Fri, 24 Feb 2017 14:21:18 +0000 (14:21 +0000)
committerArd Biesheuvel <ard.biesheuvel@linaro.org>
Tue, 28 Feb 2017 14:59:50 +0000 (14:59 +0000)
commitf31c36c2938d5857008d674e913e3fc0783fab49
tree240338e9158a49f0c0e0edcb1c89503c500b32b3
parent16dc5b68fcb5ad509e2af1595aa17dcd5534819d
MdeModulePkg/DxeCore: use separate lock for pool allocations

In preparation of adding memory permission attribute management to
the pool allocator, split off the locking of the pool metadata into
a separate lock. This is an improvement in itself, given that pool
allocations can only interfere with the page allocation bookkeeping
if pool pages are allocated or released. But it is also required to
ensure that the permission attribute management does not deadlock,
given that it may trigger page table splits leading to additional
page tables being allocated.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
MdeModulePkg/Core/Dxe/Mem/Pool.c