This chapter describes memory management in the Linux kernel. You will see here a couple of posts which describe different parts of the Linux memory management framework:
memblock
allocator.fix-mapped
addresses and early ioremap
.kmemcheck
tool.