diff options
author | Jason Gunthorpe <jgg@mellanox.com> | 2018-01-29 15:26:40 -0500 |
---|---|---|
committer | Jason Gunthorpe <jgg@mellanox.com> | 2018-01-30 11:30:00 -0500 |
commit | e7996a9a77fc669387da43ff4823b91cc4872bd0 (patch) | |
tree | 617f0a128e222539d67e8cccc359f1bc4b984900 /arch/x86/kernel/stacktrace.c | |
parent | b5fa635aab8f0d39a824c01991266a6d06f007fb (diff) | |
parent | d8a5b80568a9cb66810e75b182018e9edb68e8ff (diff) |
Merge tag v4.15 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
To resolve conflicts in:
drivers/infiniband/hw/mlx5/main.c
drivers/infiniband/hw/mlx5/qp.c
From patches merged into the -rc cycle. The conflict resolution matches
what linux-next has been carrying.
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Diffstat (limited to 'arch/x86/kernel/stacktrace.c')
-rw-r--r-- | arch/x86/kernel/stacktrace.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/arch/x86/kernel/stacktrace.c b/arch/x86/kernel/stacktrace.c index 77835bc021c7..093f2ea5dd56 100644 --- a/arch/x86/kernel/stacktrace.c +++ b/arch/x86/kernel/stacktrace.c | |||
@@ -102,7 +102,7 @@ __save_stack_trace_reliable(struct stack_trace *trace, | |||
102 | for (unwind_start(&state, task, NULL, NULL); !unwind_done(&state); | 102 | for (unwind_start(&state, task, NULL, NULL); !unwind_done(&state); |
103 | unwind_next_frame(&state)) { | 103 | unwind_next_frame(&state)) { |
104 | 104 | ||
105 | regs = unwind_get_entry_regs(&state); | 105 | regs = unwind_get_entry_regs(&state, NULL); |
106 | if (regs) { | 106 | if (regs) { |
107 | /* | 107 | /* |
108 | * Kernel mode registers on the stack indicate an | 108 | * Kernel mode registers on the stack indicate an |
@@ -164,8 +164,12 @@ int save_stack_trace_tsk_reliable(struct task_struct *tsk, | |||
164 | { | 164 | { |
165 | int ret; | 165 | int ret; |
166 | 166 | ||
167 | /* | ||
168 | * If the task doesn't have a stack (e.g., a zombie), the stack is | ||
169 | * "reliably" empty. | ||
170 | */ | ||
167 | if (!try_get_task_stack(tsk)) | 171 | if (!try_get_task_stack(tsk)) |
168 | return -EINVAL; | 172 | return 0; |
169 | 173 | ||
170 | ret = __save_stack_trace_reliable(trace, tsk); | 174 | ret = __save_stack_trace_reliable(trace, tsk); |
171 | 175 | ||