Re: [PATCH 1/3] mm/sparse: add likely to mem_section[root] check in sparse_index_init()
From: Wei Yang <hidden>
Date: 2018-08-23 22:57:45
On Thu, Aug 23, 2018 at 03:13:39PM +0200, Michal Hocko wrote:
On Thu 23-08-18 21:07:30, Wei Yang wrote:quoted
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.Could you evaluate how much does this help if any? Does this have any impact on the initialization path at all?
Let me test on my 4G machine with this patch :-)
quoted
Signed-off-by: Wei Yang <redacted> --- 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-- Michal Hocko SUSE Labs
-- Wei Yang Help you, Help me