diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.9.21/0047-fs-proc-Report-eip-esp-in-prod-PID-stat-for-coredump.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.9.21/0047-fs-proc-Report-eip-esp-in-prod-PID-stat-for-coredump.patch | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.9.21/0047-fs-proc-Report-eip-esp-in-prod-PID-stat-for-coredump.patch b/common/recipes-kernel/linux/linux-yocto-4.9.21/0047-fs-proc-Report-eip-esp-in-prod-PID-stat-for-coredump.patch deleted file mode 100644 index 6f74166c..00000000 --- a/common/recipes-kernel/linux/linux-yocto-4.9.21/0047-fs-proc-Report-eip-esp-in-prod-PID-stat-for-coredump.patch +++ /dev/null @@ -1,77 +0,0 @@ -From 10f154142e83fdb4e9d107e0f72b01864e69e108 Mon Sep 17 00:00:00 2001 -From: John Ogness <john.ogness@linutronix.de> -Date: Thu, 14 Sep 2017 11:42:17 +0200 -Subject: [PATCH 47/93] fs/proc: Report eip/esp in /prod/PID/stat for - coredumping - -commit fd7d56270b526ca3ed0c224362e3c64a0f86687a upstream. - -Commit 0a1eb2d474ed ("fs/proc: Stop reporting eip and esp in -/proc/PID/stat") stopped reporting eip/esp because it is -racy and dangerous for executing tasks. The comment adds: - - As far as I know, there are no use programs that make any - material use of these fields, so just get rid of them. - -However, existing userspace core-dump-handler applications (for -example, minicoredumper) are using these fields since they -provide an excellent cross-platform interface to these valuable -pointers. So that commit introduced a user space visible -regression. - -Partially revert the change and make the readout possible for -tasks with the proper permissions and only if the target task -has the PF_DUMPCORE flag set. - -Fixes: 0a1eb2d474ed ("fs/proc: Stop reporting eip and esp in> /proc/PID/stat") -Reported-by: Marco Felsch <marco.felsch@preh.de> -Signed-off-by: John Ogness <john.ogness@linutronix.de> -Reviewed-by: Andy Lutomirski <luto@kernel.org> -Cc: Tycho Andersen <tycho.andersen@canonical.com> -Cc: Kees Cook <keescook@chromium.org> -Cc: Peter Zijlstra <peterz@infradead.org> -Cc: Brian Gerst <brgerst@gmail.com> -Cc: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp> -Cc: Borislav Petkov <bp@alien8.de> -Cc: Al Viro <viro@zeniv.linux.org.uk> -Cc: Linux API <linux-api@vger.kernel.org> -Cc: Andrew Morton <akpm@linux-foundation.org> -Cc: Linus Torvalds <torvalds@linux-foundation.org> -Link: http://lkml.kernel.org/r/87poatfwg6.fsf@linutronix.de -Signed-off-by: Thomas Gleixner <tglx@linutronix.de> -Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> ---- - fs/proc/array.c | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/fs/proc/array.c b/fs/proc/array.c -index 81818ad..c932ec4 100644 ---- a/fs/proc/array.c -+++ b/fs/proc/array.c -@@ -60,6 +60,7 @@ - #include <linux/tty.h> - #include <linux/string.h> - #include <linux/mman.h> -+#include <linux/sched.h> - #include <linux/proc_fs.h> - #include <linux/ioport.h> - #include <linux/uaccess.h> -@@ -416,7 +417,15 @@ static int do_task_stat(struct seq_file *m, struct pid_namespace *ns, - * esp and eip are intentionally zeroed out. There is no - * non-racy way to read them without freezing the task. - * Programs that need reliable values can use ptrace(2). -+ * -+ * The only exception is if the task is core dumping because -+ * a program is not able to use ptrace(2) in that case. It is -+ * safe because the task has stopped executing permanently. - */ -+ if (permitted && (task->flags & PF_DUMPCORE)) { -+ eip = KSTK_EIP(task); -+ esp = KSTK_ESP(task); -+ } - } - - get_task_comm(tcomm, task); --- -2.7.4 - |