diff options
Diffstat (limited to 'fs/proc/array.c')
| -rw-r--r-- | fs/proc/array.c | 7 | 
1 files changed, 5 insertions, 2 deletions
| diff --git a/fs/proc/array.c b/fs/proc/array.c index 79375fc115d2..d67a72dcb92c 100644 --- a/fs/proc/array.c +++ b/fs/proc/array.c @@ -430,8 +430,11 @@ static int do_task_stat(struct seq_file *m, struct pid_namespace *ns,  		 * safe because the task has stopped executing permanently.  		 */  		if (permitted && (task->flags & PF_DUMPCORE)) { -			eip = KSTK_EIP(task); -			esp = KSTK_ESP(task); +			if (try_get_task_stack(task)) { +				eip = KSTK_EIP(task); +				esp = KSTK_ESP(task); +				put_task_stack(task); +			}  		}  	} |