|
@@ -1258,17 +1258,16 @@ struct task_struct *__switch_to(struct task_struct *prev,
|
|
|
return last;
|
|
|
}
|
|
|
|
|
|
-static int instructions_to_print = 16;
|
|
|
+#define NR_INSN_TO_PRINT 16
|
|
|
|
|
|
static void show_instructions(struct pt_regs *regs)
|
|
|
{
|
|
|
int i;
|
|
|
- unsigned long pc = regs->nip - (instructions_to_print * 3 / 4 *
|
|
|
- sizeof(int));
|
|
|
+ unsigned long pc = regs->nip - (NR_INSN_TO_PRINT * 3 / 4 * sizeof(int));
|
|
|
|
|
|
printk("Instruction dump:");
|
|
|
|
|
|
- for (i = 0; i < instructions_to_print; i++) {
|
|
|
+ for (i = 0; i < NR_INSN_TO_PRINT; i++) {
|
|
|
int instr;
|
|
|
|
|
|
if (!(i % 8))
|
|
@@ -1301,17 +1300,17 @@ static void show_instructions(struct pt_regs *regs)
|
|
|
void show_user_instructions(struct pt_regs *regs)
|
|
|
{
|
|
|
unsigned long pc;
|
|
|
- int n = instructions_to_print;
|
|
|
+ int n = NR_INSN_TO_PRINT;
|
|
|
struct seq_buf s;
|
|
|
char buf[96]; /* enough for 8 times 9 + 2 chars */
|
|
|
|
|
|
- pc = regs->nip - (instructions_to_print * 3 / 4 * sizeof(int));
|
|
|
+ pc = regs->nip - (NR_INSN_TO_PRINT * 3 / 4 * sizeof(int));
|
|
|
|
|
|
/*
|
|
|
* Make sure the NIP points at userspace, not kernel text/data or
|
|
|
* elsewhere.
|
|
|
*/
|
|
|
- if (!__access_ok(pc, instructions_to_print * sizeof(int), USER_DS)) {
|
|
|
+ if (!__access_ok(pc, NR_INSN_TO_PRINT * sizeof(int), USER_DS)) {
|
|
|
pr_info("%s[%d]: Bad NIP, not dumping instructions.\n",
|
|
|
current->comm, current->pid);
|
|
|
return;
|