mirror of
https://github.com/rd-stuffs/msm-4.14.git
synced 2025-02-20 11:45:48 +08:00
s390: remove task_show_regs
task_show_regs used to be a debugging aid in the early bringup days of Linux on s390. /proc/<pid>/status is a world readable file, it is not a good idea to show the registers of a process. The only correct fix is to remove task_show_regs. Reported-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
1abe3af271
commit
261cd298a8
@ -148,11 +148,6 @@ extern int kernel_thread(int (*fn)(void *), void * arg, unsigned long flags);
|
||||
*/
|
||||
extern unsigned long thread_saved_pc(struct task_struct *t);
|
||||
|
||||
/*
|
||||
* Print register of task into buffer. Used in fs/proc/array.c.
|
||||
*/
|
||||
extern void task_show_regs(struct seq_file *m, struct task_struct *task);
|
||||
|
||||
extern void show_code(struct pt_regs *regs);
|
||||
|
||||
unsigned long get_wchan(struct task_struct *p);
|
||||
|
@ -237,43 +237,6 @@ void show_regs(struct pt_regs *regs)
|
||||
show_last_breaking_event(regs);
|
||||
}
|
||||
|
||||
/* This is called from fs/proc/array.c */
|
||||
void task_show_regs(struct seq_file *m, struct task_struct *task)
|
||||
{
|
||||
struct pt_regs *regs;
|
||||
|
||||
regs = task_pt_regs(task);
|
||||
seq_printf(m, "task: %p, ksp: %p\n",
|
||||
task, (void *)task->thread.ksp);
|
||||
seq_printf(m, "User PSW : %p %p\n",
|
||||
(void *) regs->psw.mask, (void *)regs->psw.addr);
|
||||
|
||||
seq_printf(m, "User GPRS: " FOURLONG,
|
||||
regs->gprs[0], regs->gprs[1],
|
||||
regs->gprs[2], regs->gprs[3]);
|
||||
seq_printf(m, " " FOURLONG,
|
||||
regs->gprs[4], regs->gprs[5],
|
||||
regs->gprs[6], regs->gprs[7]);
|
||||
seq_printf(m, " " FOURLONG,
|
||||
regs->gprs[8], regs->gprs[9],
|
||||
regs->gprs[10], regs->gprs[11]);
|
||||
seq_printf(m, " " FOURLONG,
|
||||
regs->gprs[12], regs->gprs[13],
|
||||
regs->gprs[14], regs->gprs[15]);
|
||||
seq_printf(m, "User ACRS: %08x %08x %08x %08x\n",
|
||||
task->thread.acrs[0], task->thread.acrs[1],
|
||||
task->thread.acrs[2], task->thread.acrs[3]);
|
||||
seq_printf(m, " %08x %08x %08x %08x\n",
|
||||
task->thread.acrs[4], task->thread.acrs[5],
|
||||
task->thread.acrs[6], task->thread.acrs[7]);
|
||||
seq_printf(m, " %08x %08x %08x %08x\n",
|
||||
task->thread.acrs[8], task->thread.acrs[9],
|
||||
task->thread.acrs[10], task->thread.acrs[11]);
|
||||
seq_printf(m, " %08x %08x %08x %08x\n",
|
||||
task->thread.acrs[12], task->thread.acrs[13],
|
||||
task->thread.acrs[14], task->thread.acrs[15]);
|
||||
}
|
||||
|
||||
static DEFINE_SPINLOCK(die_lock);
|
||||
|
||||
void die(const char * str, struct pt_regs * regs, long err)
|
||||
|
@ -353,9 +353,6 @@ int proc_pid_status(struct seq_file *m, struct pid_namespace *ns,
|
||||
task_cap(m, task);
|
||||
task_cpus_allowed(m, task);
|
||||
cpuset_task_status_allowed(m, task);
|
||||
#if defined(CONFIG_S390)
|
||||
task_show_regs(m, task);
|
||||
#endif
|
||||
task_context_switch_counts(m, task);
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user