Each time SECTIONS_PER_ROOT number of mem_section is allocated when mem_section[root] is null. This means only (1 / SECTIONS_PER_ROOT) chance of the mem_section[root] check is false. This patch adds likely to the if check to optimize this a little. Signed-off-by: Wei Yang <richard.weiyang@xxxxxxxxx> --- mm/sparse.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mm/sparse.c b/mm/sparse.c index 10b07eea9a6e..90bab7f03757 100644 --- a/mm/sparse.c +++ b/mm/sparse.c @@ -78,7 +78,7 @@ static int __meminit sparse_index_init(unsigned long section_nr, int nid) unsigned long root = SECTION_NR_TO_ROOT(section_nr); struct mem_section *section; - if (mem_section[root]) + if (likely(mem_section[root])) return -EEXIST; section = sparse_index_alloc(nid); -- 2.15.1