The kmalloc function performs fast dynamic memory allocation and is part of the Linux Kernel API.
I've googled around and found most people advocating the use of kmalloc, as you're guaranteed to get contiguous physical blocks …
c linux-kernel kmalloc vmallocWhat is the meaning of GFP flags in kmalloc? For instance GFP_KERNEL, GFP_ATOMIC?
linux-kernel kmalloc