Messages in this thread | | | Date | Thu, 12 Jun 2014 12:25:46 -0700 | From | Andrew Morton <> | Subject | Re: [PATCH] mm: Move __vma_address() to internal.h to be inlined in huge_memory.c |
| |
On Thu, 12 Jun 2014 15:15:40 -0400 Waiman Long <Waiman.Long@hp.com> wrote:
> The vma_address() function which is used to compute the virtual address > within a VMA is used only by 2 files in the mm subsystem - rmap.c and > huge_memory.c. This function is defined in rmap.c and is inlined by > its callers there, but it is also declared as an external function. > > However, the __split_huge_page() function which calls vma_address() > in huge_memory.c is calling it as a real function call. This is not > as efficient as an inlined function. This patch moves the underlying > inlined __vma_address() function to internal.h to be shared by both > the rmap.c and huge_memory.c file.
This increases huge_memory.o's text+data_bss by 311 bytes, which makes me suspect that it is a bad change due to its increase of kernel cache footprint.
Perhaps we should be noinlining __vma_address()?
| |