projects
/
linux-block.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
f37c3bb
)
script/sorttable: Fix some initialization problems
author
Yinan Liu
<yinan@linux.alibaba.com>
Tue, 18 Jan 2022 06:52:41 +0000
(14:52 +0800)
committer
Steven Rostedt
<rostedt@goodmis.org>
Tue, 18 Jan 2022 15:17:18 +0000
(10:17 -0500)
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
Link:
https://lkml.kernel.org/r/20220118065241.42364-1-yinan@linux.alibaba.com
Fixes:
72b3942a173c
("scripts: ftrace - move the sort-processing in ftrace_init")
Tested-by: Nathan Chancellor <nathan@kernel.org>
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
Signed-off-by: Yinan Liu <yinan@linux.alibaba.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
scripts/sorttable.h
patch
|
blob
|
blame
|
history
diff --git
a/scripts/sorttable.h
b/scripts/sorttable.h
index 1e8b77928fa47612a94734b43c5ee40bfb821f5e..deb7c1d3e979d42adf4a15f28063c268f9580954 100644
(file)
--- 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
= {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;