[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220117062344.15633-2-yinan@linux.alibaba.com>
Date: Mon, 17 Jan 2022 14:23:44 +0800
From: Yinan Liu <yinan@...ux.alibaba.com>
To: rostedt@...dmis.org, nathan@...nel.org
Cc: mingo@...nel.org, linux-kernel@...r.kernel.org
Subject: [PATCH 1/1] script/sorttable: fix some initialization problems
elf_mcount_loc and mcount_sort_thread definitions are not
initialized immediately within the function, which can cause
the judgment logic to use uninitialized values when the
initialization logic of subsequent code fails.
Link: https://lkml.kernel.org/r/20211212113358.34208-2-yinan@linux.alibaba.com
Fixes:72b3942a173c (scripts: ftrace - move the sort-processing in ftrace_init)
Signed-off-by: Yinan Liu <yinan@...ux.alibaba.com>
---
scripts/sorttable.h | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/scripts/sorttable.h b/scripts/sorttable.h
index 1e8b77928fa4..13ae3262ec96 100644
--- a/scripts/sorttable.h
+++ b/scripts/sorttable.h
@@ -199,6 +199,8 @@ static int compare_extable(const void *a, const void *b)
return 0;
}
#ifdef MCOUNT_SORT_ENABLED
+pthread_t mcount_sort_thread;
+
struct elf_mcount_loc {
Elf_Ehdr *ehdr;
Elf_Shdr *init_data_sec;
@@ -282,10 +284,9 @@ static int do_sort(Elf_Ehdr *ehdr,
unsigned int shnum;
unsigned int shstrndx;
#ifdef MCOUNT_SORT_ENABLED
- struct elf_mcount_loc mstruct;
+ struct elf_mcount_loc mstruct = {NULL, NULL, 0, 0};
uint_t _start_mcount_loc = 0;
uint_t _stop_mcount_loc = 0;
- pthread_t mcount_sort_thread;
#endif
#if defined(SORTTABLE_64) && defined(UNWINDER_ORC_ENABLED)
unsigned int orc_ip_size = 0;
--
2.19.1.6.gb485710b
Powered by blists - more mailing lists