diff options
| author | 2019-07-22 13:42:10 -0600 | |
|---|---|---|
| committer | 2019-07-22 13:42:10 -0600 | |
| commit | e27a24210aa17b8a0cd462865130fe73afd7e001 (patch) | |
| tree | b2d7b8311d280244fad3166792e8f447081a8bc9 /kernel/stacktrace.c | |
| parent | docs: driver-api: generic-counter: fix file path to ABI doc (diff) | |
| parent | Linus 5.3-rc1 (diff) | |
Merge tag 'v5.3-rc1' into docs-next
Pull in all of the massive docs changes from elsewhere.
Diffstat (limited to 'kernel/stacktrace.c')
| -rw-r--r-- | kernel/stacktrace.c | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/kernel/stacktrace.c b/kernel/stacktrace.c index 36139de0a3c4..f5440abb7532 100644 --- a/kernel/stacktrace.c +++ b/kernel/stacktrace.c @@ -226,12 +226,17 @@ unsigned int stack_trace_save_user(unsigned long *store, unsigned int size) .store = store, .size = size, }; + mm_segment_t fs; /* Trace user stack if not a kernel thread */ - if (!current->mm) + if (current->flags & PF_KTHREAD) return 0; + fs = get_fs(); + set_fs(USER_DS); arch_stack_walk_user(consume_entry, &c, task_pt_regs(current)); + set_fs(fs); + return c.len; } #endif @@ -255,14 +260,6 @@ save_stack_trace_regs(struct pt_regs *regs, struct stack_trace *trace) WARN_ONCE(1, KERN_INFO "save_stack_trace_regs() not implemented yet.\n"); } -__weak int -save_stack_trace_tsk_reliable(struct task_struct *tsk, - struct stack_trace *trace) -{ - WARN_ONCE(1, KERN_INFO "save_stack_tsk_reliable() not implemented yet.\n"); - return -ENOSYS; -} - /** * stack_trace_save - Save a stack trace into a storage array * @store: Pointer to storage array |
