On Tue, 19 Feb 2013, Will Huck wrote:Another question:I don't see the connection to deleting a swapped out page from swap cache.
Why kernel memory mapping use direct mapping instead of kmalloc/vmalloc whichI may misunderstand you, and "kernel memory mapping".
will setup mapping on demand?
kmalloc does not set up a mapping, it uses the direct mapping already set up.
It would be circular if the basic page allocation primitives used kmalloc,
since kmalloc relies on the basic page allocation primitives.
vmalloc is less efficient than using the direct mapping (repeated setup
and teardown, no use of hugepages), but necessary when you want a larger
virtual array than you're likely to find from the buddy allocator.