ftrace: Optimize the allocation for mcount entries
authorWang Wensheng <wangwensheng4@huawei.com>
Wed, 9 Nov 2022 09:44:33 +0000 (09:44 +0000)
committerSteven Rostedt (Google) <rostedt@goodmis.org>
Thu, 17 Nov 2022 20:42:48 +0000 (15:42 -0500)
If we can't allocate this size, try something smaller with half of the
size. Its order should be decreased by one instead of divided by two.

Link: https://lkml.kernel.org/r/20221109094434.84046-3-wangwensheng4@huawei.com
Cc: <mhiramat@kernel.org>
Cc: <mark.rutland@arm.com>
Cc: stable@vger.kernel.org
Fixes: a79008755497d ("ftrace: Allocate the mcount record pages as groups")
Signed-off-by: Wang Wensheng <wangwensheng4@huawei.com>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
kernel/trace/ftrace.c

index 8b13ce2eae705dd799d2662c90236853673bccd4..56a168121bfc0f0c63aa474c939644d91914e3ea 100644 (file)
@@ -3190,7 +3190,7 @@ static int ftrace_allocate_records(struct ftrace_page *pg, int count)
                /* if we can't allocate this size, try something smaller */
                if (!order)
                        return -ENOMEM;
-               order >>= 1;
+               order--;
                goto again;
        }